diff --git a/dist/actions_python.d60978cf.js b/dist/actions_python.d60978cf.js deleted file mode 100644 index b641026c..00000000 --- a/dist/actions_python.d60978cf.js +++ /dev/null @@ -1,2 +0,0 @@ -function e(e){return e&&e.__esModule?e.default:e}function a(e,a,t,i){Object.defineProperty(e,a,{get:t,set:i,enumerable:!0,configurable:!0})}var t=require("path"),i=require("fs"),o=require("os"),s=require("util"),r=require("assert"),n=require("crypto"),p=require("url"),d=require("buffer"),l=require("stream"),m=require("http"),c=require("https"),u=require("punycode"),h=require("zlib"),g=require("events"),f=require("timers"),y=require("string_decoder"),v=require("child_process"),b="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},x=b.parcelRequire810d;x.register("h0iEK",((o,s)=>{async function r(a,o,s){var r;if((null===(r=process.env.AGENT_TOOLSDIRECTORY)||void 0===r?void 0:r.trim())?(l.debug("Python is expected to be installed into AGENT_TOOLSDIRECTORY="+process.env.AGENT_TOOLSDIRECTORY),process.env.RUNNER_TOOL_CACHE=process.env.AGENT_TOOLSDIRECTORY):l.debug("Python is expected to be installed into RUNNER_TOOL_CACHE=="+process.env.RUNNER_TOOL_CACHE),a){let e;if(a.startsWith("pypy-")){const t=await p.findPyPyVersion(a,s);e=`${t.resolvedPyPyVersion}-${t.resolvedPythonVersion}`,d.info(`Successfully setup PyPy ${t.resolvedPyPyVersion} with Python (${t.resolvedPythonVersion})`)}else{const t=await n.useCpythonVersion(a,s);e=t.version,d.info(`Successfully setup ${t.impl} (${e})`)}const t="pip";await c.cacheDependencies(t,e)}m.isGitHubCI()&&(()=>{const a=e(t).join(u,"python_matcher.json");if(!i.existsSync(a))return d.warning("the python_matcher.json file does not exist in the same folder as setup_cpp.js");d.info("::add-matcher::"+a)})()}a(o.exports,"setupActionsPython",(()=>r));var n=x("cksQ1"),p=x("cmexd"),d=x("1qhHV"),l=x("5O4BX"),m=x("bWmxf"),c=x("h1Bam"),u=t.resolve(__dirname,"../src/python")})),x.register("cksQ1",((e,i)=>{async function s(e,a){const i=((s=e).endsWith("-dev")?`>= ${s.slice(0,-4)}.0-a0`:s).replace(/(\d+\.\d+\.\d+)((?:a|b|rc)\d*)/g,"$1-$2");var s;d.debug(`Semantic version spec of ${e} is ${i}`);let m=l.find("Python",i,a);if(!m){d.info(`Version ${i} was not found in the local cache`);const e=await p.findReleaseFromManifest(i,a);e&&e.files&&e.files.length>0&&(d.info(`Version ${i} is available for downloading`),await p.installCpythonFromRelease(e),m=l.find("Python",i,a))}if(!m)throw Error([`Version ${e} with arch ${a} not found`,"The list of all available versions can be found here: "+p.MANIFEST_URL].join(o.EOL));if(d.exportVariable("pythonLocation",m),r.IS_LINUX){const e=process.env.LD_LIBRARY_PATH?":"+process.env.LD_LIBRARY_PATH:"",a=t.join(m,"lib");e.split(":").includes(a)||d.exportVariable("LD_LIBRARY_PATH",a+e)}if(d.addPath(m),d.addPath((e=>t.join(e,r.IS_WINDOWS?"Scripts":"bin"))(m)),r.IS_WINDOWS){const e=t.basename(t.dirname(m)),a=n.major(e),i=n.minor(e),o=t.join(process.env.APPDATA||"","Python",`Python${a}${i}`,"Scripts");d.addPath(o)}const c=(e=>{const a=e.split(t.sep),i=a.findIndex((e=>"PyPy"===e||"Python"===e));return a[i+1]||""})(m);return d.setOutput("python-version",c),{impl:"CPython",version:c}}a(e.exports,"useCpythonVersion",(()=>s));var r=x("3pRFp"),n=x("4IYN6"),p=x("cV2Dc"),d=x("5O4BX"),l=x("2yTXk")})),x.register("3pRFp",((o,s)=>{function r(a,o,s,r=!1){const n=t.join(a,o),p=t.join(a,s);e(i).existsSync(p)||(e(i).symlinkSync(n,p),!v&&r&&e(i).chmodSync(p,"755"))}function n(e){return p(e)||!!y.validRange(e)}function p(e){return"nightly"===e}function d(e){return t.basename(t.dirname(e))}function l(a){let o="",s=t.join(a,k);return e(i).existsSync(s)&&(o=""+e(i).readFileSync(s)),o}function m(a,o){const s=t.join(a,k);e(i).writeFileSync(s,o)}function c(e){return/^\d+\.\d+$/.test(e)}function u(){return"GITHUB.COM"!==new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.toUpperCase()}function h(){if(!g.isFeatureAvailable()){if(u())throw Error("Caching is only supported on GHES version >= 3.5. If you are on a version >= 3.5, please check with your GHES admin if the Actions cache service is enabled or not.");return f.warning("The runner was not able to contact the cache service. Caching will be skipped"),!1}return!0}a(o.exports,"IS_WINDOWS",(()=>v)),a(o.exports,"IS_LINUX",(()=>b)),a(o.exports,"WINDOWS_ARCHS",(()=>w)),a(o.exports,"WINDOWS_PLATFORMS",(()=>N)),a(o.exports,"createSymlinkInFolder",(()=>r)),a(o.exports,"validateVersion",(()=>n)),a(o.exports,"isNightlyKeyword",(()=>p)),a(o.exports,"getPyPyVersionFromPath",(()=>d)),a(o.exports,"readExactPyPyVersionFile",(()=>l)),a(o.exports,"writeExactPyPyVersionFile",(()=>m)),a(o.exports,"validatePythonVersionFormatForPyPy",(()=>c)),a(o.exports,"isGhes",(()=>u)),a(o.exports,"isCacheFeatureAvailable",(()=>h));var g=x("yjghk"),f=x("5O4BX"),y=x("4IYN6");const v="win32"===process.platform,b="linux"===process.platform,w=["x86","x64"],N=["win32","win64"],k="PYPY_VERSION"})),x.register("yjghk",(function(e,a){"use strict";function i(e){if(!e||0===e.length)throw new c("Path Validation Error: At least one directory or file path is required")}function o(e){if(e.length>512)throw new c(`Key Validation Error: ${e} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(e))throw new c(`Key Validation Error: ${e} cannot contain commas.`)}var s=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),r=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const n=r(x("5O4BX")),p=r(t),d=r(x("7QIfE")),l=r(x("fa2Hi"));var m=x("bnSiv");class c extends Error{constructor(e){super(e),this.name="ValidationError",Object.setPrototypeOf(this,c.prototype)}}e.exports.ValidationError=c;class u extends Error{constructor(e){super(e),this.name="ReserveCacheError",Object.setPrototypeOf(this,u.prototype)}}e.exports.ReserveCacheError=u,e.exports.isFeatureAvailable=()=>!!process.env.ACTIONS_CACHE_URL,e.exports.restoreCache=function(e,a,t,r){return s(this,void 0,void 0,(function*(){i(e),t=t||[];const s=[a,...t];if(n.debug("Resolved Keys:"),n.debug(JSON.stringify(s)),s.length>10)throw new c("Key Validation Error: Keys are limited to a maximum of 10.");for(const e of s)o(e);const u=yield d.getCompressionMethod(),h=yield l.getCacheEntry(s,e,{compressionMethod:u});if(!(null==h?void 0:h.archiveLocation))return;const g=p.join(yield d.createTempDirectory(),d.getCacheFileName(u));n.debug("Archive Path: "+g);try{yield l.downloadCache(h.archiveLocation,g,r),n.isDebug()&&(yield m.listTar(g,u));const e=d.getArchiveFileSizeInBytes(g);n.info(`Cache Size: ~${Math.round(e/1048576)} MB (${e} B)`),yield m.extractTar(g,u),n.info("Cache restored successfully")}finally{try{yield d.unlinkFile(g)}catch(e){n.debug("Failed to delete archive: "+e)}}return h.cacheKey}))},e.exports.saveCache=function(e,a,t){var r,c,h,g,f;return s(this,void 0,void 0,(function*(){i(e),o(a);const s=yield d.getCompressionMethod();let y=null;const v=yield d.resolvePaths(e);n.debug("Cache Paths:"),n.debug(""+JSON.stringify(v));const b=yield d.createTempDirectory(),x=p.join(b,d.getCacheFileName(s));n.debug("Archive Path: "+x);try{yield m.createTar(b,v,s),n.isDebug()&&(yield m.listTar(x,s));const i=10737418240,o=d.getArchiveFileSizeInBytes(x);if(n.debug("File Size: "+o),o>i&&!d.isGhes())throw Error(`Cache size of ~${Math.round(o/1048576)} MB (${o} B) is over the 10GB limit, not saving cache.`);n.debug("Reserving Cache");const p=yield l.reserveCache(a,e,{compressionMethod:s,cacheSize:o});if(!(null===(r=null==p?void 0:p.result)||void 0===r?void 0:r.cacheId))throw 400===(null==p?void 0:p.statusCode)?Error(null!==(g=null===(h=null==p?void 0:p.error)||void 0===h?void 0:h.message)&&void 0!==g?g:`Cache size of ~${Math.round(o/1048576)} MB (${o} B) is over the data cap limit, not saving cache.`):new u(`Unable to reserve cache with key ${a}, another job may be creating this cache. More details: ${null===(f=null==p?void 0:p.error)||void 0===f?void 0:f.message}`);y=null===(c=null==p?void 0:p.result)||void 0===c?void 0:c.cacheId,n.debug(`Saving Cache (ID: ${y})`),yield l.saveCache(y,x,t)}finally{try{yield d.unlinkFile(x)}catch(e){n.debug("Failed to delete archive: "+e)}}return y}))}})),x.register("7QIfE",(function(e,a){"use strict";function o(e){return n(this,void 0,void 0,(function*(){l.debug(`Checking ${e} --version`);let a="";try{yield m.exec(e+" --version",[],{ignoreReturnCode:!0,silent:!0,listeners:{stdout(e){return a+=""+e},stderr(e){return a+=""+e}}})}catch(e){l.debug(e.message)}return a=a.trim(),l.debug(a),a}))}function r(){return n(this,void 0,void 0,(function*(){return(yield o("tar")).toLowerCase().includes("gnu tar")}))}var n=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),p=e.exports&&e.exports.__asyncValues||function(e){function a(a){t[a]=e[a]&&(t=>new Promise(((i,o)=>{((e,a,t,i)=>{Promise.resolve(i).then((a=>{e({value:a,done:t})}),a)})(i,o,(t=e[a](t)).done,t.value)})))}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t)},d=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const l=d(x("5O4BX")),m=d(x("hZSfz")),c=d(x("eX6r5")),u=d(x("6vm01")),h=d(i),g=d(t),f=d(x("4IYN6")),y=d(s);var v=x("gyTlx"),b=x("i4ATt");e.exports.createTempDirectory=function(){return n(this,void 0,void 0,(function*(){const e="win32"===process.platform;let a=process.env.RUNNER_TEMP||"";if(!a){let t;t=e?process.env.USERPROFILE||"C:\\":"darwin"===process.platform?"/Users":"/home",a=g.join(t,"actions","temp")}const t=g.join(a,v.v4());return yield u.mkdirP(t),t}))},e.exports.getArchiveFileSizeInBytes=e=>h.statSync(e).size,e.exports.resolvePaths=function(e){var a,t,i;return n(this,void 0,void 0,(function*(){const o=[],s=null!==(i=process.env.GITHUB_WORKSPACE)&&void 0!==i?i:process.cwd(),r=yield c.create(e.join("\n"),{implicitDescendants:!1});try{for(var n,d=p(r.globGenerator());!(n=yield d.next()).done;){const e=g.relative(s,n.value).replace(RegExp("\\"+g.sep,"g"),"/");l.debug("Matched: "+e),o.push(""+e)}}catch(e){a={error:e}}finally{try{n&&!n.done&&(t=d.return)&&(yield t.call(d))}finally{if(a)throw a.error}}return o}))},e.exports.unlinkFile=function(e){return n(this,void 0,void 0,(function*(){return y.promisify(h.unlink)(e)}))},e.exports.getCompressionMethod=function(){return n(this,void 0,void 0,(function*(){if("win32"===process.platform&&!(yield r()))return b.CompressionMethod.Gzip;const e=yield o("zstd"),a=f.clean(e);return e.toLowerCase().includes("zstd command line interface")?!a||f.lt(a,"v1.3.2")?b.CompressionMethod.ZstdWithoutLong:b.CompressionMethod.Zstd:b.CompressionMethod.Gzip}))},e.exports.getCacheFileName=e=>e===b.CompressionMethod.Gzip?b.CacheFilename.Gzip:b.CacheFilename.Zstd,e.exports.isGnuTarInstalled=r,e.exports.assertDefined=(e,a)=>{if(void 0===a)throw Error(`Expected ${e} but value was undefiend`);return a},e.exports.isGhes=()=>"GITHUB.COM"!==new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.toUpperCase()})),x.register("eX6r5",(function(e,a){"use strict";var t=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.create=void 0;var i=x("aY4eE");e.exports.create=function(e,a){return t(this,void 0,void 0,(function*(){return yield i.DefaultGlobber.create(e,a)}))}})),x.register("aY4eE",(function(e,a){"use strict";var o=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),s=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),r=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&o(a,e,t);return s(a,e),a}),n=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),p=e.exports&&e.exports.__asyncValues||function(e){function a(a){t[a]=e[a]&&(t=>new Promise(((i,o)=>{((e,a,t,i)=>{Promise.resolve(i).then((a=>{e({value:a,done:t})}),a)})(i,o,(t=e[a](t)).done,t.value)})))}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t)},d=e.exports&&e.exports.__await||function(e){return this instanceof d?(this.v=e,this):new d(e)},l=e.exports&&e.exports.__asyncGenerator||function(e,a,t){function i(e){l[e]&&(p[e]=a=>new Promise(((t,i)=>{m.push([e,a,t,i])>1||o(e,a)})))}function o(e,a){try{(t=l[e](a)).value instanceof d?Promise.resolve(t.value.v).then(s,r):n(m[0][2],t)}catch(e){n(m[0][3],e)}var t}function s(e){o("next",e)}function r(e){o("throw",e)}function n(e,a){e(a),m.shift(),m.length&&o(m[0][0],m[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var p,l=t.apply(e,a||[]),m=[];return p={},i("next"),i("throw"),i("return"),p[Symbol.asyncIterator]=function(){return this},p};Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.DefaultGlobber=void 0;const m=r(x("5O4BX")),c=r(i),u=r(x("ieaYh")),h=r(t),g=r(x("ggOUj"));var f=x("kusZu"),y=x("ghLYU"),v=x("5kA1Q");const b="win32"===process.platform;class w{constructor(e){this.patterns=[],this.searchPaths=[],this.options=u.getOptions(e)}getSearchPaths(){return this.searchPaths.slice()}glob(){var e,a;return n(this,void 0,void 0,(function*(){const t=[];try{for(var i,o=p(this.globGenerator());!(i=yield o.next()).done;)t.push(i.value)}catch(a){e={error:a}}finally{try{i&&!i.done&&(a=o.return)&&(yield a.call(o))}finally{if(e)throw e.error}}return t}))}globGenerator(){return l(this,arguments,(function*(){const e=u.getOptions(this.options),a=[];for(const t of this.patterns)a.push(t),e.implicitDescendants&&(t.trailingSeparator||"**"!==t.segments[t.segments.length-1])&&a.push(new y.Pattern(t.negate,!0,t.segments.concat("**")));const t=[];for(const e of g.getSearchPaths(a)){m.debug(`Search path '${e}'`);try{yield d(c.promises.lstat(e))}catch(e){if("ENOENT"===e.code)continue;throw e}t.unshift(new v.SearchState(e,1))}const i=[];for(;t.length;){const o=t.pop(),s=g.match(a,o.path),r=!!s||g.partialMatch(a,o.path);if(!s&&!r)continue;const n=yield d(w.stat(o,e,i));if(n)if(n.isDirectory()){if(s&f.MatchKind.Directory)yield yield d(o.path);else if(!r)continue;const e=o.level+1,a=(yield d(c.promises.readdir(o.path))).map((a=>new v.SearchState(h.join(o.path,a),e)));t.push(...a.reverse())}else s&f.MatchKind.File&&(yield yield d(o.path))}}))}static create(e,a){return n(this,void 0,void 0,(function*(){const t=new w(a);b&&(e=(e=e.replace(/\r\n/g,"\n")).replace(/\r/g,"\n"));const i=e.split("\n").map((e=>e.trim()));for(const e of i)e&&!e.startsWith("#")&&t.patterns.push(new y.Pattern(e));return t.searchPaths.push(...g.getSearchPaths(t.patterns)),t}))}static stat(e,a,t){return n(this,void 0,void 0,(function*(){let i;if(a.followSymbolicLinks)try{i=yield c.promises.stat(e.path)}catch(t){if("ENOENT"===t.code){if(a.omitBrokenSymbolicLinks)return void m.debug(`Broken symlink '${e.path}'`);throw Error(`No information found for the path '${e.path}'. This may indicate a broken symbolic link.`)}throw t}else i=yield c.promises.lstat(e.path);if(i.isDirectory()&&a.followSymbolicLinks){const a=yield c.promises.realpath(e.path);for(;t.length>=e.level;)t.pop();if(t.some((e=>e===a)))return void m.debug(`Symlink cycle detected for path '${e.path}' and realpath '${a}'`);t.push(a)}return i}))}}e.exports.DefaultGlobber=w})),x.register("ieaYh",((e,a)=>{"use strict";var t=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),i=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&t(a,e,o);return i(a,e),a});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getOptions=void 0;const s=o(x("5O4BX"));e.exports.getOptions=e=>{const a={followSymbolicLinks:!0,implicitDescendants:!0,omitBrokenSymbolicLinks:!0};return e&&("boolean"==typeof e.followSymbolicLinks&&(a.followSymbolicLinks=e.followSymbolicLinks,s.debug(`followSymbolicLinks '${a.followSymbolicLinks}'`)),"boolean"==typeof e.implicitDescendants&&(a.implicitDescendants=e.implicitDescendants,s.debug(`implicitDescendants '${a.implicitDescendants}'`)),"boolean"==typeof e.omitBrokenSymbolicLinks&&(a.omitBrokenSymbolicLinks=e.omitBrokenSymbolicLinks,s.debug(`omitBrokenSymbolicLinks '${a.omitBrokenSymbolicLinks}'`))),a}})),x.register("ggOUj",((e,a)=>{"use strict";var t=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),i=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&t(a,e,o);return i(a,e),a});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.partialMatch=e.exports.match=e.exports.getSearchPaths=void 0;const s=o(x("1kjtX"));var r=x("kusZu");const n="win32"===process.platform;e.exports.getSearchPaths=e=>{e=e.filter((e=>!e.negate));const a={};for(const t of e)a[n?t.searchPath.toUpperCase():t.searchPath]="candidate";const t=[];for(const i of e){const e=n?i.searchPath.toUpperCase():i.searchPath;if("included"===a[e])continue;let o=!1,r=e,p=s.dirname(r);for(;p!==r;){if(a[p]){o=!0;break}r=p,p=s.dirname(r)}o||(t.push(i.searchPath),a[e]="included")}return t},e.exports.match=(e,a)=>{let t=r.MatchKind.None;for(const i of e)i.negate?t&=~i.match(a):t|=i.match(a);return t},e.exports.partialMatch=(e,a)=>e.some((e=>!e.negate&&e.partialMatch(a)))})),x.register("1kjtX",((e,a)=>{"use strict";function i(e){return c.default(e,"hasAbsoluteRoot parameter 'itemPath' must not be empty"),e=o(e),u?e.startsWith("\\\\")||/^[A-Z]:\\/i.test(e):e.startsWith("/")}function o(e){return e=e||"",u?(e=e.replace(/\//g,"\\"),(/^\\\\+[^\\]/.test(e)?"\\":"")+e.replace(/\\\\+/g,"\\")):e.replace(/\/\/+/g,"/")}function s(e){return e?(e=o(e)).endsWith(m.sep)?e===m.sep||u&&/^[A-Z]:\\$/i.test(e)?e:e.substr(0,e.length-1):e:""}var n=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),p=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),d=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&n(a,e,t);return p(a,e),a}),l=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.safeTrimTrailingSeparator=e.exports.normalizeSeparators=e.exports.hasRoot=e.exports.hasAbsoluteRoot=e.exports.ensureAbsoluteRoot=e.exports.dirname=void 0;const m=d(t),c=l(r),u="win32"===process.platform;e.exports.dirname=e=>{if(e=s(e),u&&/^\\\\[^\\]+(\\[^\\]+)?$/.test(e))return e;let a=m.dirname(e);return u&&/^\\\\[^\\]+\\[^\\]+\\$/.test(a)&&(a=s(a)),a},e.exports.ensureAbsoluteRoot=(e,a)=>{if(c.default(e,"ensureAbsoluteRoot parameter 'root' must not be empty"),c.default(a,"ensureAbsoluteRoot parameter 'itemPath' must not be empty"),i(a))return a;if(u){if(a.match(/^[A-Z]:[^\\/]|^[A-Z]:$/i)){let e=process.cwd();return c.default(e.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${e}'`),a[0].toUpperCase()===e[0].toUpperCase()?2===a.length?`${a[0]}:\\${e.substr(3)}`:(e.endsWith("\\")||(e+="\\"),`${a[0]}:\\${e.substr(3)}${a.substr(2)}`):`${a[0]}:\\${a.substr(2)}`}if(o(a).match(/^\\$|^\\[^\\]/)){const e=process.cwd();return c.default(e.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${e}'`),`${e[0]}:\\${a.substr(1)}`}}return c.default(i(e),"ensureAbsoluteRoot parameter 'root' must have an absolute root"),e.endsWith("/")||u&&e.endsWith("\\")||(e+=m.sep),e+a},e.exports.hasAbsoluteRoot=i,e.exports.hasRoot=e=>(c.default(e,"isRooted parameter 'itemPath' must not be empty"),e=o(e),u?e.startsWith("\\")||/^[A-Z]:/i.test(e):e.startsWith("/")),e.exports.normalizeSeparators=o,e.exports.safeTrimTrailingSeparator=s})),x.register("kusZu",((e,a)=>{"use strict";var t;Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.MatchKind=void 0,(t=e.exports.MatchKind||(e.exports.MatchKind={}))[t.None=0]="None",t[t.Directory=1]="Directory",t[t.File=2]="File",t[t.All=3]="All"})),x.register("ghLYU",(function(e,a){"use strict";var i=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),s=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&i(a,e,t);return s(a,e),a}),p=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.Pattern=void 0;const d=n(o),l=n(t),m=n(x("1kjtX")),c=p(r);var u=x("2mu1W"),h=x("kusZu"),g=x("dqT5I");const f="win32"===process.platform;class y{constructor(e,a=!1,t,i){let o;if(this.negate=!1,"string"==typeof e)o=e.trim();else{c.default((t=t||[]).length,"Parameter 'segments' must not empty");const a=y.getLiteral(t[0]);c.default(a&&m.hasAbsoluteRoot(a),"Parameter 'segments' first element must be a root path"),o=(""+new g.Path(t)).trim(),e&&(o="!"+o)}for(;o.startsWith("!");)this.negate=!this.negate,o=o.substr(1).trim();o=y.fixupPattern(o,i),this.segments=new g.Path(o).segments,this.trailingSeparator=m.normalizeSeparators(o).endsWith(l.sep),o=m.safeTrimTrailingSeparator(o);let s=!1;const r=this.segments.map((e=>y.getLiteral(e))).filter((e=>!s&&!(s=""===e)));this.searchPath=""+new g.Path(r),this.rootRegExp=RegExp(y.regExpEscape(r[0]),f?"i":""),this.isImplicitPattern=a;const n={dot:!0,nobrace:!0,nocase:f,nocomment:!0,noext:!0,nonegate:!0};o=f?o.replace(/\\/g,"/"):o,this.minimatch=new u.Minimatch(o,n)}match(e){return"**"===this.segments[this.segments.length-1]?(e=m.normalizeSeparators(e)).endsWith(l.sep)||!1!==this.isImplicitPattern||(e=`${e}${l.sep}`):e=m.safeTrimTrailingSeparator(e),this.minimatch.match(e)?this.trailingSeparator?h.MatchKind.Directory:h.MatchKind.All:h.MatchKind.None}partialMatch(e){return e=m.safeTrimTrailingSeparator(e),m.dirname(e)===e?this.rootRegExp.test(e):this.minimatch.matchOne(e.split(f?/\\+/:/\/+/),this.minimatch.set[0],!0)}static globEscape(e){return(f?e:e.replace(/\\/g,"\\\\")).replace(/(\[)(?=[^/]+\])/g,"[[]").replace(/\?/g,"[?]").replace(/\*/g,"[*]")}static fixupPattern(e,a){c.default(e,"pattern cannot be empty");const t=new g.Path(e).segments.map((e=>y.getLiteral(e)));if(c.default(t.every(((e,a)=>("."!==e||0===a)&&".."!==e)),`Invalid pattern '${e}'. Relative pathing '.' and '..' is not allowed.`),c.default(!m.hasRoot(e)||t[0],`Invalid pattern '${e}'. Root segment must not contain globs.`),"."===(e=m.normalizeSeparators(e))||e.startsWith("."+l.sep))e=y.globEscape(process.cwd())+e.substr(1);else if("~"===e||e.startsWith("~"+l.sep))a=a||d.homedir(),c.default(a,"Unable to determine HOME directory"),c.default(m.hasAbsoluteRoot(a),`Expected HOME directory to be a rooted path. Actual '${a}'`),e=y.globEscape(a)+e.substr(1);else if(f&&(e.match(/^[A-Z]:$/i)||e.match(/^[A-Z]:[^\\]/i))){let a=m.ensureAbsoluteRoot("C:\\dummy-root",e.substr(0,2));e.length>2&&!a.endsWith("\\")&&(a+="\\"),e=y.globEscape(a)+e.substr(2)}else if(f&&("\\"===e||e.match(/^\\[^\\]/))){let a=m.ensureAbsoluteRoot("C:\\dummy-root","\\");a.endsWith("\\")||(a+="\\"),e=y.globEscape(a)+e.substr(1)}else e=m.ensureAbsoluteRoot(y.globEscape(process.cwd()),e);return m.normalizeSeparators(e)}static getLiteral(e){let a="";for(let t=0;e.length>t;t++){const i=e[t];if("\\"!==i||f||t+1>=e.length){if("*"===i||"?"===i)return"";if("["===i&&e.length>t+1){let i="",o=-1;for(let a=t+1;e.length>a;a++){const t=e[a];if("\\"!==t||f||a+1>=e.length){if("]"===t){o=a;break}i+=t}else i+=e[++a]}if(o>=0){if(i.length>1)return"";if(i){a+=i,t=o;continue}}}a+=i}else a+=e[++t]}return a}static regExpEscape(e){return e.replace(/[[\\^$.|?*+()]/g,"\\$&")}}e.exports.Pattern=y})),x.register("2mu1W",(function(e,a){function t(e,a){a=a||{};var t={};return Object.keys(e).forEach((a=>{t[a]=e[a]})),Object.keys(a).forEach((e=>{t[e]=a[e]})),t}function i(e,a,t){return h(a),t||(t={}),!(!t.nocomment&&"#"===a.charAt(0))&&new o(a,t).match(e)}function o(e,a){if(!(this instanceof o))return new o(e,a);h(e),a||(a={}),e=e.trim(),a.allowWindowsEscape||"/"===r.sep||(e=e.split(r.sep).join("/")),this.options=a,this.set=[],this.pattern=e,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!a.partial,this.make()}function s(e,a){return a||(a=this instanceof o?this.options:{}),h(e=void 0===e?this.pattern:e),a.nobrace||!/\{(?:(?!\{).)*\}/.test(e)?[e]:p(e)}e.exports=i,i.Minimatch=o;var r=(()=>{try{return $1b84ee4325a2ac52$import$bb654e07daaf8c3a}catch(e){}})()||{sep:"/"};i.sep=r.sep;var n=i.GLOBSTAR=o.GLOBSTAR={},p=x("1228m"),d={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},l="[^/]",m="[^/]*?",c="().*{}+?[]^$\\!".split("").reduce(((e,a)=>(e[a]=!0,e)),{}),u=/\/+/;i.filter=(e,a)=>(a=a||{},(t,o,s)=>i(t,e,a)),i.defaults=e=>{if(!e||"object"!=typeof e||!Object.keys(e).length)return i;var a=i,o=(i,o,s)=>a(i,o,t(e,s));return(o.Minimatch=(i,o)=>new a.Minimatch(i,t(e,o))).defaults=i=>a.defaults(t(e,i)).Minimatch,o.filter=(i,o)=>a.filter(i,t(e,o)),o.defaults=i=>a.defaults(t(e,i)),o.makeRe=(i,o)=>a.makeRe(i,t(e,o)),o.braceExpand=(i,o)=>a.braceExpand(i,t(e,o)),o.match=(i,o,s)=>a.match(i,o,t(e,s)),o},o.defaults=e=>i.defaults(e).Minimatch,o.prototype.debug=()=>{},o.prototype.make=function(){var e=this.pattern,a=this.options;if(a.nocomment||"#"!==e.charAt(0))if(e){this.parseNegate();var t=this.globSet=this.braceExpand();a.debug&&(this.debug=function(){console.error.apply(console,arguments)}),this.debug(this.pattern,t),t=this.globParts=t.map((e=>e.split(u))),this.debug(this.pattern,t),t=t.map((function(e,a,t){return e.map(this.parse,this)}),this),this.debug(this.pattern,t),t=t.filter((e=>-1===e.indexOf(!1))),this.debug(this.pattern,t),this.set=t}else this.empty=!0;else this.comment=!0},o.prototype.parseNegate=function(){var e=this.pattern,a=!1,t=0;if(!this.options.nonegate){for(var i=0,o=e.length;o>i&&"!"===e.charAt(i);i++)a=!a,t++;t&&(this.pattern=e.substr(t)),this.negate=a}},i.braceExpand=(e,a)=>s(e,a),o.prototype.braceExpand=s;var h=e=>{if("string"!=typeof e)throw new TypeError("invalid pattern");if(e.length>65536)throw new TypeError("pattern is too long")};o.prototype.parse=function(e,a){function t(){if(o){switch(o){case"*":r+=m,p=!0;break;case"?":r+=l,p=!0;break;default:r+="\\"+o}N.debug("clearStateChar %j %j",o,r),o=!1}}h(e);var i=this.options;if("**"===e){if(!i.noglobstar)return n;e="*"}if(""===e)return"";for(var o,s,r="",p=!!i.nocase,u=!1,f=[],y=[],v=!1,b=-1,x=-1,w="."===e.charAt(0)?"":i.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",N=this,k=0,S=e.length;S>k&&(s=e.charAt(k));k++)if(this.debug("%s\t%s %s %j",e,k,r,s),u&&c[s])r+="\\"+s,u=!1;else switch(s){case"/":return!1;case"\\":t(),u=!0;continue;case"?":case"*":case"+":case"@":case"!":if(this.debug("%s\t%s %s %j <-- stateChar",e,k,r,s),v){this.debug(" in class"),"!"===s&&k===x+1&&(s="^"),r+=s;continue}N.debug("call clearStateChar %j",o),t(),o=s,i.noext&&t();continue;case"(":if(v){r+="(";continue}if(!o){r+="\\(";continue}f.push({type:o,start:k-1,reStart:r.length,open:d[o].open,close:d[o].close}),this.debug("plType %j %j",o,r+="!"===o?"(?:(?!(?:":"(?:"),o=!1;continue;case")":if(v||!f.length){r+="\\)";continue}t(),p=!0;var j=f.pop();r+=j.close,"!"===j.type&&y.push(j),j.reEnd=r.length;continue;case"|":if(v||!f.length||u){r+="\\|",u=!1;continue}t(),r+="|";continue;case"[":if(t(),v){r+="\\"+s;continue}v=!0,x=k,b=r.length,r+=s;continue;case"]":if(k===x+1||!v){r+="\\"+s,u=!1;continue}var C=e.substring(x+1,k);try{RegExp("["+C+"]")}catch(e){var T=this.parse(C,g);r=r.substr(0,b)+"\\["+T[0]+"\\]",p=p||T[1],v=!1;continue}p=!0,v=!1,r+=s;continue;default:t(),u?u=!1:!c[s]||"^"===s&&v||(r+="\\"),r+=s}for(v&&(C=e.substr(x+1),T=this.parse(C,g),r=r.substr(0,b)+"\\["+T[0],p=p||T[1]),j=f.pop();j;j=f.pop()){var P=r.slice(j.reStart+j.open.length);this.debug("setting tail",r,j),P=P.replace(/((?:\\{2}){0,64})(\\?)\|/g,((e,a,t)=>(t||(t="\\"),a+a+t+"|"))),this.debug("tail=%j\n %s",P,P,j,r);var E="*"===j.type?m:"?"===j.type?l:"\\"+j.type;p=!0,r=r.slice(0,j.reStart)+E+"\\("+P}t(),u&&(r+="\\\\");var z=!1;switch(r.charAt(0)){case"[":case".":case"(":z=!0}for(var _=y.length-1;_>-1;_--){var O=y[_],R=r.slice(0,O.reStart),D=r.slice(O.reStart,O.reEnd-8),I=r.slice(O.reEnd-8,O.reEnd),A=r.slice(O.reEnd);I+=A;var B=R.split("(").length-1,q=A;for(k=0;B>k;k++)q=q.replace(/\)[+*?]?/,"");var M="";""===(A=q)&&a!==g&&(M="$"),r=R+D+A+M+I}if(""!==r&&p&&(r="(?=.)"+r),z&&(r=w+r),a===g)return[r,p];if(!p)return e.replace(/\\(.)/g,"$1");var L=i.nocase?"i":"";try{var H=RegExp("^"+r+"$",L)}catch(e){return/$./}return H._glob=e,H._src=r,H};var g={};i.makeRe=(e,a)=>new o(e,a||{}).makeRe(),o.prototype.makeRe=function(){if(this.regexp||!1===this.regexp)return this.regexp;var e=this.set;if(!e.length)return this.regexp=!1,this.regexp;var a=this.options,t=a.noglobstar?m:a.dot?"(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?":"(?:(?!(?:\\/|^)\\.).)*?",i=a.nocase?"i":"",o=e.map((e=>e.map((e=>e===n?t:"string"==typeof e?e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&"):e._src)).join("\\/"))).join("|");o="^(?:"+o+")$",this.negate&&(o="^(?!"+o+").*$");try{this.regexp=RegExp(o,i)}catch(e){this.regexp=!1}return this.regexp},i.match=(e,a,t)=>{var i=new o(a,t=t||{});return e=e.filter((e=>i.match(e))),i.options.nonull&&!e.length&&e.push(a),e},o.prototype.match=function(e,a){if(void 0===a&&(a=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return""===e;if("/"===e&&a)return!0;var t=this.options;"/"!==r.sep&&(e=e.split(r.sep).join("/")),e=e.split(u),this.debug(this.pattern,"split",e);var i,o,s=this.set;for(this.debug(this.pattern,"set",s),o=e.length-1;o>=0&&!(i=e[o]);o--);for(o=0;s.length>o;o++){var n=s[o],p=e;if(t.matchBase&&1===n.length&&(p=[i]),this.matchOne(p,n,a))return!!t.flipNegate||!this.negate}return!t.flipNegate&&this.negate},o.prototype.matchOne=function(e,a,t){var i=this.options;this.debug("matchOne",{this:this,file:e,pattern:a}),this.debug("matchOne",e.length,a.length);for(var o=0,s=0,r=e.length,p=a.length;r>o&&p>s;o++,s++){this.debug("matchOne loop");var d,l=a[s],m=e[o];if(this.debug(a,l,m),!1===l)return!1;if(l===n){this.debug("GLOBSTAR",[a,l,m]);var c=o,u=s+1;if(u===p){for(this.debug("** at the end");r>o;o++)if("."===e[o]||".."===e[o]||!i.dot&&"."===e[o].charAt(0))return!1;return!0}for(;r>c;){var h=e[c];if(this.debug("\nglobstar while",e,c,a,u,h),this.matchOne(e.slice(c),a.slice(u),t))return this.debug("globstar found match!",c,r,h),!0;if("."===h||".."===h||!i.dot&&"."===h.charAt(0)){this.debug("dot detected!",e,c,a,u);break}this.debug("globstar swallow a segment, and continue"),c++}return!(!t||(this.debug("\n>>> no match, partial?",e,c,a,u),c!==r))}if("string"==typeof l?this.debug("string match",l,m,d=m===l):(d=m.match(l),this.debug("pattern match",l,m,d)),!d)return!1}if(o===r&&s===p)return!0;if(o===r)return t;if(s===p)return o===r-1&&""===e[o];throw Error("wtf?")}})),x.register("1228m",((e,a)=>{function t(e){return parseInt(e,10)==e?parseInt(e,10):e.charCodeAt(0)}function i(e){return e.split(c).join("\\").split(u).join("{").split(h).join("}").split(g).join(",").split(f).join(".")}function o(e){if(!e)return[""];var a=[],t=m("{","}",e);if(!t)return e.split(",");var i=t.body,s=t.post,r=t.pre.split(",");r[r.length-1]+="{"+i+"}";var n=o(s);return s.length&&(r[r.length-1]+=n.shift(),r.push.apply(r,n)),a.push.apply(a,r),a}function s(e){return"{"+e+"}"}function r(e){return/^-?0\d/.test(e)}function n(e,a){return a>=e}function p(e,a){return e>=a}function d(e,a){var i=[],c=m("{","}",e);if(!c||/\$$/.test(c.pre))return[e];var u,g=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(c.body),f=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(c.body),y=g||f,v=c.body.indexOf(",")>=0;if(!y&&!v)return c.post.match(/,.*\}/)?d(e=c.pre+"{"+c.body+h+c.post):[e];if(y)u=c.body.split(/\.\./);else if(1===(u=o(c.body)).length&&1===(u=d(u[0],!1).map(s)).length)return(w=c.post.length?d(c.post,!1):[""]).map((e=>c.pre+u[0]+e));var b,x=c.pre,w=c.post.length?d(c.post,!1):[""];if(y){var N=t(u[0]),k=t(u[1]),S=Math.max(u[0].length,u[1].length),j=3==u.length?Math.abs(t(u[2])):1,C=n;N>k&&(j*=-1,C=p);var T=u.some(r);b=[];for(var P=N;C(P,k);P+=j){var E;if(f)"\\"===(E=String.fromCharCode(P))&&(E="");else if(E=P+"",T){var z=S-E.length;if(z>0){var _=Array(z+1).join("0");E=0>P?"-"+_+E.slice(1):_+E}}b.push(E)}}else b=l(u,(e=>d(e,!1)));for(var O=0;b.length>O;O++)for(var R=0;w.length>R;R++){var D=x+b[O]+w[R];(!a||y||D)&&i.push(D)}return i}var l=x("5xDuY"),m=x("8mNmA");e.exports=e=>e?("{}"===e.substr(0,2)&&(e="\\{\\}"+e.substr(2)),d((e=>e.split("\\\\").join(c).split("\\{").join(u).split("\\}").join(h).split("\\,").join(g).split("\\.").join(f))(e),!0).map(i)):[];var c="\0SLASH"+Math.random()+"\0",u="\0OPEN"+Math.random()+"\0",h="\0CLOSE"+Math.random()+"\0",g="\0COMMA"+Math.random()+"\0",f="\0PERIOD"+Math.random()+"\0"})),x.register("5xDuY",((e,a)=>{e.exports=(e,a)=>{for(var i=[],o=0;e.length>o;o++){var s=a(e[o],o);t(s)?i.push.apply(i,s):i.push(s)}return i};var t=Array.isArray||(e=>"[object Array]"==={}.toString.call(e))})),x.register("8mNmA",((e,a)=>{"use strict";function t(e,a,t){e instanceof RegExp&&(e=i(e,t)),a instanceof RegExp&&(a=i(a,t));var s=o(e,a,t);return s&&{start:s[0],end:s[1],pre:t.slice(0,s[0]),body:t.slice(s[0]+e.length,s[1]),post:t.slice(s[1]+a.length)}}function i(e,a){var t=a.match(e);return t?t[0]:null}function o(e,a,t){var i,o,s,r,n,p=t.indexOf(e),d=t.indexOf(a,p+1),l=p;if(p>=0&&d>0){if(e===a)return[p,d];for(i=[],s=t.length;l>=0&&!n;)l==p?(i.push(l),p=t.indexOf(e,l+1)):1==i.length?n=[i.pop(),d]:(s>(o=i.pop())&&(s=o,r=d),d=t.indexOf(a,l+1)),l=d>p&&p>=0?p:d;i.length&&(n=[s,r])}return n}e.exports=t,t.range=o})),x.register("dqT5I",(function(e,a){"use strict";var i=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),o=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),s=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&i(a,e,t);return o(a,e),a}),n=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.Path=void 0;const p=s(t),d=s(x("1kjtX")),l=n(r),m="win32"===process.platform;e.exports.Path=class{constructor(e){if(this.segments=[],"string"==typeof e)if(l.default(e,"Parameter 'itemPath' must not be empty"),e=d.safeTrimTrailingSeparator(e),d.hasRoot(e)){let a=e,t=d.dirname(a);for(;t!==a;){const e=p.basename(a);this.segments.unshift(e),a=t,t=d.dirname(a)}this.segments.unshift(a)}else this.segments=e.split(p.sep);else{l.default(e.length>0,"Parameter 'itemPath' must not be an empty array");for(let a=0;e.length>a;a++){let t=e[a];l.default(t,"Parameter 'itemPath' must not contain any empty segments"),t=d.normalizeSeparators(e[a]),0===a&&d.hasRoot(t)?(t=d.safeTrimTrailingSeparator(t),l.default(t===d.dirname(t),"Parameter 'itemPath' root segment contains information for multiple segments"),this.segments.push(t)):(l.default(!t.includes(p.sep),"Parameter 'itemPath' contains unexpected path separators"),this.segments.push(t))}}}toString(){let e=this.segments[0],a=e.endsWith(p.sep)||m&&/^[A-Z]:$/i.test(e);for(let t=1;this.segments.length>t;t++)a?a=!1:e+=p.sep,e+=this.segments[t];return e}}})),x.register("5kA1Q",(function(e,a){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.SearchState=void 0,e.exports.SearchState=class{constructor(e,a){this.path=e,this.level=a}}})),x.register("gyTlx",((e,a)=>{var t=x("afzzT"),i=x("8uBr1"),o=i;o.v1=t,o.v4=i,e.exports=o})),x.register("afzzT",((e,a)=>{var t,i,o=x("4XaBW"),s=x("dAUGJ"),r=0,n=0;e.exports=(e,a,p)=>{var d=a&&p||0,l=a||[],m=(e=e||{}).node||t,c=void 0!==e.clockseq?e.clockseq:i;if(null==m||null==c){var u=o();null==m&&(m=t=[1|u[0],u[1],u[2],u[3],u[4],u[5]]),null==c&&(c=i=16383&(u[6]<<8|u[7]))}var h=void 0!==e.msecs?e.msecs:(new Date).getTime(),g=void 0!==e.nsecs?e.nsecs:n+1,f=h-r+(g-n)/1e4;if(0>f&&void 0===e.clockseq&&(c=c+1&16383),(0>f||h>r)&&void 0===e.nsecs&&(g=0),g>=1e4)throw Error("uuid.v1(): Can't create more than 10M uuids/sec");r=h,n=g,i=c;var y=(1e4*(268435455&(h+=122192928e5))+g)%4294967296;l[d++]=y>>>24&255,l[d++]=y>>>16&255,l[d++]=y>>>8&255,l[d++]=255&y;var v=h/4294967296*1e4&268435455;l[d++]=v>>>8&255,l[d++]=255&v,l[d++]=v>>>24&15|16,l[d++]=v>>>16&255,l[d++]=c>>>8|128,l[d++]=255&c;for(var b=0;6>b;++b)l[d+b]=m[b];return a||s(l)}})),x.register("i4ATt",((e,a)=>{"use strict";var t,i;Object.defineProperty(e.exports,"__esModule",{value:!0}),(t=e.exports.CacheFilename||(e.exports.CacheFilename={})).Gzip="cache.tgz",t.Zstd="cache.tzst",(i=e.exports.CompressionMethod||(e.exports.CompressionMethod={})).Gzip="gzip",i.ZstdWithoutLong="zstd-without-long",i.Zstd="zstd",e.exports.DefaultRetryAttempts=2,e.exports.DefaultRetryDelay=5e3,e.exports.SocketTimeout=5e3})),x.register("fa2Hi",(function(e,a){"use strict";function t(e){const a=process.env.ACTIONS_CACHE_URL||"";if(!a)throw Error("Cache Service Url not found, unable to restore cache.");const t=`${a}_apis/artifactcache/${e}`;return c.debug("Resource Url: "+t),t}function o(){const e=process.env.ACTIONS_RUNTIME_TOKEN||"",a=new h.BearerCredentialHandler(e);return new u.HttpClient("actions/cache",[a],{headers:{Accept:"application/json;api-version=6.0-preview.1"}})}function s(e,a){const t=e.concat(a&&a!==v.CompressionMethod.Gzip?[a]:[]);return t.push("1.0"),g.createHash("sha256").update(t.join("|")).digest("hex")}function r(e,a){return`bytes ${e}-${a}/*`}function d(e,a,t,i,o){return l(this,void 0,void 0,(function*(){c.debug(`Uploading chunk of size ${o-i+1} bytes at offset ${i} with content range: ${r(i,o)}`);const s={"Content-Type":"application/octet-stream","Content-Range":r(i,o)},n=yield N.retryHttpClientResponse(`uploadChunk (start: ${i}, end: ${o})`,(()=>l(this,void 0,void 0,(function*(){return e.sendStream("PATCH",a,t(),s)}))));if(!N.isSuccessStatusCode(n.message.statusCode))throw Error(`Cache service responded with ${n.message.statusCode} during upload chunk.`)}))}var l=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),m=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const c=m(x("5O4BX"));var u=x("5iwoJ"),h=x("c7vyb");const g=m(n),f=m(i),y=m(x("7QIfE"));var v=x("i4ATt"),b=x("h5xgv"),w=x("f0ask"),N=x("1GGyk");e.exports.getCacheVersion=s,e.exports.getCacheEntry=function(e,a,i){return l(this,void 0,void 0,(function*(){const r=o(),n=s(a,null==i?void 0:i.compressionMethod),p=`cache?keys=${encodeURIComponent(e.join(","))}&version=${n}`,d=yield N.retryTypedResponse("getCacheEntry",(()=>l(this,void 0,void 0,(function*(){return r.getJson(t(p))}))));if(204===d.statusCode)return null;if(!N.isSuccessStatusCode(d.statusCode))throw Error("Cache service responded with "+d.statusCode);const m=d.result,u=null==m?void 0:m.archiveLocation;if(!u)throw Error("Cache not found.");return c.setSecret(u),c.debug("Cache Result:"),c.debug(JSON.stringify(m)),m}))},e.exports.downloadCache=function(e,a,t){return l(this,void 0,void 0,(function*(){const i=new p.URL(e),o=w.getDownloadOptions(t);o.useAzureSdk&&i.hostname.endsWith(".blob.core.windows.net")?yield b.downloadCacheStorageSDK(e,a,o):yield b.downloadCacheHttpClient(e,a)}))},e.exports.reserveCache=function(e,a,i){return l(this,void 0,void 0,(function*(){const r=o(),n=s(a,null==i?void 0:i.compressionMethod),p={key:e,version:n,cacheSize:null==i?void 0:i.cacheSize};return yield N.retryTypedResponse("reserveCache",(()=>l(this,void 0,void 0,(function*(){return r.postJson(t("caches"),p)}))))}))},e.exports.saveCache=function(e,a,i){return l(this,void 0,void 0,(function*(){const s=o();c.debug("Upload cache"),yield function(e,a,i,o){return l(this,void 0,void 0,(function*(){const s=y.getArchiveFileSizeInBytes(i),r=t("caches/"+a),n=f.openSync(i,"r"),p=w.getUploadOptions(o),m=y.assertDefined("uploadConcurrency",p.uploadConcurrency),u=y.assertDefined("uploadChunkSize",p.uploadChunkSize),h=[...Array(m).keys()];c.debug("Awaiting all uploads");let g=0;try{yield Promise.all(h.map((()=>l(this,void 0,void 0,(function*(){for(;s>g;){const a=g,t=g+Math.min(s-g,u)-1;g+=u,yield d(e,r,(()=>f.createReadStream(i,{fd:n,start:a,end:t,autoClose:!1}).on("error",(e=>{throw Error("Cache upload failed because file read failed with "+e.message)}))),a,t)}})))))}finally{f.closeSync(n)}}))}(s,e,a,i),c.debug("Commiting cache");const r=y.getArchiveFileSizeInBytes(a);c.info(`Cache Size: ~${Math.round(r/1048576)} MB (${r} B)`);const n=yield function(e,a,i){return l(this,void 0,void 0,(function*(){const o={size:i};return yield N.retryTypedResponse("commitCache",(()=>l(this,void 0,void 0,(function*(){return e.postJson(t("caches/"+a),o)}))))}))}(s,e,r);if(!N.isSuccessStatusCode(n.statusCode))throw Error(`Cache service responded with ${n.statusCode} during commit cache.`);c.info("Cache saved successfully")}))}})),x.register("h5xgv",(function(e,a){"use strict";function t(e,a){return o(this,void 0,void 0,(function*(){const t=u.createWriteStream(a),i=new p.HttpClient("actions/cache"),s=yield v.retryHttpClientResponse("downloadCache",(()=>o(this,void 0,void 0,(function*(){return i.get(e)}))));s.message.socket.setTimeout(y.SocketTimeout,(()=>{s.message.destroy(),n.debug(`Aborting download, socket timed out after ${y.SocketTimeout} ms`)})),yield function(e,a){return o(this,void 0,void 0,(function*(){const t=g.promisify(h.pipeline);yield t(e.message,a)}))}(s,t);const r=s.message.headers["content-length"];if(r){const e=parseInt(r),t=f.getArchiveFileSizeInBytes(a);if(t!==e)throw Error(`Incomplete download. Expected file size: ${e}, actual file size: ${t}`)}else n.debug("Unable to validate download, no Content-Length header")}))}var o=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),r=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const n=r(x("5O4BX"));var p=x("5iwoJ"),m=x("dYVEb");const c=r(d),u=r(i),h=r(l),g=r(s),f=r(x("7QIfE"));var y=x("i4ATt"),v=x("1GGyk");class b{constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset=this.segmentOffset+this.segmentSize,this.segmentIndex=this.segmentIndex+1,this.segmentSize=e,this.receivedBytes=0,n.debug(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){this.receivedBytes=e}getTransferredBytes(){return this.segmentOffset+this.receivedBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;const e=this.segmentOffset+this.receivedBytes,a=(e/this.contentLength*100).toFixed(1),t=Date.now()-this.startTime;n.info(`Received ${e} of ${this.contentLength} (${a}%), ${(e/1048576/(t/1e3)).toFixed(1)} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setReceivedBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){const a=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(a,e))};this.timeoutHandle=setTimeout(a,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}}e.exports.DownloadProgress=b,e.exports.downloadCacheHttpClient=t,e.exports.downloadCacheStorageSDK=function(e,a,i){var s;return o(this,void 0,void 0,(function*(){const o=new m.BlockBlobClient(e,void 0,{retryOptions:{tryTimeoutInMs:i.timeoutInMs}}),r=yield o.getProperties(),p=null!==(s=r.contentLength)&&void 0!==s?s:-1;if(0>p)n.debug("Unable to determine content length, downloading file with http-client..."),yield t(e,a);else{const e=Math.min(2147483647,c.constants.MAX_LENGTH),t=new b(p),s=u.openSync(a,"w");try{for(t.startDisplayTimer();!t.isDone();){const a=t.segmentOffset+t.segmentSize,r=Math.min(e,p-a);t.nextSegment(r);const n=yield o.downloadToBuffer(a,r,{concurrency:i.downloadConcurrency,onProgress:t.onProgress()});u.writeFileSync(s,n)}}finally{t.stopDisplayTimer(),u.closeSync(s)}}}))}})),x.register("dYVEb",(function(e,t){a(e.exports,"BlockBlobClient",(()=>R));var i=x("aQqza"),o=x("avTWh"),s=x("h6UBU"),r=x("8asXx"),n=x("hYkTo"),p=x("4in51"),d=x("B3eN1"),l=x("cCx4o"),m=x("dhM4N"),c=x("hk2c8"),u=x("6peY7"),h=x("lmGM4"),g=x("bd4Qe"),f=x("fgXML"),y=x("i18fE"),v=x("lhQSH"),b=x("lQkfq"),w=x("ed3Ve"),N=x("14Ixk"),k=x("7WPai"),S=x("hyeym"),j=x("bjvJG"),C=x("e07tx"),T=x("aHkZ2"),P=x("5xL7S"),E=x("928Wp"),z=x("6LpVh");class _ extends N.StorageClient{constructor(e,a,t,r){let n,p;if(r=r||{},v.isPipelineLike(a))p=e,n=a;else if(i.isNode&&a instanceof m.StorageSharedKeyCredential||a instanceof l.AnonymousCredential||o.isTokenCredential(a))p=e,n=v.newPipeline(a,r=t);else if(a||"string"==typeof a){if(!a||"string"!=typeof a||!t||"string"!=typeof t)throw Error("Expecting non-empty strings for containerName and blobName parameters");{const o=a,d=t,c=T.extractConnectionStringParts(e);if("AccountConnString"===c.kind){if(!i.isNode)throw Error("Account connection string is only supported in Node.js environment");{const e=new m.StorageSharedKeyCredential(c.accountName,c.accountKey);p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d)),r.proxyOptions||(r.proxyOptions=s.getDefaultProxySettings(c.proxyUri)),n=v.newPipeline(e,r)}}else{if("SASConnString"!==c.kind)throw Error("Connection string must be either an Account connection string or a SAS connection string");p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d))+"?"+c.accountSas,n=v.newPipeline(new l.AnonymousCredential,r)}}}else p=e,n=v.newPipeline(new l.AnonymousCredential,r);super(p,n),({blobName:this._name,containerName:this._containerName}=this.getBlobAndContainerNamesFromUrl()),this.blobContext=new c.Blob(this.storageClientContext),this._snapshot=T.getURLParameter(this.url,j.URLConstants.Parameters.SNAPSHOT),this._versionId=T.getURLParameter(this.url,j.URLConstants.Parameters.VERSIONID)}get name(){return this._name}get containerName(){return this._containerName}withSnapshot(e){return new _(T.setURLParameter(this.url,j.URLConstants.Parameters.SNAPSHOT,0===e.length?void 0:e),this.pipeline)}withVersion(e){return new _(T.setURLParameter(this.url,j.URLConstants.Parameters.VERSIONID,0===e.length?void 0:e),this.pipeline)}getAppendBlobClient(){return new O(this.url,this.pipeline)}getBlockBlobClient(){return new R(this.url,this.pipeline)}getPageBlobClient(){return new D(this.url,this.pipeline)}async download(e=0,a,t={}){var o;t.conditions=t.conditions||{},t.conditions=t.conditions||{},f.ensureCpkIfSpecified(t.customerProvidedKey,this.isHttps);const{span:s,updatedOptions:r}=C.createSpan("BlobClient-download",t);try{const n=await this.blobContext.download(Object.assign({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(o=t.conditions)||void 0===o?void 0:o.tagConditions}),requestOptions:{onDownloadProgress:i.isNode?void 0:t.onProgress},range:0!==e||a?w.rangeToString({offset:e,count:a}):void 0,rangeGetContentMD5:t.rangeGetContentMD5,rangeGetContentCRC64:t.rangeGetContentCrc64,snapshot:t.snapshot,cpkInfo:t.customerProvidedKey},C.convertTracingToRequestOptionsBase(r))),d=Object.assign(Object.assign({},n),{_response:n._response,objectReplicationDestinationPolicyId:n.objectReplicationPolicyId,objectReplicationSourceProperties:T.parseObjectReplicationRecord(n.objectReplicationRules)});if(!i.isNode)return d;if((void 0===t.maxRetryRequests||0>t.maxRetryRequests)&&(t.maxRetryRequests=j.DEFAULT_MAX_DOWNLOAD_RETRY_REQUESTS),void 0===n.contentLength)throw new RangeError("File download response doesn't contain valid content length header");if(!n.etag)throw new RangeError("File download response doesn't contain valid etag header");return new p.BlobDownloadResponse(d,(async a=>{var i;const o={leaseAccessConditions:t.conditions,modifiedAccessConditions:{ifMatch:t.conditions.ifMatch||n.etag,ifModifiedSince:t.conditions.ifModifiedSince,ifNoneMatch:t.conditions.ifNoneMatch,ifUnmodifiedSince:t.conditions.ifUnmodifiedSince,ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions},range:w.rangeToString({count:e+n.contentLength-a,offset:a}),rangeGetContentMD5:t.rangeGetContentMD5,rangeGetContentCRC64:t.rangeGetContentCrc64,snapshot:t.snapshot,cpkInfo:t.customerProvidedKey};return(await this.blobContext.download(Object.assign({abortSignal:t.abortSignal},o))).readableStreamBody}),e,n.contentLength,{maxRetryRequests:t.maxRetryRequests,onProgress:t.onProgress})}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async exists(e={}){const{span:a,updatedOptions:t}=C.createSpan("BlobClient-exists",e);try{return f.ensureCpkIfSpecified(e.customerProvidedKey,this.isHttps),await this.getProperties({abortSignal:e.abortSignal,customerProvidedKey:e.customerProvidedKey,conditions:e.conditions,tracingOptions:t.tracingOptions}),!0}catch(e){if(404===e.statusCode)return!1;if(409===e.statusCode&&e.details.errorCode===j.BlobUsesCustomerSpecifiedEncryptionMsg)return!0;throw a.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{a.end()}}async getProperties(e={}){var a;const{span:t,updatedOptions:i}=C.createSpan("BlobClient-getProperties",e);try{e.conditions=e.conditions||{},f.ensureCpkIfSpecified(e.customerProvidedKey,this.isHttps);const o=await this.blobContext.getProperties(Object.assign({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions}),cpkInfo:e.customerProvidedKey},C.convertTracingToRequestOptionsBase(i)));return Object.assign(Object.assign({},o),{_response:o._response,objectReplicationDestinationPolicyId:o.objectReplicationPolicyId,objectReplicationSourceProperties:T.parseObjectReplicationRecord(o.objectReplicationRules)})}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async delete(e={}){var a;const{span:t,updatedOptions:i}=C.createSpan("BlobClient-delete",e);e.conditions=e.conditions||{};try{return await this.blobContext.delete(Object.assign({abortSignal:e.abortSignal,deleteSnapshots:e.deleteSnapshots,leaseAccessConditions:e.conditions,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions})},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async deleteIfExists(e={}){var a,t;const{span:i,updatedOptions:o}=C.createSpan("BlobClient-deleteIfExists",e);try{const e=await this.delete(o);return Object.assign(Object.assign({succeeded:!0},e),{_response:e._response})}catch(e){if("BlobNotFound"===(null===(a=e.details)||void 0===a?void 0:a.errorCode))return i.setStatus({code:n.SpanStatusCode.ERROR,message:"Expected exception when deleting a blob or snapshot only if it exists."}),Object.assign(Object.assign({succeeded:!1},null===(t=e.response)||void 0===t?void 0:t.parsedHeaders),{_response:e.response});throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async undelete(e={}){const{span:a,updatedOptions:t}=C.createSpan("BlobClient-undelete",e);try{return await this.blobContext.undelete(Object.assign({abortSignal:e.abortSignal},C.convertTracingToRequestOptionsBase(t)))}catch(e){throw a.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{a.end()}}async setHTTPHeaders(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("BlobClient-setHTTPHeaders",a);a.conditions=a.conditions||{};try{return f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps),await this.blobContext.setHttpHeaders(Object.assign({abortSignal:a.abortSignal,blobHttpHeaders:e,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions})},C.convertTracingToRequestOptionsBase(o)))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async setMetadata(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("BlobClient-setMetadata",a);a.conditions=a.conditions||{};try{return f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps),await this.blobContext.setMetadata(Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,metadata:e,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),cpkInfo:a.customerProvidedKey,encryptionScope:a.encryptionScope},C.convertTracingToRequestOptionsBase(o)))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async setTags(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("BlobClient-setTags",a);try{return await this.blobContext.setTags(Object.assign(Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions})},C.convertTracingToRequestOptionsBase(o)),{tags:T.toBlobTags(e)}))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async getTags(e={}){var a;const{span:t,updatedOptions:i}=C.createSpan("BlobClient-getTags",e);try{const o=await this.blobContext.getTags(Object.assign({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions})},C.convertTracingToRequestOptionsBase(i)));return Object.assign(Object.assign({},o),{_response:o._response,tags:T.toTags({blobTagSet:o.blobTagSet})||{}})}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}getBlobLeaseClient(e){return new z.BlobLeaseClient(this,e)}async createSnapshot(e={}){var a;const{span:t,updatedOptions:i}=C.createSpan("BlobClient-createSnapshot",e);e.conditions=e.conditions||{};try{return f.ensureCpkIfSpecified(e.customerProvidedKey,this.isHttps),await this.blobContext.createSnapshot(Object.assign({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions}),cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async beginCopyFromURL(e,a={}){const t=new b.BlobBeginCopyFromUrlPoller({blobClient:{abortCopyFromURL:(...e)=>this.abortCopyFromURL(...e),getProperties:(...e)=>this.getProperties(...e),startCopyFromURL:(...e)=>this.startCopyFromURL(...e)},copySource:e,intervalInMs:a.intervalInMs,onProgress:a.onProgress,resumeFrom:a.resumeFrom,startCopyFromURLOptions:a});return await t.poll(),t}async abortCopyFromURL(e,a={}){const{span:t,updatedOptions:i}=C.createSpan("BlobClient-abortCopyFromURL",a);try{return await this.blobContext.abortCopyFromURL(e,Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async syncCopyFromURL(e,a={}){var t,i,o;const{span:s,updatedOptions:r}=C.createSpan("BlobClient-syncCopyFromURL",a);a.conditions=a.conditions||{},a.sourceConditions=a.sourceConditions||{};try{return await this.blobContext.copyFromURL(e,Object.assign({abortSignal:a.abortSignal,metadata:a.metadata,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),sourceModifiedAccessConditions:{sourceIfMatch:a.sourceConditions.ifMatch,sourceIfModifiedSince:a.sourceConditions.ifModifiedSince,sourceIfNoneMatch:a.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:a.sourceConditions.ifUnmodifiedSince},sourceContentMD5:a.sourceContentMD5,copySourceAuthorization:T.httpAuthorizationToString(a.sourceAuthorization),blobTagsString:T.toBlobTagsString(a.tags),immutabilityPolicyExpiry:null===(i=a.immutabilityPolicy)||void 0===i?void 0:i.expiriesOn,immutabilityPolicyMode:null===(o=a.immutabilityPolicy)||void 0===o?void 0:o.policyMode,legalHold:a.legalHold,encryptionScope:a.encryptionScope},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async setAccessTier(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("BlobClient-setAccessTier",a);try{return await this.blobContext.setTier(f.toAccessTier(e),Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),rehydratePriority:a.rehydratePriority},C.convertTracingToRequestOptionsBase(o)))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async downloadToBuffer(e,a,t,i={}){let o,s=0,r=0,p=i;e instanceof Buffer?(o=e,s=a||0,r="number"==typeof t?t:0):(s="number"==typeof e?e:0,r="number"==typeof a?a:0,p=t||{});const{span:d,updatedOptions:l}=C.createSpan("BlobClient-downloadToBuffer",p);try{if(p.blockSize||(p.blockSize=0),0>p.blockSize)throw new RangeError("blockSize option must be >= 0");if(0===p.blockSize&&(p.blockSize=j.DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES),0>s)throw new RangeError("offset option must be >= 0");if(r&&0>=r)throw new RangeError("count option must be greater than 0");if(p.conditions||(p.conditions={}),!r){const e=await this.getProperties(Object.assign(Object.assign({},p),{tracingOptions:Object.assign(Object.assign({},p.tracingOptions),C.convertTracingToRequestOptionsBase(l))}));if(r=e.contentLength-s,0>r)throw new RangeError(`offset ${s} shouldn't be larger than blob size ${e.contentLength}`)}if(!o)try{o=Buffer.alloc(r)}catch(e){throw Error(`Unable to allocate the buffer of size: ${r}(in bytes). Please try passing your own buffer to the "downloadToBuffer" method or try using other methods like "download" or "downloadToFile".\t ${e.message}`)}if(r>o.length)throw new RangeError("The buffer's size should be equal to or larger than the request count of bytes: "+r);let e=0;const a=new k.Batch(p.concurrency);for(let t=s;s+r>t;t+=p.blockSize)a.addOperation((async()=>{let a=s+r;a>t+p.blockSize&&(a=t+p.blockSize);const i=(await this.download(t,a-t,{abortSignal:p.abortSignal,conditions:p.conditions,maxRetryRequests:p.maxRetryRequestsPerBlock,customerProvidedKey:p.customerProvidedKey,tracingOptions:Object.assign(Object.assign({},p.tracingOptions),C.convertTracingToRequestOptionsBase(l))})).readableStreamBody;await P.streamToBuffer(i,o,t-s,a-s),e+=a-t,p.onProgress&&p.onProgress({loadedBytes:e})}));return await a.do(),o}catch(e){throw d.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{d.end()}}async downloadToFile(e,a=0,t,i={}){const{span:o,updatedOptions:s}=C.createSpan("BlobClient-downloadToFile",i);try{const r=await this.download(a,t,Object.assign(Object.assign({},i),{tracingOptions:Object.assign(Object.assign({},i.tracingOptions),C.convertTracingToRequestOptionsBase(s))}));return r.readableStreamBody&&await P.readStreamToLocalFile(r.readableStreamBody,e),r.blobDownloadStream=void 0,r}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}getBlobAndContainerNamesFromUrl(){let e,a;try{const t=r.URLBuilder.parse(this.url);if("blob"===t.getHost().split(".")[1]){const i=t.getPath().match("/([^/]*)(/(.*))?");e=i[1],a=i[3]}else if(T.isIpEndpointStyle(t)){const i=t.getPath().match("/([^/]*)/([^/]*)(/(.*))?");e=i[2],a=i[4]}else{const i=t.getPath().match("/([^/]*)(/(.*))?");e=i[1],a=i[3]}if(e=decodeURIComponent(e),a=decodeURIComponent(a),a=a.replace(/\\/g,"/"),!e)throw Error("Provided containerName is invalid.");return{blobName:a,containerName:e}}catch(e){throw Error("Unable to extract blobName and containerName with provided information.")}}async startCopyFromURL(e,a={}){var t,i,o;const{span:s,updatedOptions:r}=C.createSpan("BlobClient-startCopyFromURL",a);a.conditions=a.conditions||{},a.sourceConditions=a.sourceConditions||{};try{return await this.blobContext.startCopyFromURL(e,Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,metadata:a.metadata,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),sourceModifiedAccessConditions:{sourceIfMatch:a.sourceConditions.ifMatch,sourceIfModifiedSince:a.sourceConditions.ifModifiedSince,sourceIfNoneMatch:a.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:a.sourceConditions.ifUnmodifiedSince,sourceIfTags:a.sourceConditions.tagConditions},immutabilityPolicyExpiry:null===(i=a.immutabilityPolicy)||void 0===i?void 0:i.expiriesOn,immutabilityPolicyMode:null===(o=a.immutabilityPolicy)||void 0===o?void 0:o.policyMode,legalHold:a.legalHold,rehydratePriority:a.rehydratePriority,tier:f.toAccessTier(a.tier),blobTagsString:T.toBlobTagsString(a.tags),sealBlob:a.sealBlob},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}generateSasUrl(e){return new Promise((a=>{if(!(this.credential instanceof m.StorageSharedKeyCredential))throw new RangeError("Can only generate the SAS when the client is initialized with a shared key credential");const t=""+E.generateBlobSASQueryParameters(Object.assign({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId},e),this.credential);a(T.appendToURLQuery(this.url,t))}))}async deleteImmutabilityPolicy(e){const{span:a,updatedOptions:t}=C.createSpan("BlobClient-deleteImmutabilityPolicy",e);try{return await this.blobContext.deleteImmutabilityPolicy(Object.assign({abortSignal:null==e?void 0:e.abortSignal},C.convertTracingToRequestOptionsBase(t)))}catch(e){throw a.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{a.end()}}async setImmutabilityPolicy(e,a){const{span:t,updatedOptions:i}=C.createSpan("BlobClient-setImmutabilityPolicy",a);try{return await this.blobContext.setImmutabilityPolicy(Object.assign({abortSignal:null==a?void 0:a.abortSignal,immutabilityPolicyExpiry:e.expiriesOn,immutabilityPolicyMode:e.policyMode,modifiedAccessConditions:null==a?void 0:a.modifiedAccessCondition},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async setLegalHold(e,a){const{span:t,updatedOptions:i}=C.createSpan("BlobClient-setLegalHold",a);try{return await this.blobContext.setLegalHold(e,Object.assign({abortSignal:null==a?void 0:a.abortSignal},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}}class O extends _{constructor(e,a,t,r){let n,p;if(r=r||{},v.isPipelineLike(a))p=e,n=a;else if(i.isNode&&a instanceof m.StorageSharedKeyCredential||a instanceof l.AnonymousCredential||o.isTokenCredential(a))p=e,n=v.newPipeline(a,r=t);else if(a||"string"==typeof a){if(!a||"string"!=typeof a||!t||"string"!=typeof t)throw Error("Expecting non-empty strings for containerName and blobName parameters");{const o=a,d=t,c=T.extractConnectionStringParts(e);if("AccountConnString"===c.kind){if(!i.isNode)throw Error("Account connection string is only supported in Node.js environment");{const e=new m.StorageSharedKeyCredential(c.accountName,c.accountKey);p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d)),r.proxyOptions||(r.proxyOptions=s.getDefaultProxySettings(c.proxyUri)),n=v.newPipeline(e,r)}}else{if("SASConnString"!==c.kind)throw Error("Connection string must be either an Account connection string or a SAS connection string");p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d))+"?"+c.accountSas,n=v.newPipeline(new l.AnonymousCredential,r)}}}else p=e,n=v.newPipeline(new l.AnonymousCredential,r);super(p,n),this.appendBlobContext=new u.AppendBlob(this.storageClientContext)}withSnapshot(e){return new O(T.setURLParameter(this.url,j.URLConstants.Parameters.SNAPSHOT,0===e.length?void 0:e),this.pipeline)}async create(e={}){var a,t,i;const{span:o,updatedOptions:s}=C.createSpan("AppendBlobClient-create",e);e.conditions=e.conditions||{};try{return f.ensureCpkIfSpecified(e.customerProvidedKey,this.isHttps),await this.appendBlobContext.create(0,Object.assign({abortSignal:e.abortSignal,blobHttpHeaders:e.blobHTTPHeaders,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions}),cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,immutabilityPolicyExpiry:null===(t=e.immutabilityPolicy)||void 0===t?void 0:t.expiriesOn,immutabilityPolicyMode:null===(i=e.immutabilityPolicy)||void 0===i?void 0:i.policyMode,legalHold:e.legalHold,blobTagsString:T.toBlobTagsString(e.tags)},C.convertTracingToRequestOptionsBase(s)))}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async createIfNotExists(e={}){var a,t;const{span:i,updatedOptions:o}=C.createSpan("AppendBlobClient-createIfNotExists",e),s={ifNoneMatch:j.ETagAny};try{const e=await this.create(Object.assign(Object.assign({},o),{conditions:s}));return Object.assign(Object.assign({succeeded:!0},e),{_response:e._response})}catch(e){if("BlobAlreadyExists"===(null===(a=e.details)||void 0===a?void 0:a.errorCode))return i.setStatus({code:n.SpanStatusCode.ERROR,message:"Expected exception when creating a blob only if it does not already exist."}),Object.assign(Object.assign({succeeded:!1},null===(t=e.response)||void 0===t?void 0:t.parsedHeaders),{_response:e.response});throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async seal(e={}){var a;const{span:t,updatedOptions:i}=C.createSpan("AppendBlobClient-seal",e);e.conditions=e.conditions||{};try{return await this.appendBlobContext.seal(Object.assign({abortSignal:e.abortSignal,appendPositionAccessConditions:e.conditions,leaseAccessConditions:e.conditions,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(a=e.conditions)||void 0===a?void 0:a.tagConditions})},C.convertTracingToRequestOptionsBase(i)))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async appendBlock(e,a,t={}){var i;const{span:o,updatedOptions:s}=C.createSpan("AppendBlobClient-appendBlock",t);t.conditions=t.conditions||{};try{return f.ensureCpkIfSpecified(t.customerProvidedKey,this.isHttps),await this.appendBlobContext.appendBlock(a,e,Object.assign({abortSignal:t.abortSignal,appendPositionAccessConditions:t.conditions,leaseAccessConditions:t.conditions,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions}),requestOptions:{onUploadProgress:t.onProgress},transactionalContentMD5:t.transactionalContentMD5,transactionalContentCrc64:t.transactionalContentCrc64,cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope},C.convertTracingToRequestOptionsBase(s)))}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async appendBlockFromURL(e,a,t,i={}){var o;const{span:s,updatedOptions:r}=C.createSpan("AppendBlobClient-appendBlockFromURL",i);i.conditions=i.conditions||{},i.sourceConditions=i.sourceConditions||{};try{return f.ensureCpkIfSpecified(i.customerProvidedKey,this.isHttps),await this.appendBlobContext.appendBlockFromUrl(e,0,Object.assign({abortSignal:i.abortSignal,sourceRange:w.rangeToString({offset:a,count:t}),sourceContentMD5:i.sourceContentMD5,sourceContentCrc64:i.sourceContentCrc64,leaseAccessConditions:i.conditions,appendPositionAccessConditions:i.conditions,modifiedAccessConditions:Object.assign(Object.assign({},i.conditions),{ifTags:null===(o=i.conditions)||void 0===o?void 0:o.tagConditions}),sourceModifiedAccessConditions:{sourceIfMatch:i.sourceConditions.ifMatch,sourceIfModifiedSince:i.sourceConditions.ifModifiedSince,sourceIfNoneMatch:i.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:i.sourceConditions.ifUnmodifiedSince},copySourceAuthorization:T.httpAuthorizationToString(i.sourceAuthorization),cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}}class R extends _{constructor(e,a,t,r){let n,p;if(r=r||{},v.isPipelineLike(a))p=e,n=a;else if(i.isNode&&a instanceof m.StorageSharedKeyCredential||a instanceof l.AnonymousCredential||o.isTokenCredential(a))p=e,n=v.newPipeline(a,r=t);else if(a||"string"==typeof a){if(!a||"string"!=typeof a||!t||"string"!=typeof t)throw Error("Expecting non-empty strings for containerName and blobName parameters");{const o=a,d=t,c=T.extractConnectionStringParts(e);if("AccountConnString"===c.kind){if(!i.isNode)throw Error("Account connection string is only supported in Node.js environment");{const e=new m.StorageSharedKeyCredential(c.accountName,c.accountKey);p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d)),r.proxyOptions||(r.proxyOptions=s.getDefaultProxySettings(c.proxyUri)),n=v.newPipeline(e,r)}}else{if("SASConnString"!==c.kind)throw Error("Connection string must be either an Account connection string or a SAS connection string");p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d))+"?"+c.accountSas,n=v.newPipeline(new l.AnonymousCredential,r)}}}else p=e,n=v.newPipeline(new l.AnonymousCredential,r);super(p,n),this.blockBlobContext=new h.BlockBlob(this.storageClientContext),this._blobContext=new c.Blob(this.storageClientContext)}withSnapshot(e){return new R(T.setURLParameter(this.url,j.URLConstants.Parameters.SNAPSHOT,0===e.length?void 0:e),this.pipeline)}async query(e,a={}){var t;f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps);const{span:o,updatedOptions:s}=C.createSpan("BlockBlobClient-query",a);try{if(!i.isNode)throw Error("This operation currently is only supported in Node.js.");const r=await this._blobContext.query(Object.assign({abortSignal:a.abortSignal,queryRequest:{queryType:"SQL",expression:e,inputSerialization:T.toQuerySerialization(a.inputTextConfiguration),outputSerialization:T.toQuerySerialization(a.outputTextConfiguration)},leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions})},C.convertTracingToRequestOptionsBase(s)));return new d.BlobQueryResponse(r,{abortSignal:a.abortSignal,onProgress:a.onProgress,onError:a.onError})}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async upload(e,a,t={}){var i,o,s;t.conditions=t.conditions||{};const{span:r,updatedOptions:p}=C.createSpan("BlockBlobClient-upload",t);try{return f.ensureCpkIfSpecified(t.customerProvidedKey,this.isHttps),await this.blockBlobContext.upload(a,e,Object.assign({abortSignal:t.abortSignal,blobHttpHeaders:t.blobHTTPHeaders,leaseAccessConditions:t.conditions,metadata:t.metadata,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions}),requestOptions:{onUploadProgress:t.onProgress},cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope,immutabilityPolicyExpiry:null===(o=t.immutabilityPolicy)||void 0===o?void 0:o.expiriesOn,immutabilityPolicyMode:null===(s=t.immutabilityPolicy)||void 0===s?void 0:s.policyMode,legalHold:t.legalHold,tier:f.toAccessTier(t.tier),blobTagsString:T.toBlobTagsString(t.tags)},C.convertTracingToRequestOptionsBase(p)))}catch(e){throw r.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{r.end()}}async syncUploadFromURL(e,a={}){var t,i,o,s,r;a.conditions=a.conditions||{};const{span:p,updatedOptions:d}=C.createSpan("BlockBlobClient-syncUploadFromURL",a);try{return f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps),await this.blockBlobContext.putBlobFromUrl(0,e,Object.assign(Object.assign(Object.assign({},a),{blobHttpHeaders:a.blobHTTPHeaders,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:a.conditions.tagConditions}),sourceModifiedAccessConditions:{sourceIfMatch:null===(t=a.sourceConditions)||void 0===t?void 0:t.ifMatch,sourceIfModifiedSince:null===(i=a.sourceConditions)||void 0===i?void 0:i.ifModifiedSince,sourceIfNoneMatch:null===(o=a.sourceConditions)||void 0===o?void 0:o.ifNoneMatch,sourceIfUnmodifiedSince:null===(s=a.sourceConditions)||void 0===s?void 0:s.ifUnmodifiedSince,sourceIfTags:null===(r=a.sourceConditions)||void 0===r?void 0:r.tagConditions},cpkInfo:a.customerProvidedKey,copySourceAuthorization:T.httpAuthorizationToString(a.sourceAuthorization),tier:f.toAccessTier(a.tier),blobTagsString:T.toBlobTagsString(a.tags)}),C.convertTracingToRequestOptionsBase(d)))}catch(e){throw p.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{p.end()}}async stageBlock(e,a,t,i={}){const{span:o,updatedOptions:s}=C.createSpan("BlockBlobClient-stageBlock",i);try{return f.ensureCpkIfSpecified(i.customerProvidedKey,this.isHttps),await this.blockBlobContext.stageBlock(e,t,a,Object.assign({abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,requestOptions:{onUploadProgress:i.onProgress},transactionalContentMD5:i.transactionalContentMD5,transactionalContentCrc64:i.transactionalContentCrc64,cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope},C.convertTracingToRequestOptionsBase(s)))}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async stageBlockFromURL(e,a,t=0,i,o={}){const{span:s,updatedOptions:r}=C.createSpan("BlockBlobClient-stageBlockFromURL",o);try{return f.ensureCpkIfSpecified(o.customerProvidedKey,this.isHttps),await this.blockBlobContext.stageBlockFromURL(e,0,a,Object.assign({abortSignal:o.abortSignal,leaseAccessConditions:o.conditions,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,sourceRange:0!==t||i?w.rangeToString({offset:t,count:i}):void 0,cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:T.httpAuthorizationToString(o.sourceAuthorization)},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async commitBlockList(e,a={}){var t,i,o;a.conditions=a.conditions||{};const{span:s,updatedOptions:r}=C.createSpan("BlockBlobClient-commitBlockList",a);try{return f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps),await this.blockBlobContext.commitBlockList({latest:e},Object.assign({abortSignal:a.abortSignal,blobHttpHeaders:a.blobHTTPHeaders,leaseAccessConditions:a.conditions,metadata:a.metadata,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),cpkInfo:a.customerProvidedKey,encryptionScope:a.encryptionScope,immutabilityPolicyExpiry:null===(i=a.immutabilityPolicy)||void 0===i?void 0:i.expiriesOn,immutabilityPolicyMode:null===(o=a.immutabilityPolicy)||void 0===o?void 0:o.policyMode,legalHold:a.legalHold,tier:f.toAccessTier(a.tier),blobTagsString:T.toBlobTagsString(a.tags)},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async getBlockList(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("BlockBlobClient-getBlockList",a);try{const s=await this.blockBlobContext.getBlockList(e,Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions})},C.convertTracingToRequestOptionsBase(o)));return s.committedBlocks||(s.committedBlocks=[]),s.uncommittedBlocks||(s.uncommittedBlocks=[]),s}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async uploadData(e,a={}){const{span:t,updatedOptions:o}=C.createSpan("BlockBlobClient-uploadData",a);try{if(i.isNode){let a;return a=e instanceof Buffer?e:e instanceof ArrayBuffer?Buffer.from(e):Buffer.from(e.buffer,e.byteOffset,e.byteLength),this.uploadSeekableInternal(((e,t)=>a.slice(e,e+t)),a.byteLength,o)}{const a=new Blob([e]);return this.uploadSeekableInternal(((e,t)=>a.slice(e,e+t)),a.size,o)}}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async uploadBrowserData(e,a={}){const{span:t,updatedOptions:i}=C.createSpan("BlockBlobClient-uploadBrowserData",a);try{const a=new Blob([e]);return await this.uploadSeekableInternal(((e,t)=>a.slice(e,e+t)),a.size,i)}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async uploadSeekableInternal(e,a,t={}){if(t.blockSize||(t.blockSize=0),0>t.blockSize||t.blockSize>j.BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES)throw new RangeError("blockSize option must be >= 0 and <= "+j.BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES);if(0===t.maxSingleShotSize||t.maxSingleShotSize||(t.maxSingleShotSize=j.BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES),0>t.maxSingleShotSize||t.maxSingleShotSize>j.BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES)throw new RangeError("maxSingleShotSize option must be >= 0 and <= "+j.BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES);if(0===t.blockSize){if(a>j.BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES*j.BLOCK_BLOB_MAX_BLOCKS)throw new RangeError(a+" is too larger to upload to a block blob.");a>t.maxSingleShotSize&&(t.blockSize=Math.ceil(a/j.BLOCK_BLOB_MAX_BLOCKS),j.DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES>t.blockSize&&(t.blockSize=j.DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES))}t.blobHTTPHeaders||(t.blobHTTPHeaders={}),t.conditions||(t.conditions={});const{span:o,updatedOptions:s}=C.createSpan("BlockBlobClient-uploadSeekableInternal",t);try{if(t.maxSingleShotSize>=a)return await this.upload(e(0,a),a,s);const r=Math.floor((a-1)/t.blockSize)+1;if(r>j.BLOCK_BLOB_MAX_BLOCKS)throw new RangeError("The buffer's size is too big or the BlockSize is too small;the number of blocks must be <= "+j.BLOCK_BLOB_MAX_BLOCKS);const n=[],p=i.generateUuid();let d=0;const l=new k.Batch(t.concurrency);for(let i=0;r>i;i++)l.addOperation((async()=>{const o=T.generateBlockID(p,i),l=t.blockSize*i,m=(i===r-1?a:l+t.blockSize)-l;n.push(o),await this.stageBlock(o,e(l,m),m,{abortSignal:t.abortSignal,conditions:t.conditions,encryptionScope:t.encryptionScope,tracingOptions:s.tracingOptions}),d+=m,t.onProgress&&t.onProgress({loadedBytes:d})}));return await l.do(),this.commitBlockList(n,s)}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async uploadFile(e,a={}){const{span:t,updatedOptions:i}=C.createSpan("BlockBlobClient-uploadFile",a);try{const o=(await P.fsStat(e)).size;return await this.uploadSeekableInternal(((a,t)=>()=>P.fsCreateReadStream(e,{autoClose:!0,end:t?a+t-1:1/0,start:a})),o,Object.assign(Object.assign({},a),{tracingOptions:Object.assign(Object.assign({},a.tracingOptions),C.convertTracingToRequestOptionsBase(i))}))}catch(e){throw t.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{t.end()}}async uploadStream(e,a=j.DEFAULT_BLOCK_BUFFER_SIZE_BYTES,t=5,o={}){o.blobHTTPHeaders||(o.blobHTTPHeaders={}),o.conditions||(o.conditions={});const{span:s,updatedOptions:r}=C.createSpan("BlockBlobClient-uploadStream",o);try{let n=0;const p=i.generateUuid();let d=0;const l=[],m=new S.BufferScheduler(e,a,t,(async(e,a)=>{const t=T.generateBlockID(p,n);l.push(t),n++,await this.stageBlock(t,e,a,{conditions:o.conditions,encryptionScope:o.encryptionScope,tracingOptions:r.tracingOptions}),d+=a,o.onProgress&&o.onProgress({loadedBytes:d})}),Math.ceil(t/4*3));return await m.do(),await this.commitBlockList(l,Object.assign(Object.assign({},o),{tracingOptions:Object.assign(Object.assign({},o.tracingOptions),C.convertTracingToRequestOptionsBase(r))}))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}}class D extends _{constructor(e,a,t,r){let n,p;if(r=r||{},v.isPipelineLike(a))p=e,n=a;else if(i.isNode&&a instanceof m.StorageSharedKeyCredential||a instanceof l.AnonymousCredential||o.isTokenCredential(a))p=e,n=v.newPipeline(a,r=t);else if(a||"string"==typeof a){if(!a||"string"!=typeof a||!t||"string"!=typeof t)throw Error("Expecting non-empty strings for containerName and blobName parameters");{const o=a,d=t,c=T.extractConnectionStringParts(e);if("AccountConnString"===c.kind){if(!i.isNode)throw Error("Account connection string is only supported in Node.js environment");{const e=new m.StorageSharedKeyCredential(c.accountName,c.accountKey);p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d)),r.proxyOptions||(r.proxyOptions=s.getDefaultProxySettings(c.proxyUri)),n=v.newPipeline(e,r)}}else{if("SASConnString"!==c.kind)throw Error("Connection string must be either an Account connection string or a SAS connection string");p=T.appendToURLPath(T.appendToURLPath(c.url,encodeURIComponent(o)),encodeURIComponent(d))+"?"+c.accountSas,n=v.newPipeline(new l.AnonymousCredential,r)}}}else p=e,n=v.newPipeline(new l.AnonymousCredential,r);super(p,n),this.pageBlobContext=new g.PageBlob(this.storageClientContext)}withSnapshot(e){return new D(T.setURLParameter(this.url,j.URLConstants.Parameters.SNAPSHOT,0===e.length?void 0:e),this.pipeline)}async create(e,a={}){var t,i,o;a.conditions=a.conditions||{};const{span:s,updatedOptions:r}=C.createSpan("PageBlobClient-create",a);try{return f.ensureCpkIfSpecified(a.customerProvidedKey,this.isHttps),await this.pageBlobContext.create(0,e,Object.assign({abortSignal:a.abortSignal,blobHttpHeaders:a.blobHTTPHeaders,blobSequenceNumber:a.blobSequenceNumber,leaseAccessConditions:a.conditions,metadata:a.metadata,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),cpkInfo:a.customerProvidedKey,encryptionScope:a.encryptionScope,immutabilityPolicyExpiry:null===(i=a.immutabilityPolicy)||void 0===i?void 0:i.expiriesOn,immutabilityPolicyMode:null===(o=a.immutabilityPolicy)||void 0===o?void 0:o.policyMode,legalHold:a.legalHold,tier:f.toAccessTier(a.tier),blobTagsString:T.toBlobTagsString(a.tags)},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async createIfNotExists(e,a={}){var t,i;const{span:o,updatedOptions:s}=C.createSpan("PageBlobClient-createIfNotExists",a);try{const t={ifNoneMatch:j.ETagAny},i=await this.create(e,Object.assign(Object.assign({},a),{conditions:t,tracingOptions:s.tracingOptions}));return Object.assign(Object.assign({succeeded:!0},i),{_response:i._response})}catch(e){if("BlobAlreadyExists"===(null===(t=e.details)||void 0===t?void 0:t.errorCode))return o.setStatus({code:n.SpanStatusCode.ERROR,message:"Expected exception when creating a blob only if it does not already exist."}),Object.assign(Object.assign({succeeded:!1},null===(i=e.response)||void 0===i?void 0:i.parsedHeaders),{_response:e.response});throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async uploadPages(e,a,t,i={}){var o;i.conditions=i.conditions||{};const{span:s,updatedOptions:r}=C.createSpan("PageBlobClient-uploadPages",i);try{return f.ensureCpkIfSpecified(i.customerProvidedKey,this.isHttps),await this.pageBlobContext.uploadPages(t,e,Object.assign({abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,modifiedAccessConditions:Object.assign(Object.assign({},i.conditions),{ifTags:null===(o=i.conditions)||void 0===o?void 0:o.tagConditions}),requestOptions:{onUploadProgress:i.onProgress},range:w.rangeToString({offset:a,count:t}),sequenceNumberAccessConditions:i.conditions,transactionalContentMD5:i.transactionalContentMD5,transactionalContentCrc64:i.transactionalContentCrc64,cpkInfo:i.customerProvidedKey,encryptionScope:i.encryptionScope},C.convertTracingToRequestOptionsBase(r)))}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async uploadPagesFromURL(e,a,t,i,o={}){var s;o.conditions=o.conditions||{},o.sourceConditions=o.sourceConditions||{};const{span:r,updatedOptions:p}=C.createSpan("PageBlobClient-uploadPagesFromURL",o);try{return f.ensureCpkIfSpecified(o.customerProvidedKey,this.isHttps),await this.pageBlobContext.uploadPagesFromURL(e,w.rangeToString({offset:a,count:i}),0,w.rangeToString({offset:t,count:i}),Object.assign({abortSignal:o.abortSignal,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,leaseAccessConditions:o.conditions,sequenceNumberAccessConditions:o.conditions,modifiedAccessConditions:Object.assign(Object.assign({},o.conditions),{ifTags:null===(s=o.conditions)||void 0===s?void 0:s.tagConditions}),sourceModifiedAccessConditions:{sourceIfMatch:o.sourceConditions.ifMatch,sourceIfModifiedSince:o.sourceConditions.ifModifiedSince,sourceIfNoneMatch:o.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:o.sourceConditions.ifUnmodifiedSince},cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:T.httpAuthorizationToString(o.sourceAuthorization)},C.convertTracingToRequestOptionsBase(p)))}catch(e){throw r.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{r.end()}}async clearPages(e=0,a,t={}){var i;t.conditions=t.conditions||{};const{span:o,updatedOptions:s}=C.createSpan("PageBlobClient-clearPages",t);try{return await this.pageBlobContext.clearPages(0,Object.assign({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions}),range:w.rangeToString({offset:e,count:a}),sequenceNumberAccessConditions:t.conditions,cpkInfo:t.customerProvidedKey,encryptionScope:t.encryptionScope},C.convertTracingToRequestOptionsBase(s)))}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async getPageRanges(e=0,a,t={}){var i;t.conditions=t.conditions||{};const{span:o,updatedOptions:s}=C.createSpan("PageBlobClient-getPageRanges",t);try{return await this.pageBlobContext.getPageRanges(Object.assign({abortSignal:t.abortSignal,leaseAccessConditions:t.conditions,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions}),range:w.rangeToString({offset:e,count:a})},C.convertTracingToRequestOptionsBase(s))).then(y.rangeResponseFromModel)}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async getPageRangesDiff(e,a,t,i={}){var o;i.conditions=i.conditions||{};const{span:s,updatedOptions:r}=C.createSpan("PageBlobClient-getPageRangesDiff",i);try{return await this.pageBlobContext.getPageRangesDiff(Object.assign({abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,modifiedAccessConditions:Object.assign(Object.assign({},i.conditions),{ifTags:null===(o=i.conditions)||void 0===o?void 0:o.tagConditions}),prevsnapshot:t,range:w.rangeToString({offset:e,count:a})},C.convertTracingToRequestOptionsBase(r))).then(y.rangeResponseFromModel)}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async getPageRangesDiffForManagedDisks(e,a,t,i={}){var o;i.conditions=i.conditions||{};const{span:s,updatedOptions:r}=C.createSpan("PageBlobClient-GetPageRangesDiffForManagedDisks",i);try{return await this.pageBlobContext.getPageRangesDiff(Object.assign({abortSignal:i.abortSignal,leaseAccessConditions:i.conditions,modifiedAccessConditions:Object.assign(Object.assign({},i.conditions),{ifTags:null===(o=i.conditions)||void 0===o?void 0:o.tagConditions}),prevSnapshotUrl:t,range:w.rangeToString({offset:e,count:a})},C.convertTracingToRequestOptionsBase(r))).then(y.rangeResponseFromModel)}catch(e){throw s.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{s.end()}}async resize(e,a={}){var t;a.conditions=a.conditions||{};const{span:i,updatedOptions:o}=C.createSpan("PageBlobClient-resize",a);try{return await this.pageBlobContext.resize(e,Object.assign({abortSignal:a.abortSignal,leaseAccessConditions:a.conditions,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions}),encryptionScope:a.encryptionScope},C.convertTracingToRequestOptionsBase(o)))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}async updateSequenceNumber(e,a,t={}){var i;t.conditions=t.conditions||{};const{span:o,updatedOptions:s}=C.createSpan("PageBlobClient-updateSequenceNumber",t);try{return await this.pageBlobContext.updateSequenceNumber(e,Object.assign({abortSignal:t.abortSignal,blobSequenceNumber:a,leaseAccessConditions:t.conditions,modifiedAccessConditions:Object.assign(Object.assign({},t.conditions),{ifTags:null===(i=t.conditions)||void 0===i?void 0:i.tagConditions})},C.convertTracingToRequestOptionsBase(s)))}catch(e){throw o.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{o.end()}}async startCopyIncremental(e,a={}){var t;const{span:i,updatedOptions:o}=C.createSpan("PageBlobClient-startCopyIncremental",a);try{return await this.pageBlobContext.copyIncremental(e,Object.assign({abortSignal:a.abortSignal,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(t=a.conditions)||void 0===t?void 0:t.tagConditions})},C.convertTracingToRequestOptionsBase(o)))}catch(e){throw i.setStatus({code:n.SpanStatusCode.ERROR,message:e.message}),e}finally{i.end()}}}})),x.register("i0OjU",((e,a)=>{"use strict";Symbol.asyncIterator||(Symbol.asyncIterator=Symbol.for("Symbol.asyncIterator"))})),x.register("fP8t3",(function(t,i){function o(e,a){return e?a.httpsAgent:a.httpAgent}function s(e){return e&&"function"==typeof e.pipe}function r(e,a){return new Promise((t=>{e.once("close",(()=>{null==a||a.abort(),t()})),e.once("end",t),e.once("error",t)}))}a(t.exports,"NodeFetchHttpClient",(()=>b));var n=x("3Kkl5"),p=x("bhSD8"),d=x("7EOPB"),u=x("iySVB"),h=x("9Jyks"),g=x("7nYXX"),f=x("kZQvg"),y=x("53stZ");class v extends l.Transform{constructor(e){super(),this.progressCallback=e,this.loadedBytes=0}_transform(e,a,t){this.push(e),this.loadedBytes+=e.length,this.progressCallback({loadedBytes:this.loadedBytes}),t(void 0)}}class b{constructor(){this.proxyAgentMap=new Map,this.keepAliveAgents={},this.cookieJar=new n.CookieJar(void 0,{looseMode:!0})}async sendRequest(a){var t;if(!a&&"object"!=typeof a)throw Error("'httpRequest' (WebResourceLike) cannot be null or undefined and must be of type object.");const i=new p.AbortController;let o;if(a.abortSignal){if(a.abortSignal.aborted)throw new p.AbortError("The operation was aborted.");o=e=>{"abort"===e.type&&i.abort()},a.abortSignal.addEventListener("abort",o)}if(a.timeout&&setTimeout((()=>{i.abort()}),a.timeout),a.formData){const t=a.formData,i=new(e(h)),o=(e,a)=>{"function"==typeof a&&(a=a()),a&&{}.hasOwnProperty.call(a,"value")&&{}.hasOwnProperty.call(a,"options")?i.append(e,a.value,a.options):i.append(e,a)};for(const e of Object.keys(t)){const a=t[e];if(Array.isArray(a))for(let t=0;a.length>t;t++)o(e,a[t]);else o(e,a)}a.body=i,a.formData=void 0;const s=a.headers.get("Content-Type");s&&-1!==s.indexOf("multipart/form-data")&&("function"==typeof i.getBoundary?a.headers.set("Content-Type","multipart/form-data; boundary="+i.getBoundary()):a.headers.remove("Content-Type"))}let n=a.body?"function"==typeof a.body?a.body():a.body:void 0;if(a.onUploadProgress&&a.body){const e=new v(a.onUploadProgress);s(n)?n.pipe(e):e.end(n),n=e}const l=await this.prepareRequest(a),m=Object.assign({body:n,headers:a.headers.rawHeaders(),method:a.method,signal:i.signal,redirect:"manual"},l);let c;try{const e=await this.fetch(a.url,m),p=(e=>{const a=new d.HttpHeaders;return e.forEach(((e,t)=>{a.set(t,e)})),a})(e.headers),l=(null===(t=a.streamResponseStatusCodes)||void 0===t?void 0:t.has(e.status))||a.streamResponseBody;c={headers:p,request:a,status:e.status,readableStreamBody:l?e.body:void 0,bodyAsText:l?void 0:await e.text()};const u=a.onDownloadProgress;if(u){const a=e.body||void 0;if(s(a)){const e=new v(u);a.pipe(e),c.readableStreamBody=e}else{const e=parseInt(p.get("Content-Length"))||void 0;e&&u({loadedBytes:e})}}return await this.processRequest(c),c}catch(e){const t=e;if("ENOTFOUND"===t.code)throw new g.RestError(t.message,g.RestError.REQUEST_SEND_ERROR,void 0,a);if("aborted"===t.type)throw new p.AbortError("The operation was aborted.");throw t}finally{if(a.abortSignal&&o){let e=Promise.resolve();s(n)&&(e=r(n));let t=Promise.resolve();s(null==c?void 0:c.readableStreamBody)&&(t=r(c.readableStreamBody,i)),Promise.all([e,t]).then((()=>{var e;null===(e=a.abortSignal)||void 0===e||e.removeEventListener("abort",o)})).catch((e=>{f.logger.warning("Error when cleaning up abortListener on httpRequest",e)}))}}}getOrCreateAgent(e){var a;const t=u.isUrlHttps(e.url);if(e.proxySettings){const{host:i,port:s,username:r,password:n}=e.proxySettings,p=`${i}:${s}:${r}:${n}`,d=null!==(a=this.proxyAgentMap.get(p))&&void 0!==a?a:{};let l=o(t,d);if(l)return l;const m=u.createProxyAgent(e.url,e.proxySettings,e.headers);return l=m.agent,m.isHttps?d.httpsAgent=m.agent:d.httpAgent=m.agent,this.proxyAgentMap.set(p,d),l}if(e.keepAlive){let a=o(t,this.keepAliveAgents);if(a)return a;const i={keepAlive:e.keepAlive};return a=t?this.keepAliveAgents.httpsAgent=new c.Agent(i):this.keepAliveAgents.httpAgent=new m.Agent(i),a}return t?c.globalAgent:m.globalAgent}async fetch(e,a){return y.default(e,a)}async prepareRequest(e){const a={};if(this.cookieJar&&!e.headers.get("Cookie")){const a=await new Promise(((a,t)=>{this.cookieJar.getCookieString(e.url,((e,i)=>{e?t(e):a(i)}))}));e.headers.set("Cookie",a)}return a.agent=this.getOrCreateAgent(e),a.compress=e.decompressResponse,a}async processRequest(e){if(this.cookieJar){const a=e.headers.get("Set-Cookie");void 0!==a&&await new Promise(((t,i)=>{this.cookieJar.setCookie(a,e.request.url,{ignoreError:!0},(e=>{e?i(e):t()}))}))}}}})),x.register("3Kkl5",(function(e,t){function i(e){const a=(e+"").toLowerCase();return"none"===a||"lax"===a||"strict"===a?a:null}function o(e,a,t,i){let o=0;for(;e.length>o;){const a=e.charCodeAt(o);if(47>=a||a>=58)break;o++}return a>o||o>t?null:i||o==e.length?parseInt(e.substr(0,o),10):null}function r(e){const a=e.split(":"),t=[0,0,0];if(3!==a.length)return null;for(let e=0;3>e;e++){const i=o(a[e],1,2,2==e);if(null===i)return null;t[e]=i}return t}function n(e){e=(e+"").substr(0,3).toLowerCase();const a=_[e];return 0>a?null:a}function d(e){if(!e)return;const a=e.split(/[\x09\x20-\x2F\x3B-\x40\x5B-\x60\x7B-\x7E]/);if(!a)return;let t=null,i=null,s=null,p=null,d=null,l=null;for(let e=0;a.length>e;e++){const m=a[e].trim();if(!m.length)continue;let c;null===s&&(c=r(m),c)?(t=c[0],i=c[1],s=c[2]):null!==p||(c=o(m,1,2,!0),null===c)?null!==d||(c=n(m),null===c)?null===l&&(c=o(m,2,4,!0),null!==c&&(l=c,70>l||l>99?0>l||l>69||(l+=2e3):l+=1900)):d=c:p=c}return null===p||null===d||null===l||null===s||1>p||p>31||1601>l||t>23||i>59||s>59?void 0:new Date(Date.UTC(l,d,p,t,i,s))}function l(e){return null==e?null:(e=e.trim().replace(/^\./,""),u&&/[^\u0001-\u007f]/.test(e)&&(e=u.toASCII(e)),e.toLowerCase())}function m(e,a,t){if(null==e||null==a)return null;if(!1!==t&&(e=l(e),a=l(a)),e==a)return!0;const i=e.indexOf(a);return i>0&&e.length===a.length+i&&"."===e.substr(i-1,1)&&!I.test(e)}function c(e){let a;try{a=JSON.parse(e)}catch(e){return e}return a}function h(e){if(!e)return null;let a;if("string"==typeof e){if(a=c(e),a instanceof Error)return null}else a=e;const t=new B;for(let e=0;B.serializableProperties.length>e;e++){const i=B.serializableProperties[e];void 0!==a[i]&&a[i]!==A[i]&&(t[i]="expires"===i||"creation"===i||"lastAccessed"===i?null===a[i]?null:"Infinity"==a[i]?"Infinity":new Date(a[i]):a[i])}return t}function g(e,a){let t=0;return t=(a.path?a.path.length:0)-(e.path?e.path.length:0),0!==t||(t=(e.creation?e.creation.getTime():O)-(a.creation?a.creation.getTime():O),0!==t||(t=e.creationIndex-a.creationIndex)),t}function f(e){if(e instanceof Object)return e;try{e=decodeURI(e)}catch(e){}return b(e)}function y(e){return function(...a){if(!this.store.synchronous)throw Error("CookieJar store is not synchronous; use async API instead.");let t,i;if(this[e](...a,((e,a)=>{t=e,i=a})),t)throw t;return i}}var v;a(e.exports,"CookieJar",(()=>v),(e=>v=e));var b=p.parse,w=x("gIN7T"),N=x("fqcu2").Store,k=x("hiUcE").MemoryCookieStore,S=x("gYruC").pathMatch,j=x("iTC6a"),C=x("1Vp8Z").fromCallback;const T=/^[\x21\x23-\x2B\x2D-\x3A\x3C-\x5B\x5D-\x7E]+$/,P=/[\x00-\x1F]/,E=["\n","\r","\0"],z=/[\x20-\x3A\x3C-\x7E]+/,_={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11},O=2147483647e3,R='Invalid sameSiteContext option for getCookies(); expected one of "strict", "lax", or "none"',D=Object.freeze({SILENT:"silent",STRICT:"strict",DISABLED:"unsafe-disabled"});var I=/(?:^(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}$)|(?:^(?:(?:[a-f\d]{1,4}:){7}(?:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|:[a-f\d]{1,4}|:)|(?:[a-f\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,2}|:)|(?:[a-f\d]{1,4}:){4}(?:(?::[a-f\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,3}|:)|(?:[a-f\d]{1,4}:){3}(?:(?::[a-f\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,4}|:)|(?:[a-f\d]{1,4}:){2}(?:(?::[a-f\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,5}|:)|(?:[a-f\d]{1,4}:){1}(?:(?::[a-f\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)){3}|(?::[a-f\d]{1,4}){1,7}|:)))$)/;const A={key:"",value:"",expires:"Infinity",maxAge:null,domain:null,path:null,secure:!1,httpOnly:!1,extensions:null,hostOnly:null,pathIsDefault:null,creation:null,lastAccessed:null,sameSite:"none"};class B{constructor(e={}){s.inspect.custom&&(this[s.inspect.custom]=this.inspect),Object.assign(this,A,e),this.creation=this.creation||new Date,Object.defineProperty(this,"creationIndex",{configurable:!1,enumerable:!1,writable:!0,value:++B.cookiesCreated})}inspect(){const e=Date.now(),a=null!=this.hostOnly?this.hostOnly:"?",t=this.creation?e-this.creation.getTime()+"ms":"?";return`Cookie="${""+this}; hostOnly=${a}; aAge=${this.lastAccessed?e-this.lastAccessed.getTime()+"ms":"?"}; cAge=${t}"`}toJSON(){const e={};for(const a of B.serializableProperties)this[a]!==A[a]&&("expires"===a||"creation"===a||"lastAccessed"===a?e[a]=null===this[a]?null:"Infinity"==this[a]?"Infinity":this[a].toISOString():"maxAge"===a?null!==this[a]&&(e[a]=this[a]==1/0||this[a]==-1/0?""+this[a]:this[a]):this[a]!==A[a]&&(e[a]=this[a]));return e}clone(){return h(this.toJSON())}validate(){if(!T.test(this.value))return!1;if(!(this.expires==1/0||this.expires instanceof Date||d(this.expires)))return!1;if(null!=this.maxAge&&0>=this.maxAge)return!1;if(null!=this.path&&!z.test(this.path))return!1;const e=this.cdomain();if(e){if(e.match(/\.$/))return!1;if(null==w.getPublicSuffix(e))return!1}return!0}setExpires(e){this.expires=e instanceof Date?e:d(e)||"Infinity"}setMaxAge(e){this.maxAge=e===1/0||e===-1/0?""+e:e}cookieString(){let e=this.value;return null==e&&(e=""),""===this.key?e:`${this.key}=${e}`}toString(){let e=this.cookieString();if(this.expires!=1/0&&(e+=this.expires instanceof Date?"; Expires="+this.expires.toUTCString():"; Expires="+this.expires),null!=this.maxAge&&this.maxAge!=1/0&&(e+="; Max-Age="+this.maxAge),this.domain&&!this.hostOnly&&(e+="; Domain="+this.domain),this.path&&(e+="; Path="+this.path),this.secure&&(e+="; Secure"),this.httpOnly&&(e+="; HttpOnly"),this.sameSite&&"none"!==this.sameSite){const a=B.sameSiteCanonical[this.sameSite.toLowerCase()];e+="; SameSite="+(a||this.sameSite)}return this.extensions&&this.extensions.forEach((a=>{e+="; "+a})),e}TTL(e){if(null!=this.maxAge)return this.maxAge>0?1e3*this.maxAge:0;let a=this.expires;return a!=1/0?(a instanceof Date||(a=d(a)||1/0),a==1/0?1/0:a.getTime()-(e||Date.now())):1/0}expiryTime(e){if(null!=this.maxAge){const a=this.maxAge>0?1e3*this.maxAge:-1/0;return(e||this.creation||new Date).getTime()+a}return this.expires==1/0?1/0:this.expires.getTime()}expiryDate(e){const a=this.expiryTime(e);return new Date(a==1/0?O:a==-1/0?0:a)}isPersistent(){return null!=this.maxAge||this.expires!=1/0}canonicalizedDomain(){return null==this.domain?null:l(this.domain)}cdomain(){return this.canonicalizedDomain()}}B.cookiesCreated=0,B.parse=(e,a)=>{a&&"object"==typeof a||(a={});const t=(e=e.trim()).indexOf(";"),i=((e,a)=>{let t,i,o=(e=(e=>{for(let a=0;E.length>a;a++){const t=e.indexOf(E[a]);-1!==t&&(e=e.substr(0,t))}return e})(e)).indexOf("=");if(a)0===o&&(o=(e=e.substr(1)).indexOf("="));else if(0>=o)return;if(o>0?(t=e.substr(0,o).trim(),i=e.substr(o+1).trim()):(t="",i=e.trim()),P.test(t)||P.test(i))return;const s=new B;return s.key=t,s.value=i,s})(-1===t?e:e.substr(0,t),!!a.loose);if(!i)return;if(-1===t)return i;const o=e.slice(t+1).trim();if(0===o.length)return i;const s=o.split(";");for(;s.length;){const e=s.shift().trim();if(0===e.length)continue;const a=e.indexOf("=");let t,o;switch(-1===a?(t=e,o=null):(t=e.substr(0,a),o=e.substr(a+1)),t=t.trim().toLowerCase(),o&&(o=o.trim()),t){case"expires":if(o){const e=d(o);e&&(i.expires=e)}break;case"max-age":o&&/^-?[0-9]+$/.test(o)&&i.setMaxAge(parseInt(o,10));break;case"domain":if(o){const e=o.trim().replace(/^\./,"");e&&(i.domain=e.toLowerCase())}break;case"path":i.path=o&&"/"===o[0]?o:null;break;case"secure":i.secure=!0;break;case"httponly":i.httpOnly=!0;break;case"samesite":switch(o?o.toLowerCase():""){case"strict":i.sameSite="strict";break;case"lax":i.sameSite="lax"}break;default:i.extensions=i.extensions||[],i.extensions.push(e)}}return i},B.fromJSON=h,B.serializableProperties=Object.keys(A),B.sameSiteLevel={strict:3,lax:2,none:1},B.sameSiteCanonical={strict:"Strict",lax:"Lax"};class q{constructor(e,a={rejectPublicSuffixes:!0}){"boolean"==typeof a&&(a={rejectPublicSuffixes:a}),this.rejectPublicSuffixes=a.rejectPublicSuffixes,this.enableLooseMode=!!a.looseMode,this.allowSpecialUseDomain=!!a.allowSpecialUseDomain,this.store=e||new k,this.prefixSecurity=(e=>{if(null!=e){const a=e.toLowerCase();switch(a){case D.STRICT:case D.SILENT:case D.DISABLED:return a}}return D.SILENT})(a.prefixSecurity),this._cloneSync=y("clone"),this._importCookiesSync=y("_importCookies"),this.getCookiesSync=y("getCookies"),this.getCookieStringSync=y("getCookieString"),this.getSetCookieStringsSync=y("getSetCookieStrings"),this.removeAllCookiesSync=y("removeAllCookies"),this.setCookieSync=y("setCookie"),this.serializeSync=y("serialize")}setCookie(e,a,t,o){let s;const r=f(a);"function"==typeof t&&(o=t,t={});const n=l(r.hostname),p=t.loose||this.enableLooseMode;let d=null;if(t.sameSiteContext&&(d=i(t.sameSiteContext),!d))return o(Error(R));if("string"==typeof e||e instanceof String){if(!(e=B.parse(e,{loose:p})))return s=Error("Cookie failed to parse"),o(t.ignoreError?null:s)}else if(!(e instanceof B))return s=Error("First argument to setCookie must be a Cookie object or string"),o(t.ignoreError?null:s);const c=t.now||new Date;if(this.rejectPublicSuffixes&&e.domain&&null==w.getPublicSuffix(e.cdomain()))return s=Error("Cookie has domain set to a public suffix"),o(t.ignoreError?null:s);if(e.domain){if(!m(n,e.cdomain(),!1))return s=Error(`Cookie not in this host's domain. Cookie:${e.cdomain()} Request:${n}`),o(t.ignoreError?null:s);null==e.hostOnly&&(e.hostOnly=!1)}else e.hostOnly=!0,e.domain=n;if(e.path&&"/"===e.path[0]||(e.path=(e=>{if(!e||"/"!==e.substr(0,1))return"/";if("/"===e)return e;const a=e.lastIndexOf("/");return 0===a?"/":e.slice(0,a)})(r.pathname),e.pathIsDefault=!0),!1===t.http&&e.httpOnly)return s=Error("Cookie is HttpOnly and this isn't an HTTP API"),o(t.ignoreError?null:s);if("none"!==e.sameSite&&d&&"none"===d)return s=Error("Cookie is SameSite but this is a cross-origin request"),o(t.ignoreError?null:s);const u=this.prefixSecurity===D.SILENT;if(this.prefixSecurity!==D.DISABLED){let a,i=!1;if((e=>!e.key.startsWith("__Secure-")||e.secure)(e)?(e=>!e.key.startsWith("__Host-")||e.secure&&e.hostOnly&&null!=e.path&&"/"===e.path)(e)||(i=!0,a="Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'"):(i=!0,a="Cookie has __Secure prefix but Secure attribute is not set"),i)return o(t.ignoreError||u?null:Error(a))}const h=this.store;h.updateCookie||(h.updateCookie=function(e,a,t){this.putCookie(a,t)}),h.findCookie(e.domain,e.path,e.key,((a,i)=>{if(a)return o(a);const s=a=>{if(a)return o(a);o(null,e)};if(i){if(!1===t.http&&i.httpOnly)return a=Error("old Cookie is HttpOnly and this isn't an HTTP API"),o(t.ignoreError?null:a);e.creation=i.creation,e.creationIndex=i.creationIndex,e.lastAccessed=c,h.updateCookie(i,e,s)}else e.creation=e.lastAccessed=c,h.putCookie(e,s)}))}getCookies(e,a,t){function o(e){if(e.hostOnly){if(e.domain!=r)return!1}else if(!m(r,e.domain,!1))return!1;return!(!y&&!S(n,e.path)||e.secure&&!p||e.httpOnly&&!c||d&&B.sameSiteLevel[e.sameSite||"none"]>d||h&&e.expiryTime()<=u&&(v.removeCookie(e.domain,e.path,e.key,(()=>{})),1))}const s=f(e);"function"==typeof a&&(t=a,a={});const r=l(s.hostname),n=s.pathname||"/";let p=a.secure;null!=p||!s.protocol||"https:"!=s.protocol&&"wss:"!=s.protocol||(p=!0);let d=0;if(a.sameSiteContext){const e=i(a.sameSiteContext);if(d=B.sameSiteLevel[e],!d)return t(Error(R))}let c=a.http;null==c&&(c=!0);const u=a.now||Date.now(),h=!1!==a.expire,y=!!a.allPaths,v=this.store;v.findCookies(r,y?null:n,this.allowSpecialUseDomain,((e,i)=>{if(e)return t(e);i=i.filter(o),!1!==a.sort&&(i=i.sort(g));const s=new Date;for(const e of i)e.lastAccessed=s;t(null,i)}))}getCookieString(...e){const a=e.pop();e.push(((e,t)=>{e?a(e):a(null,t.sort(g).map((e=>e.cookieString())).join("; "))})),this.getCookies.apply(this,e)}getSetCookieStrings(...e){const a=e.pop();e.push(((e,t)=>{e?a(e):a(null,t.map((e=>""+e)))})),this.getCookies.apply(this,e)}serialize(e){let a=this.store.constructor.name;"Object"===a&&(a=null);const t={version:"tough-cookie@"+j,storeType:a,rejectPublicSuffixes:!!this.rejectPublicSuffixes,cookies:[]};if(!this.store.getAllCookies||"function"!=typeof this.store.getAllCookies)return e(Error("store does not support getAllCookies and cannot be serialized"));this.store.getAllCookies(((a,i)=>a?e(a):(t.cookies=i.map((e=>(delete(e=e instanceof B?e.toJSON():e).creationIndex,e))),e(null,t))))}toJSON(){return this.serializeSync()}_importCookies(e,a){let t=e.cookies;if(!t||!Array.isArray(t))return a(Error("serialized jar has no cookies array"));t=t.slice();const i=e=>{if(e)return a(e);if(!t.length)return a(e,this);let o;try{o=h(t.shift())}catch(e){return a(e)}if(null===o)return i(null);this.store.putCookie(o,i)};i()}clone(e,a){1===arguments.length&&(a=e,e=null),this.serialize(((t,i)=>{if(t)return a(t);q.deserialize(i,e,a)}))}cloneSync(e){if(0===arguments.length)return this._cloneSync();if(!e.synchronous)throw Error("CookieJar clone destination store is not synchronous; use async API instead.");return this._cloneSync(e)}removeAllCookies(e){const a=this.store;if("function"==typeof a.removeAllCookies&&a.removeAllCookies!==N.prototype.removeAllCookies)return a.removeAllCookies(e);a.getAllCookies(((t,i)=>{function o(a){if(a&&r.push(a),s++,s===i.length)return e(r.length?r[0]:null)}if(t)return e(t);if(0===i.length)return e(null);let s=0;const r=[];i.forEach((e=>{a.removeCookie(e.domain,e.path,e.key,o)}))}))}static deserialize(e,a,t){let i;if(3!==arguments.length&&(t=a,a=null),"string"==typeof e){if(i=c(e),i instanceof Error)return t(i)}else i=e;const o=new q(a,i.rejectPublicSuffixes);o._importCookies(i,(e=>{if(e)return t(e);t(null,o)}))}static deserializeSync(e,a){const t="string"==typeof e?JSON.parse(e):e,i=new q(a,t.rejectPublicSuffixes);if(!i.store.synchronous)throw Error("CookieJar store is not synchronous; use async API instead.");return i._importCookiesSync(t),i}}q.fromJSON=q.deserializeSync,["_importCookies","clone","getCookies","getCookieString","getSetCookieStrings","removeAllCookies","serialize","setCookie"].forEach((e=>{q.prototype[e]=C(q.prototype[e])})),q.deserialize=C(q.deserialize),v=q,x("5EBdA")})),x.register("gIN7T",((e,t)=>{var i;a(e.exports,"getPublicSuffix",(()=>i),(e=>i=e));var o=x("fqr15");i=e=>o.get(e)})),x.register("fqr15",((e,t)=>{var i,o,s;a(e.exports,"errorCodes",(()=>i),(e=>i=e)),a(e.exports,"parse",(()=>o),(e=>o=e)),a(e.exports,"get",(()=>s),(e=>s=e));var r={};r.rules=x("cECg4").map((e=>({rule:e,suffix:e.replace(/^(\*\.|\!)/,""),punySuffix:-1,wildcard:"*"===e.charAt(0),exception:"!"===e.charAt(0)}))),r.endsWith=(e,a)=>-1!==e.indexOf(a,e.length-a.length),r.findRule=e=>{var a=u.toASCII(e);return r.rules.reduce(((e,t)=>(-1===t.punySuffix&&(t.punySuffix=u.toASCII(t.suffix)),r.endsWith(a,"."+t.punySuffix)||a===t.punySuffix?t:e)),null)},i={DOMAIN_TOO_SHORT:"Domain name too short.",DOMAIN_TOO_LONG:"Domain name too long. It should be no more than 255 chars.",LABEL_STARTS_WITH_DASH:"Domain name label can not start with a dash.",LABEL_ENDS_WITH_DASH:"Domain name label can not end with a dash.",LABEL_TOO_LONG:"Domain name label should be at most 63 chars long.",LABEL_TOO_SHORT:"Domain name label should be at least 1 character long.",LABEL_INVALID_CHARS:"Domain name label can only contain alphanumeric characters or dashes."},r.validate=e=>{var a=u.toASCII(e);if(1>a.length)return"DOMAIN_TOO_SHORT";if(a.length>255)return"DOMAIN_TOO_LONG";for(var t,i=a.split("."),o=0;i.length>o;++o){if(!(t=i[o]).length)return"LABEL_TOO_SHORT";if(t.length>63)return"LABEL_TOO_LONG";if("-"===t.charAt(0))return"LABEL_STARTS_WITH_DASH";if("-"===t.charAt(t.length-1))return"LABEL_ENDS_WITH_DASH";if(!/^[a-z0-9\-]+$/.test(t))return"LABEL_INVALID_CHARS"}},o=e=>{if("string"!=typeof e)throw new TypeError("Domain name must be a string.");var a=e.slice(0).toLowerCase();"."===a.charAt(a.length-1)&&(a=a.slice(0,a.length-1));var t=r.validate(a);if(t)return{input:e,error:{message:i[t],code:t}};var o={input:e,tld:null,sld:null,domain:null,subdomain:null,listed:!1},s=a.split(".");if("local"===s[s.length-1])return o;var n=()=>/xn--/.test(a)?(o.domain&&(o.domain=u.toASCII(o.domain)),o.subdomain&&(o.subdomain=u.toASCII(o.subdomain)),o):o,p=r.findRule(a);if(!p)return 2>s.length?o:(o.tld=s.pop(),o.sld=s.pop(),o.domain=[o.sld,o.tld].join("."),s.length&&(o.subdomain=s.pop()),n());o.listed=!0;var d=p.suffix.split("."),l=s.slice(0,s.length-d.length);return p.exception&&l.push(d.shift()),o.tld=d.join("."),l.length?(p.wildcard&&(d.unshift(l.pop()),o.tld=d.join(".")),l.length?(o.sld=l.pop(),o.domain=[o.sld,o.tld].join("."),l.length&&(o.subdomain=l.join(".")),n()):n()):n()},s=e=>e&&o(e).domain||null})),x.register("cECg4",((e,a)=>{e.exports=JSON.parse('["ac","com.ac","edu.ac","gov.ac","net.ac","mil.ac","org.ac","ad","nom.ad","ae","co.ae","net.ae","org.ae","sch.ae","ac.ae","gov.ae","mil.ae","aero","accident-investigation.aero","accident-prevention.aero","aerobatic.aero","aeroclub.aero","aerodrome.aero","agents.aero","aircraft.aero","airline.aero","airport.aero","air-surveillance.aero","airtraffic.aero","air-traffic-control.aero","ambulance.aero","amusement.aero","association.aero","author.aero","ballooning.aero","broker.aero","caa.aero","cargo.aero","catering.aero","certification.aero","championship.aero","charter.aero","civilaviation.aero","club.aero","conference.aero","consultant.aero","consulting.aero","control.aero","council.aero","crew.aero","design.aero","dgca.aero","educator.aero","emergency.aero","engine.aero","engineer.aero","entertainment.aero","equipment.aero","exchange.aero","express.aero","federation.aero","flight.aero","freight.aero","fuel.aero","gliding.aero","government.aero","groundhandling.aero","group.aero","hanggliding.aero","homebuilt.aero","insurance.aero","journal.aero","journalist.aero","leasing.aero","logistics.aero","magazine.aero","maintenance.aero","media.aero","microlight.aero","modelling.aero","navigation.aero","parachuting.aero","paragliding.aero","passenger-association.aero","pilot.aero","press.aero","production.aero","recreation.aero","repbody.aero","res.aero","research.aero","rotorcraft.aero","safety.aero","scientist.aero","services.aero","show.aero","skydiving.aero","software.aero","student.aero","trader.aero","trading.aero","trainer.aero","union.aero","workinggroup.aero","works.aero","af","gov.af","com.af","org.af","net.af","edu.af","ag","com.ag","org.ag","net.ag","co.ag","nom.ag","ai","off.ai","com.ai","net.ai","org.ai","al","com.al","edu.al","gov.al","mil.al","net.al","org.al","am","co.am","com.am","commune.am","net.am","org.am","ao","ed.ao","gv.ao","og.ao","co.ao","pb.ao","it.ao","aq","ar","com.ar","edu.ar","gob.ar","gov.ar","int.ar","mil.ar","musica.ar","net.ar","org.ar","tur.ar","arpa","e164.arpa","in-addr.arpa","ip6.arpa","iris.arpa","uri.arpa","urn.arpa","as","gov.as","asia","at","ac.at","co.at","gv.at","or.at","au","com.au","net.au","org.au","edu.au","gov.au","asn.au","id.au","info.au","conf.au","oz.au","act.au","nsw.au","nt.au","qld.au","sa.au","tas.au","vic.au","wa.au","act.edu.au","catholic.edu.au","nsw.edu.au","nt.edu.au","qld.edu.au","sa.edu.au","tas.edu.au","vic.edu.au","wa.edu.au","qld.gov.au","sa.gov.au","tas.gov.au","vic.gov.au","wa.gov.au","education.tas.edu.au","schools.nsw.edu.au","aw","com.aw","ax","az","com.az","net.az","int.az","gov.az","org.az","edu.az","info.az","pp.az","mil.az","name.az","pro.az","biz.az","ba","com.ba","edu.ba","gov.ba","mil.ba","net.ba","org.ba","bb","biz.bb","co.bb","com.bb","edu.bb","gov.bb","info.bb","net.bb","org.bb","store.bb","tv.bb","*.bd","be","ac.be","bf","gov.bf","bg","a.bg","b.bg","c.bg","d.bg","e.bg","f.bg","g.bg","h.bg","i.bg","j.bg","k.bg","l.bg","m.bg","n.bg","o.bg","p.bg","q.bg","r.bg","s.bg","t.bg","u.bg","v.bg","w.bg","x.bg","y.bg","z.bg","0.bg","1.bg","2.bg","3.bg","4.bg","5.bg","6.bg","7.bg","8.bg","9.bg","bh","com.bh","edu.bh","net.bh","org.bh","gov.bh","bi","co.bi","com.bi","edu.bi","or.bi","org.bi","biz","bj","asso.bj","barreau.bj","gouv.bj","bm","com.bm","edu.bm","gov.bm","net.bm","org.bm","bn","com.bn","edu.bn","gov.bn","net.bn","org.bn","bo","com.bo","edu.bo","gob.bo","int.bo","org.bo","net.bo","mil.bo","tv.bo","web.bo","academia.bo","agro.bo","arte.bo","blog.bo","bolivia.bo","ciencia.bo","cooperativa.bo","democracia.bo","deporte.bo","ecologia.bo","economia.bo","empresa.bo","indigena.bo","industria.bo","info.bo","medicina.bo","movimiento.bo","musica.bo","natural.bo","nombre.bo","noticias.bo","patria.bo","politica.bo","profesional.bo","plurinacional.bo","pueblo.bo","revista.bo","salud.bo","tecnologia.bo","tksat.bo","transporte.bo","wiki.bo","br","9guacu.br","abc.br","adm.br","adv.br","agr.br","aju.br","am.br","anani.br","aparecida.br","arq.br","art.br","ato.br","b.br","barueri.br","belem.br","bhz.br","bio.br","blog.br","bmd.br","boavista.br","bsb.br","campinagrande.br","campinas.br","caxias.br","cim.br","cng.br","cnt.br","com.br","contagem.br","coop.br","cri.br","cuiaba.br","curitiba.br","def.br","ecn.br","eco.br","edu.br","emp.br","eng.br","esp.br","etc.br","eti.br","far.br","feira.br","flog.br","floripa.br","fm.br","fnd.br","fortal.br","fot.br","foz.br","fst.br","g12.br","ggf.br","goiania.br","gov.br","ac.gov.br","al.gov.br","am.gov.br","ap.gov.br","ba.gov.br","ce.gov.br","df.gov.br","es.gov.br","go.gov.br","ma.gov.br","mg.gov.br","ms.gov.br","mt.gov.br","pa.gov.br","pb.gov.br","pe.gov.br","pi.gov.br","pr.gov.br","rj.gov.br","rn.gov.br","ro.gov.br","rr.gov.br","rs.gov.br","sc.gov.br","se.gov.br","sp.gov.br","to.gov.br","gru.br","imb.br","ind.br","inf.br","jab.br","jampa.br","jdf.br","joinville.br","jor.br","jus.br","leg.br","lel.br","londrina.br","macapa.br","maceio.br","manaus.br","maringa.br","mat.br","med.br","mil.br","morena.br","mp.br","mus.br","natal.br","net.br","niteroi.br","*.nom.br","not.br","ntr.br","odo.br","ong.br","org.br","osasco.br","palmas.br","poa.br","ppg.br","pro.br","psc.br","psi.br","pvh.br","qsl.br","radio.br","rec.br","recife.br","ribeirao.br","rio.br","riobranco.br","riopreto.br","salvador.br","sampa.br","santamaria.br","santoandre.br","saobernardo.br","saogonca.br","sjc.br","slg.br","slz.br","sorocaba.br","srv.br","taxi.br","tc.br","teo.br","the.br","tmp.br","trd.br","tur.br","tv.br","udi.br","vet.br","vix.br","vlog.br","wiki.br","zlg.br","bs","com.bs","net.bs","org.bs","edu.bs","gov.bs","bt","com.bt","edu.bt","gov.bt","net.bt","org.bt","bv","bw","co.bw","org.bw","by","gov.by","mil.by","com.by","of.by","bz","com.bz","net.bz","org.bz","edu.bz","gov.bz","ca","ab.ca","bc.ca","mb.ca","nb.ca","nf.ca","nl.ca","ns.ca","nt.ca","nu.ca","on.ca","pe.ca","qc.ca","sk.ca","yk.ca","gc.ca","cat","cc","cd","gov.cd","cf","cg","ch","ci","org.ci","or.ci","com.ci","co.ci","edu.ci","ed.ci","ac.ci","net.ci","go.ci","asso.ci","aéroport.ci","int.ci","presse.ci","md.ci","gouv.ci","*.ck","!www.ck","cl","aprendemas.cl","co.cl","gob.cl","gov.cl","mil.cl","cm","co.cm","com.cm","gov.cm","net.cm","cn","ac.cn","com.cn","edu.cn","gov.cn","net.cn","org.cn","mil.cn","公司.cn","网络.cn","網絡.cn","ah.cn","bj.cn","cq.cn","fj.cn","gd.cn","gs.cn","gz.cn","gx.cn","ha.cn","hb.cn","he.cn","hi.cn","hl.cn","hn.cn","jl.cn","js.cn","jx.cn","ln.cn","nm.cn","nx.cn","qh.cn","sc.cn","sd.cn","sh.cn","sn.cn","sx.cn","tj.cn","xj.cn","xz.cn","yn.cn","zj.cn","hk.cn","mo.cn","tw.cn","co","arts.co","com.co","edu.co","firm.co","gov.co","info.co","int.co","mil.co","net.co","nom.co","org.co","rec.co","web.co","com","coop","cr","ac.cr","co.cr","ed.cr","fi.cr","go.cr","or.cr","sa.cr","cu","com.cu","edu.cu","org.cu","net.cu","gov.cu","inf.cu","cv","cw","com.cw","edu.cw","net.cw","org.cw","cx","gov.cx","cy","ac.cy","biz.cy","com.cy","ekloges.cy","gov.cy","ltd.cy","name.cy","net.cy","org.cy","parliament.cy","press.cy","pro.cy","tm.cy","cz","de","dj","dk","dm","com.dm","net.dm","org.dm","edu.dm","gov.dm","do","art.do","com.do","edu.do","gob.do","gov.do","mil.do","net.do","org.do","sld.do","web.do","dz","com.dz","org.dz","net.dz","gov.dz","edu.dz","asso.dz","pol.dz","art.dz","ec","com.ec","info.ec","net.ec","fin.ec","k12.ec","med.ec","pro.ec","org.ec","edu.ec","gov.ec","gob.ec","mil.ec","edu","ee","edu.ee","gov.ee","riik.ee","lib.ee","med.ee","com.ee","pri.ee","aip.ee","org.ee","fie.ee","eg","com.eg","edu.eg","eun.eg","gov.eg","mil.eg","name.eg","net.eg","org.eg","sci.eg","*.er","es","com.es","nom.es","org.es","gob.es","edu.es","et","com.et","gov.et","org.et","edu.et","biz.et","name.et","info.et","net.et","eu","fi","aland.fi","fj","ac.fj","biz.fj","com.fj","gov.fj","info.fj","mil.fj","name.fj","net.fj","org.fj","pro.fj","*.fk","fm","fo","fr","asso.fr","com.fr","gouv.fr","nom.fr","prd.fr","tm.fr","aeroport.fr","avocat.fr","avoues.fr","cci.fr","chambagri.fr","chirurgiens-dentistes.fr","experts-comptables.fr","geometre-expert.fr","greta.fr","huissier-justice.fr","medecin.fr","notaires.fr","pharmacien.fr","port.fr","veterinaire.fr","ga","gb","gd","ge","com.ge","edu.ge","gov.ge","org.ge","mil.ge","net.ge","pvt.ge","gf","gg","co.gg","net.gg","org.gg","gh","com.gh","edu.gh","gov.gh","org.gh","mil.gh","gi","com.gi","ltd.gi","gov.gi","mod.gi","edu.gi","org.gi","gl","co.gl","com.gl","edu.gl","net.gl","org.gl","gm","gn","ac.gn","com.gn","edu.gn","gov.gn","org.gn","net.gn","gov","gp","com.gp","net.gp","mobi.gp","edu.gp","org.gp","asso.gp","gq","gr","com.gr","edu.gr","net.gr","org.gr","gov.gr","gs","gt","com.gt","edu.gt","gob.gt","ind.gt","mil.gt","net.gt","org.gt","gu","com.gu","edu.gu","gov.gu","guam.gu","info.gu","net.gu","org.gu","web.gu","gw","gy","co.gy","com.gy","edu.gy","gov.gy","net.gy","org.gy","hk","com.hk","edu.hk","gov.hk","idv.hk","net.hk","org.hk","公司.hk","教育.hk","敎育.hk","政府.hk","個人.hk","个人.hk","箇人.hk","網络.hk","网络.hk","组織.hk","網絡.hk","网絡.hk","组织.hk","組織.hk","組织.hk","hm","hn","com.hn","edu.hn","org.hn","net.hn","mil.hn","gob.hn","hr","iz.hr","from.hr","name.hr","com.hr","ht","com.ht","shop.ht","firm.ht","info.ht","adult.ht","net.ht","pro.ht","org.ht","med.ht","art.ht","coop.ht","pol.ht","asso.ht","edu.ht","rel.ht","gouv.ht","perso.ht","hu","co.hu","info.hu","org.hu","priv.hu","sport.hu","tm.hu","2000.hu","agrar.hu","bolt.hu","casino.hu","city.hu","erotica.hu","erotika.hu","film.hu","forum.hu","games.hu","hotel.hu","ingatlan.hu","jogasz.hu","konyvelo.hu","lakas.hu","media.hu","news.hu","reklam.hu","sex.hu","shop.hu","suli.hu","szex.hu","tozsde.hu","utazas.hu","video.hu","id","ac.id","biz.id","co.id","desa.id","go.id","mil.id","my.id","net.id","or.id","ponpes.id","sch.id","web.id","ie","gov.ie","il","ac.il","co.il","gov.il","idf.il","k12.il","muni.il","net.il","org.il","im","ac.im","co.im","com.im","ltd.co.im","net.im","org.im","plc.co.im","tt.im","tv.im","in","co.in","firm.in","net.in","org.in","gen.in","ind.in","nic.in","ac.in","edu.in","res.in","gov.in","mil.in","info","int","eu.int","io","com.io","iq","gov.iq","edu.iq","mil.iq","com.iq","org.iq","net.iq","ir","ac.ir","co.ir","gov.ir","id.ir","net.ir","org.ir","sch.ir","ایران.ir","ايران.ir","is","net.is","com.is","edu.is","gov.is","org.is","int.is","it","gov.it","edu.it","abr.it","abruzzo.it","aosta-valley.it","aostavalley.it","bas.it","basilicata.it","cal.it","calabria.it","cam.it","campania.it","emilia-romagna.it","emiliaromagna.it","emr.it","friuli-v-giulia.it","friuli-ve-giulia.it","friuli-vegiulia.it","friuli-venezia-giulia.it","friuli-veneziagiulia.it","friuli-vgiulia.it","friuliv-giulia.it","friulive-giulia.it","friulivegiulia.it","friulivenezia-giulia.it","friuliveneziagiulia.it","friulivgiulia.it","fvg.it","laz.it","lazio.it","lig.it","liguria.it","lom.it","lombardia.it","lombardy.it","lucania.it","mar.it","marche.it","mol.it","molise.it","piedmont.it","piemonte.it","pmn.it","pug.it","puglia.it","sar.it","sardegna.it","sardinia.it","sic.it","sicilia.it","sicily.it","taa.it","tos.it","toscana.it","trentin-sud-tirol.it","trentin-süd-tirol.it","trentin-sudtirol.it","trentin-südtirol.it","trentin-sued-tirol.it","trentin-suedtirol.it","trentino-a-adige.it","trentino-aadige.it","trentino-alto-adige.it","trentino-altoadige.it","trentino-s-tirol.it","trentino-stirol.it","trentino-sud-tirol.it","trentino-süd-tirol.it","trentino-sudtirol.it","trentino-südtirol.it","trentino-sued-tirol.it","trentino-suedtirol.it","trentino.it","trentinoa-adige.it","trentinoaadige.it","trentinoalto-adige.it","trentinoaltoadige.it","trentinos-tirol.it","trentinostirol.it","trentinosud-tirol.it","trentinosüd-tirol.it","trentinosudtirol.it","trentinosüdtirol.it","trentinosued-tirol.it","trentinosuedtirol.it","trentinsud-tirol.it","trentinsüd-tirol.it","trentinsudtirol.it","trentinsüdtirol.it","trentinsued-tirol.it","trentinsuedtirol.it","tuscany.it","umb.it","umbria.it","val-d-aosta.it","val-daosta.it","vald-aosta.it","valdaosta.it","valle-aosta.it","valle-d-aosta.it","valle-daosta.it","valleaosta.it","valled-aosta.it","valledaosta.it","vallee-aoste.it","vallée-aoste.it","vallee-d-aoste.it","vallée-d-aoste.it","valleeaoste.it","valléeaoste.it","valleedaoste.it","valléedaoste.it","vao.it","vda.it","ven.it","veneto.it","ag.it","agrigento.it","al.it","alessandria.it","alto-adige.it","altoadige.it","an.it","ancona.it","andria-barletta-trani.it","andria-trani-barletta.it","andriabarlettatrani.it","andriatranibarletta.it","ao.it","aosta.it","aoste.it","ap.it","aq.it","aquila.it","ar.it","arezzo.it","ascoli-piceno.it","ascolipiceno.it","asti.it","at.it","av.it","avellino.it","ba.it","balsan-sudtirol.it","balsan-südtirol.it","balsan-suedtirol.it","balsan.it","bari.it","barletta-trani-andria.it","barlettatraniandria.it","belluno.it","benevento.it","bergamo.it","bg.it","bi.it","biella.it","bl.it","bn.it","bo.it","bologna.it","bolzano-altoadige.it","bolzano.it","bozen-sudtirol.it","bozen-südtirol.it","bozen-suedtirol.it","bozen.it","br.it","brescia.it","brindisi.it","bs.it","bt.it","bulsan-sudtirol.it","bulsan-südtirol.it","bulsan-suedtirol.it","bulsan.it","bz.it","ca.it","cagliari.it","caltanissetta.it","campidano-medio.it","campidanomedio.it","campobasso.it","carbonia-iglesias.it","carboniaiglesias.it","carrara-massa.it","carraramassa.it","caserta.it","catania.it","catanzaro.it","cb.it","ce.it","cesena-forli.it","cesena-forlì.it","cesenaforli.it","cesenaforlì.it","ch.it","chieti.it","ci.it","cl.it","cn.it","co.it","como.it","cosenza.it","cr.it","cremona.it","crotone.it","cs.it","ct.it","cuneo.it","cz.it","dell-ogliastra.it","dellogliastra.it","en.it","enna.it","fc.it","fe.it","fermo.it","ferrara.it","fg.it","fi.it","firenze.it","florence.it","fm.it","foggia.it","forli-cesena.it","forlì-cesena.it","forlicesena.it","forlìcesena.it","fr.it","frosinone.it","ge.it","genoa.it","genova.it","go.it","gorizia.it","gr.it","grosseto.it","iglesias-carbonia.it","iglesiascarbonia.it","im.it","imperia.it","is.it","isernia.it","kr.it","la-spezia.it","laquila.it","laspezia.it","latina.it","lc.it","le.it","lecce.it","lecco.it","li.it","livorno.it","lo.it","lodi.it","lt.it","lu.it","lucca.it","macerata.it","mantova.it","massa-carrara.it","massacarrara.it","matera.it","mb.it","mc.it","me.it","medio-campidano.it","mediocampidano.it","messina.it","mi.it","milan.it","milano.it","mn.it","mo.it","modena.it","monza-brianza.it","monza-e-della-brianza.it","monza.it","monzabrianza.it","monzaebrianza.it","monzaedellabrianza.it","ms.it","mt.it","na.it","naples.it","napoli.it","no.it","novara.it","nu.it","nuoro.it","og.it","ogliastra.it","olbia-tempio.it","olbiatempio.it","or.it","oristano.it","ot.it","pa.it","padova.it","padua.it","palermo.it","parma.it","pavia.it","pc.it","pd.it","pe.it","perugia.it","pesaro-urbino.it","pesarourbino.it","pescara.it","pg.it","pi.it","piacenza.it","pisa.it","pistoia.it","pn.it","po.it","pordenone.it","potenza.it","pr.it","prato.it","pt.it","pu.it","pv.it","pz.it","ra.it","ragusa.it","ravenna.it","rc.it","re.it","reggio-calabria.it","reggio-emilia.it","reggiocalabria.it","reggioemilia.it","rg.it","ri.it","rieti.it","rimini.it","rm.it","rn.it","ro.it","roma.it","rome.it","rovigo.it","sa.it","salerno.it","sassari.it","savona.it","si.it","siena.it","siracusa.it","so.it","sondrio.it","sp.it","sr.it","ss.it","suedtirol.it","südtirol.it","sv.it","ta.it","taranto.it","te.it","tempio-olbia.it","tempioolbia.it","teramo.it","terni.it","tn.it","to.it","torino.it","tp.it","tr.it","trani-andria-barletta.it","trani-barletta-andria.it","traniandriabarletta.it","tranibarlettaandria.it","trapani.it","trento.it","treviso.it","trieste.it","ts.it","turin.it","tv.it","ud.it","udine.it","urbino-pesaro.it","urbinopesaro.it","va.it","varese.it","vb.it","vc.it","ve.it","venezia.it","venice.it","verbania.it","vercelli.it","verona.it","vi.it","vibo-valentia.it","vibovalentia.it","vicenza.it","viterbo.it","vr.it","vs.it","vt.it","vv.it","je","co.je","net.je","org.je","*.jm","jo","com.jo","org.jo","net.jo","edu.jo","sch.jo","gov.jo","mil.jo","name.jo","jobs","jp","ac.jp","ad.jp","co.jp","ed.jp","go.jp","gr.jp","lg.jp","ne.jp","or.jp","aichi.jp","akita.jp","aomori.jp","chiba.jp","ehime.jp","fukui.jp","fukuoka.jp","fukushima.jp","gifu.jp","gunma.jp","hiroshima.jp","hokkaido.jp","hyogo.jp","ibaraki.jp","ishikawa.jp","iwate.jp","kagawa.jp","kagoshima.jp","kanagawa.jp","kochi.jp","kumamoto.jp","kyoto.jp","mie.jp","miyagi.jp","miyazaki.jp","nagano.jp","nagasaki.jp","nara.jp","niigata.jp","oita.jp","okayama.jp","okinawa.jp","osaka.jp","saga.jp","saitama.jp","shiga.jp","shimane.jp","shizuoka.jp","tochigi.jp","tokushima.jp","tokyo.jp","tottori.jp","toyama.jp","wakayama.jp","yamagata.jp","yamaguchi.jp","yamanashi.jp","栃木.jp","愛知.jp","愛媛.jp","兵庫.jp","熊本.jp","茨城.jp","北海道.jp","千葉.jp","和歌山.jp","長崎.jp","長野.jp","新潟.jp","青森.jp","静岡.jp","東京.jp","石川.jp","埼玉.jp","三重.jp","京都.jp","佐賀.jp","大分.jp","大阪.jp","奈良.jp","宮城.jp","宮崎.jp","富山.jp","山口.jp","山形.jp","山梨.jp","岩手.jp","岐阜.jp","岡山.jp","島根.jp","広島.jp","徳島.jp","沖縄.jp","滋賀.jp","神奈川.jp","福井.jp","福岡.jp","福島.jp","秋田.jp","群馬.jp","香川.jp","高知.jp","鳥取.jp","鹿児島.jp","*.kawasaki.jp","*.kitakyushu.jp","*.kobe.jp","*.nagoya.jp","*.sapporo.jp","*.sendai.jp","*.yokohama.jp","!city.kawasaki.jp","!city.kitakyushu.jp","!city.kobe.jp","!city.nagoya.jp","!city.sapporo.jp","!city.sendai.jp","!city.yokohama.jp","aisai.aichi.jp","ama.aichi.jp","anjo.aichi.jp","asuke.aichi.jp","chiryu.aichi.jp","chita.aichi.jp","fuso.aichi.jp","gamagori.aichi.jp","handa.aichi.jp","hazu.aichi.jp","hekinan.aichi.jp","higashiura.aichi.jp","ichinomiya.aichi.jp","inazawa.aichi.jp","inuyama.aichi.jp","isshiki.aichi.jp","iwakura.aichi.jp","kanie.aichi.jp","kariya.aichi.jp","kasugai.aichi.jp","kira.aichi.jp","kiyosu.aichi.jp","komaki.aichi.jp","konan.aichi.jp","kota.aichi.jp","mihama.aichi.jp","miyoshi.aichi.jp","nishio.aichi.jp","nisshin.aichi.jp","obu.aichi.jp","oguchi.aichi.jp","oharu.aichi.jp","okazaki.aichi.jp","owariasahi.aichi.jp","seto.aichi.jp","shikatsu.aichi.jp","shinshiro.aichi.jp","shitara.aichi.jp","tahara.aichi.jp","takahama.aichi.jp","tobishima.aichi.jp","toei.aichi.jp","togo.aichi.jp","tokai.aichi.jp","tokoname.aichi.jp","toyoake.aichi.jp","toyohashi.aichi.jp","toyokawa.aichi.jp","toyone.aichi.jp","toyota.aichi.jp","tsushima.aichi.jp","yatomi.aichi.jp","akita.akita.jp","daisen.akita.jp","fujisato.akita.jp","gojome.akita.jp","hachirogata.akita.jp","happou.akita.jp","higashinaruse.akita.jp","honjo.akita.jp","honjyo.akita.jp","ikawa.akita.jp","kamikoani.akita.jp","kamioka.akita.jp","katagami.akita.jp","kazuno.akita.jp","kitaakita.akita.jp","kosaka.akita.jp","kyowa.akita.jp","misato.akita.jp","mitane.akita.jp","moriyoshi.akita.jp","nikaho.akita.jp","noshiro.akita.jp","odate.akita.jp","oga.akita.jp","ogata.akita.jp","semboku.akita.jp","yokote.akita.jp","yurihonjo.akita.jp","aomori.aomori.jp","gonohe.aomori.jp","hachinohe.aomori.jp","hashikami.aomori.jp","hiranai.aomori.jp","hirosaki.aomori.jp","itayanagi.aomori.jp","kuroishi.aomori.jp","misawa.aomori.jp","mutsu.aomori.jp","nakadomari.aomori.jp","noheji.aomori.jp","oirase.aomori.jp","owani.aomori.jp","rokunohe.aomori.jp","sannohe.aomori.jp","shichinohe.aomori.jp","shingo.aomori.jp","takko.aomori.jp","towada.aomori.jp","tsugaru.aomori.jp","tsuruta.aomori.jp","abiko.chiba.jp","asahi.chiba.jp","chonan.chiba.jp","chosei.chiba.jp","choshi.chiba.jp","chuo.chiba.jp","funabashi.chiba.jp","futtsu.chiba.jp","hanamigawa.chiba.jp","ichihara.chiba.jp","ichikawa.chiba.jp","ichinomiya.chiba.jp","inzai.chiba.jp","isumi.chiba.jp","kamagaya.chiba.jp","kamogawa.chiba.jp","kashiwa.chiba.jp","katori.chiba.jp","katsuura.chiba.jp","kimitsu.chiba.jp","kisarazu.chiba.jp","kozaki.chiba.jp","kujukuri.chiba.jp","kyonan.chiba.jp","matsudo.chiba.jp","midori.chiba.jp","mihama.chiba.jp","minamiboso.chiba.jp","mobara.chiba.jp","mutsuzawa.chiba.jp","nagara.chiba.jp","nagareyama.chiba.jp","narashino.chiba.jp","narita.chiba.jp","noda.chiba.jp","oamishirasato.chiba.jp","omigawa.chiba.jp","onjuku.chiba.jp","otaki.chiba.jp","sakae.chiba.jp","sakura.chiba.jp","shimofusa.chiba.jp","shirako.chiba.jp","shiroi.chiba.jp","shisui.chiba.jp","sodegaura.chiba.jp","sosa.chiba.jp","tako.chiba.jp","tateyama.chiba.jp","togane.chiba.jp","tohnosho.chiba.jp","tomisato.chiba.jp","urayasu.chiba.jp","yachimata.chiba.jp","yachiyo.chiba.jp","yokaichiba.chiba.jp","yokoshibahikari.chiba.jp","yotsukaido.chiba.jp","ainan.ehime.jp","honai.ehime.jp","ikata.ehime.jp","imabari.ehime.jp","iyo.ehime.jp","kamijima.ehime.jp","kihoku.ehime.jp","kumakogen.ehime.jp","masaki.ehime.jp","matsuno.ehime.jp","matsuyama.ehime.jp","namikata.ehime.jp","niihama.ehime.jp","ozu.ehime.jp","saijo.ehime.jp","seiyo.ehime.jp","shikokuchuo.ehime.jp","tobe.ehime.jp","toon.ehime.jp","uchiko.ehime.jp","uwajima.ehime.jp","yawatahama.ehime.jp","echizen.fukui.jp","eiheiji.fukui.jp","fukui.fukui.jp","ikeda.fukui.jp","katsuyama.fukui.jp","mihama.fukui.jp","minamiechizen.fukui.jp","obama.fukui.jp","ohi.fukui.jp","ono.fukui.jp","sabae.fukui.jp","sakai.fukui.jp","takahama.fukui.jp","tsuruga.fukui.jp","wakasa.fukui.jp","ashiya.fukuoka.jp","buzen.fukuoka.jp","chikugo.fukuoka.jp","chikuho.fukuoka.jp","chikujo.fukuoka.jp","chikushino.fukuoka.jp","chikuzen.fukuoka.jp","chuo.fukuoka.jp","dazaifu.fukuoka.jp","fukuchi.fukuoka.jp","hakata.fukuoka.jp","higashi.fukuoka.jp","hirokawa.fukuoka.jp","hisayama.fukuoka.jp","iizuka.fukuoka.jp","inatsuki.fukuoka.jp","kaho.fukuoka.jp","kasuga.fukuoka.jp","kasuya.fukuoka.jp","kawara.fukuoka.jp","keisen.fukuoka.jp","koga.fukuoka.jp","kurate.fukuoka.jp","kurogi.fukuoka.jp","kurume.fukuoka.jp","minami.fukuoka.jp","miyako.fukuoka.jp","miyama.fukuoka.jp","miyawaka.fukuoka.jp","mizumaki.fukuoka.jp","munakata.fukuoka.jp","nakagawa.fukuoka.jp","nakama.fukuoka.jp","nishi.fukuoka.jp","nogata.fukuoka.jp","ogori.fukuoka.jp","okagaki.fukuoka.jp","okawa.fukuoka.jp","oki.fukuoka.jp","omuta.fukuoka.jp","onga.fukuoka.jp","onojo.fukuoka.jp","oto.fukuoka.jp","saigawa.fukuoka.jp","sasaguri.fukuoka.jp","shingu.fukuoka.jp","shinyoshitomi.fukuoka.jp","shonai.fukuoka.jp","soeda.fukuoka.jp","sue.fukuoka.jp","tachiarai.fukuoka.jp","tagawa.fukuoka.jp","takata.fukuoka.jp","toho.fukuoka.jp","toyotsu.fukuoka.jp","tsuiki.fukuoka.jp","ukiha.fukuoka.jp","umi.fukuoka.jp","usui.fukuoka.jp","yamada.fukuoka.jp","yame.fukuoka.jp","yanagawa.fukuoka.jp","yukuhashi.fukuoka.jp","aizubange.fukushima.jp","aizumisato.fukushima.jp","aizuwakamatsu.fukushima.jp","asakawa.fukushima.jp","bandai.fukushima.jp","date.fukushima.jp","fukushima.fukushima.jp","furudono.fukushima.jp","futaba.fukushima.jp","hanawa.fukushima.jp","higashi.fukushima.jp","hirata.fukushima.jp","hirono.fukushima.jp","iitate.fukushima.jp","inawashiro.fukushima.jp","ishikawa.fukushima.jp","iwaki.fukushima.jp","izumizaki.fukushima.jp","kagamiishi.fukushima.jp","kaneyama.fukushima.jp","kawamata.fukushima.jp","kitakata.fukushima.jp","kitashiobara.fukushima.jp","koori.fukushima.jp","koriyama.fukushima.jp","kunimi.fukushima.jp","miharu.fukushima.jp","mishima.fukushima.jp","namie.fukushima.jp","nango.fukushima.jp","nishiaizu.fukushima.jp","nishigo.fukushima.jp","okuma.fukushima.jp","omotego.fukushima.jp","ono.fukushima.jp","otama.fukushima.jp","samegawa.fukushima.jp","shimogo.fukushima.jp","shirakawa.fukushima.jp","showa.fukushima.jp","soma.fukushima.jp","sukagawa.fukushima.jp","taishin.fukushima.jp","tamakawa.fukushima.jp","tanagura.fukushima.jp","tenei.fukushima.jp","yabuki.fukushima.jp","yamato.fukushima.jp","yamatsuri.fukushima.jp","yanaizu.fukushima.jp","yugawa.fukushima.jp","anpachi.gifu.jp","ena.gifu.jp","gifu.gifu.jp","ginan.gifu.jp","godo.gifu.jp","gujo.gifu.jp","hashima.gifu.jp","hichiso.gifu.jp","hida.gifu.jp","higashishirakawa.gifu.jp","ibigawa.gifu.jp","ikeda.gifu.jp","kakamigahara.gifu.jp","kani.gifu.jp","kasahara.gifu.jp","kasamatsu.gifu.jp","kawaue.gifu.jp","kitagata.gifu.jp","mino.gifu.jp","minokamo.gifu.jp","mitake.gifu.jp","mizunami.gifu.jp","motosu.gifu.jp","nakatsugawa.gifu.jp","ogaki.gifu.jp","sakahogi.gifu.jp","seki.gifu.jp","sekigahara.gifu.jp","shirakawa.gifu.jp","tajimi.gifu.jp","takayama.gifu.jp","tarui.gifu.jp","toki.gifu.jp","tomika.gifu.jp","wanouchi.gifu.jp","yamagata.gifu.jp","yaotsu.gifu.jp","yoro.gifu.jp","annaka.gunma.jp","chiyoda.gunma.jp","fujioka.gunma.jp","higashiagatsuma.gunma.jp","isesaki.gunma.jp","itakura.gunma.jp","kanna.gunma.jp","kanra.gunma.jp","katashina.gunma.jp","kawaba.gunma.jp","kiryu.gunma.jp","kusatsu.gunma.jp","maebashi.gunma.jp","meiwa.gunma.jp","midori.gunma.jp","minakami.gunma.jp","naganohara.gunma.jp","nakanojo.gunma.jp","nanmoku.gunma.jp","numata.gunma.jp","oizumi.gunma.jp","ora.gunma.jp","ota.gunma.jp","shibukawa.gunma.jp","shimonita.gunma.jp","shinto.gunma.jp","showa.gunma.jp","takasaki.gunma.jp","takayama.gunma.jp","tamamura.gunma.jp","tatebayashi.gunma.jp","tomioka.gunma.jp","tsukiyono.gunma.jp","tsumagoi.gunma.jp","ueno.gunma.jp","yoshioka.gunma.jp","asaminami.hiroshima.jp","daiwa.hiroshima.jp","etajima.hiroshima.jp","fuchu.hiroshima.jp","fukuyama.hiroshima.jp","hatsukaichi.hiroshima.jp","higashihiroshima.hiroshima.jp","hongo.hiroshima.jp","jinsekikogen.hiroshima.jp","kaita.hiroshima.jp","kui.hiroshima.jp","kumano.hiroshima.jp","kure.hiroshima.jp","mihara.hiroshima.jp","miyoshi.hiroshima.jp","naka.hiroshima.jp","onomichi.hiroshima.jp","osakikamijima.hiroshima.jp","otake.hiroshima.jp","saka.hiroshima.jp","sera.hiroshima.jp","seranishi.hiroshima.jp","shinichi.hiroshima.jp","shobara.hiroshima.jp","takehara.hiroshima.jp","abashiri.hokkaido.jp","abira.hokkaido.jp","aibetsu.hokkaido.jp","akabira.hokkaido.jp","akkeshi.hokkaido.jp","asahikawa.hokkaido.jp","ashibetsu.hokkaido.jp","ashoro.hokkaido.jp","assabu.hokkaido.jp","atsuma.hokkaido.jp","bibai.hokkaido.jp","biei.hokkaido.jp","bifuka.hokkaido.jp","bihoro.hokkaido.jp","biratori.hokkaido.jp","chippubetsu.hokkaido.jp","chitose.hokkaido.jp","date.hokkaido.jp","ebetsu.hokkaido.jp","embetsu.hokkaido.jp","eniwa.hokkaido.jp","erimo.hokkaido.jp","esan.hokkaido.jp","esashi.hokkaido.jp","fukagawa.hokkaido.jp","fukushima.hokkaido.jp","furano.hokkaido.jp","furubira.hokkaido.jp","haboro.hokkaido.jp","hakodate.hokkaido.jp","hamatonbetsu.hokkaido.jp","hidaka.hokkaido.jp","higashikagura.hokkaido.jp","higashikawa.hokkaido.jp","hiroo.hokkaido.jp","hokuryu.hokkaido.jp","hokuto.hokkaido.jp","honbetsu.hokkaido.jp","horokanai.hokkaido.jp","horonobe.hokkaido.jp","ikeda.hokkaido.jp","imakane.hokkaido.jp","ishikari.hokkaido.jp","iwamizawa.hokkaido.jp","iwanai.hokkaido.jp","kamifurano.hokkaido.jp","kamikawa.hokkaido.jp","kamishihoro.hokkaido.jp","kamisunagawa.hokkaido.jp","kamoenai.hokkaido.jp","kayabe.hokkaido.jp","kembuchi.hokkaido.jp","kikonai.hokkaido.jp","kimobetsu.hokkaido.jp","kitahiroshima.hokkaido.jp","kitami.hokkaido.jp","kiyosato.hokkaido.jp","koshimizu.hokkaido.jp","kunneppu.hokkaido.jp","kuriyama.hokkaido.jp","kuromatsunai.hokkaido.jp","kushiro.hokkaido.jp","kutchan.hokkaido.jp","kyowa.hokkaido.jp","mashike.hokkaido.jp","matsumae.hokkaido.jp","mikasa.hokkaido.jp","minamifurano.hokkaido.jp","mombetsu.hokkaido.jp","moseushi.hokkaido.jp","mukawa.hokkaido.jp","muroran.hokkaido.jp","naie.hokkaido.jp","nakagawa.hokkaido.jp","nakasatsunai.hokkaido.jp","nakatombetsu.hokkaido.jp","nanae.hokkaido.jp","nanporo.hokkaido.jp","nayoro.hokkaido.jp","nemuro.hokkaido.jp","niikappu.hokkaido.jp","niki.hokkaido.jp","nishiokoppe.hokkaido.jp","noboribetsu.hokkaido.jp","numata.hokkaido.jp","obihiro.hokkaido.jp","obira.hokkaido.jp","oketo.hokkaido.jp","okoppe.hokkaido.jp","otaru.hokkaido.jp","otobe.hokkaido.jp","otofuke.hokkaido.jp","otoineppu.hokkaido.jp","oumu.hokkaido.jp","ozora.hokkaido.jp","pippu.hokkaido.jp","rankoshi.hokkaido.jp","rebun.hokkaido.jp","rikubetsu.hokkaido.jp","rishiri.hokkaido.jp","rishirifuji.hokkaido.jp","saroma.hokkaido.jp","sarufutsu.hokkaido.jp","shakotan.hokkaido.jp","shari.hokkaido.jp","shibecha.hokkaido.jp","shibetsu.hokkaido.jp","shikabe.hokkaido.jp","shikaoi.hokkaido.jp","shimamaki.hokkaido.jp","shimizu.hokkaido.jp","shimokawa.hokkaido.jp","shinshinotsu.hokkaido.jp","shintoku.hokkaido.jp","shiranuka.hokkaido.jp","shiraoi.hokkaido.jp","shiriuchi.hokkaido.jp","sobetsu.hokkaido.jp","sunagawa.hokkaido.jp","taiki.hokkaido.jp","takasu.hokkaido.jp","takikawa.hokkaido.jp","takinoue.hokkaido.jp","teshikaga.hokkaido.jp","tobetsu.hokkaido.jp","tohma.hokkaido.jp","tomakomai.hokkaido.jp","tomari.hokkaido.jp","toya.hokkaido.jp","toyako.hokkaido.jp","toyotomi.hokkaido.jp","toyoura.hokkaido.jp","tsubetsu.hokkaido.jp","tsukigata.hokkaido.jp","urakawa.hokkaido.jp","urausu.hokkaido.jp","uryu.hokkaido.jp","utashinai.hokkaido.jp","wakkanai.hokkaido.jp","wassamu.hokkaido.jp","yakumo.hokkaido.jp","yoichi.hokkaido.jp","aioi.hyogo.jp","akashi.hyogo.jp","ako.hyogo.jp","amagasaki.hyogo.jp","aogaki.hyogo.jp","asago.hyogo.jp","ashiya.hyogo.jp","awaji.hyogo.jp","fukusaki.hyogo.jp","goshiki.hyogo.jp","harima.hyogo.jp","himeji.hyogo.jp","ichikawa.hyogo.jp","inagawa.hyogo.jp","itami.hyogo.jp","kakogawa.hyogo.jp","kamigori.hyogo.jp","kamikawa.hyogo.jp","kasai.hyogo.jp","kasuga.hyogo.jp","kawanishi.hyogo.jp","miki.hyogo.jp","minamiawaji.hyogo.jp","nishinomiya.hyogo.jp","nishiwaki.hyogo.jp","ono.hyogo.jp","sanda.hyogo.jp","sannan.hyogo.jp","sasayama.hyogo.jp","sayo.hyogo.jp","shingu.hyogo.jp","shinonsen.hyogo.jp","shiso.hyogo.jp","sumoto.hyogo.jp","taishi.hyogo.jp","taka.hyogo.jp","takarazuka.hyogo.jp","takasago.hyogo.jp","takino.hyogo.jp","tamba.hyogo.jp","tatsuno.hyogo.jp","toyooka.hyogo.jp","yabu.hyogo.jp","yashiro.hyogo.jp","yoka.hyogo.jp","yokawa.hyogo.jp","ami.ibaraki.jp","asahi.ibaraki.jp","bando.ibaraki.jp","chikusei.ibaraki.jp","daigo.ibaraki.jp","fujishiro.ibaraki.jp","hitachi.ibaraki.jp","hitachinaka.ibaraki.jp","hitachiomiya.ibaraki.jp","hitachiota.ibaraki.jp","ibaraki.ibaraki.jp","ina.ibaraki.jp","inashiki.ibaraki.jp","itako.ibaraki.jp","iwama.ibaraki.jp","joso.ibaraki.jp","kamisu.ibaraki.jp","kasama.ibaraki.jp","kashima.ibaraki.jp","kasumigaura.ibaraki.jp","koga.ibaraki.jp","miho.ibaraki.jp","mito.ibaraki.jp","moriya.ibaraki.jp","naka.ibaraki.jp","namegata.ibaraki.jp","oarai.ibaraki.jp","ogawa.ibaraki.jp","omitama.ibaraki.jp","ryugasaki.ibaraki.jp","sakai.ibaraki.jp","sakuragawa.ibaraki.jp","shimodate.ibaraki.jp","shimotsuma.ibaraki.jp","shirosato.ibaraki.jp","sowa.ibaraki.jp","suifu.ibaraki.jp","takahagi.ibaraki.jp","tamatsukuri.ibaraki.jp","tokai.ibaraki.jp","tomobe.ibaraki.jp","tone.ibaraki.jp","toride.ibaraki.jp","tsuchiura.ibaraki.jp","tsukuba.ibaraki.jp","uchihara.ibaraki.jp","ushiku.ibaraki.jp","yachiyo.ibaraki.jp","yamagata.ibaraki.jp","yawara.ibaraki.jp","yuki.ibaraki.jp","anamizu.ishikawa.jp","hakui.ishikawa.jp","hakusan.ishikawa.jp","kaga.ishikawa.jp","kahoku.ishikawa.jp","kanazawa.ishikawa.jp","kawakita.ishikawa.jp","komatsu.ishikawa.jp","nakanoto.ishikawa.jp","nanao.ishikawa.jp","nomi.ishikawa.jp","nonoichi.ishikawa.jp","noto.ishikawa.jp","shika.ishikawa.jp","suzu.ishikawa.jp","tsubata.ishikawa.jp","tsurugi.ishikawa.jp","uchinada.ishikawa.jp","wajima.ishikawa.jp","fudai.iwate.jp","fujisawa.iwate.jp","hanamaki.iwate.jp","hiraizumi.iwate.jp","hirono.iwate.jp","ichinohe.iwate.jp","ichinoseki.iwate.jp","iwaizumi.iwate.jp","iwate.iwate.jp","joboji.iwate.jp","kamaishi.iwate.jp","kanegasaki.iwate.jp","karumai.iwate.jp","kawai.iwate.jp","kitakami.iwate.jp","kuji.iwate.jp","kunohe.iwate.jp","kuzumaki.iwate.jp","miyako.iwate.jp","mizusawa.iwate.jp","morioka.iwate.jp","ninohe.iwate.jp","noda.iwate.jp","ofunato.iwate.jp","oshu.iwate.jp","otsuchi.iwate.jp","rikuzentakata.iwate.jp","shiwa.iwate.jp","shizukuishi.iwate.jp","sumita.iwate.jp","tanohata.iwate.jp","tono.iwate.jp","yahaba.iwate.jp","yamada.iwate.jp","ayagawa.kagawa.jp","higashikagawa.kagawa.jp","kanonji.kagawa.jp","kotohira.kagawa.jp","manno.kagawa.jp","marugame.kagawa.jp","mitoyo.kagawa.jp","naoshima.kagawa.jp","sanuki.kagawa.jp","tadotsu.kagawa.jp","takamatsu.kagawa.jp","tonosho.kagawa.jp","uchinomi.kagawa.jp","utazu.kagawa.jp","zentsuji.kagawa.jp","akune.kagoshima.jp","amami.kagoshima.jp","hioki.kagoshima.jp","isa.kagoshima.jp","isen.kagoshima.jp","izumi.kagoshima.jp","kagoshima.kagoshima.jp","kanoya.kagoshima.jp","kawanabe.kagoshima.jp","kinko.kagoshima.jp","kouyama.kagoshima.jp","makurazaki.kagoshima.jp","matsumoto.kagoshima.jp","minamitane.kagoshima.jp","nakatane.kagoshima.jp","nishinoomote.kagoshima.jp","satsumasendai.kagoshima.jp","soo.kagoshima.jp","tarumizu.kagoshima.jp","yusui.kagoshima.jp","aikawa.kanagawa.jp","atsugi.kanagawa.jp","ayase.kanagawa.jp","chigasaki.kanagawa.jp","ebina.kanagawa.jp","fujisawa.kanagawa.jp","hadano.kanagawa.jp","hakone.kanagawa.jp","hiratsuka.kanagawa.jp","isehara.kanagawa.jp","kaisei.kanagawa.jp","kamakura.kanagawa.jp","kiyokawa.kanagawa.jp","matsuda.kanagawa.jp","minamiashigara.kanagawa.jp","miura.kanagawa.jp","nakai.kanagawa.jp","ninomiya.kanagawa.jp","odawara.kanagawa.jp","oi.kanagawa.jp","oiso.kanagawa.jp","sagamihara.kanagawa.jp","samukawa.kanagawa.jp","tsukui.kanagawa.jp","yamakita.kanagawa.jp","yamato.kanagawa.jp","yokosuka.kanagawa.jp","yugawara.kanagawa.jp","zama.kanagawa.jp","zushi.kanagawa.jp","aki.kochi.jp","geisei.kochi.jp","hidaka.kochi.jp","higashitsuno.kochi.jp","ino.kochi.jp","kagami.kochi.jp","kami.kochi.jp","kitagawa.kochi.jp","kochi.kochi.jp","mihara.kochi.jp","motoyama.kochi.jp","muroto.kochi.jp","nahari.kochi.jp","nakamura.kochi.jp","nankoku.kochi.jp","nishitosa.kochi.jp","niyodogawa.kochi.jp","ochi.kochi.jp","okawa.kochi.jp","otoyo.kochi.jp","otsuki.kochi.jp","sakawa.kochi.jp","sukumo.kochi.jp","susaki.kochi.jp","tosa.kochi.jp","tosashimizu.kochi.jp","toyo.kochi.jp","tsuno.kochi.jp","umaji.kochi.jp","yasuda.kochi.jp","yusuhara.kochi.jp","amakusa.kumamoto.jp","arao.kumamoto.jp","aso.kumamoto.jp","choyo.kumamoto.jp","gyokuto.kumamoto.jp","kamiamakusa.kumamoto.jp","kikuchi.kumamoto.jp","kumamoto.kumamoto.jp","mashiki.kumamoto.jp","mifune.kumamoto.jp","minamata.kumamoto.jp","minamioguni.kumamoto.jp","nagasu.kumamoto.jp","nishihara.kumamoto.jp","oguni.kumamoto.jp","ozu.kumamoto.jp","sumoto.kumamoto.jp","takamori.kumamoto.jp","uki.kumamoto.jp","uto.kumamoto.jp","yamaga.kumamoto.jp","yamato.kumamoto.jp","yatsushiro.kumamoto.jp","ayabe.kyoto.jp","fukuchiyama.kyoto.jp","higashiyama.kyoto.jp","ide.kyoto.jp","ine.kyoto.jp","joyo.kyoto.jp","kameoka.kyoto.jp","kamo.kyoto.jp","kita.kyoto.jp","kizu.kyoto.jp","kumiyama.kyoto.jp","kyotamba.kyoto.jp","kyotanabe.kyoto.jp","kyotango.kyoto.jp","maizuru.kyoto.jp","minami.kyoto.jp","minamiyamashiro.kyoto.jp","miyazu.kyoto.jp","muko.kyoto.jp","nagaokakyo.kyoto.jp","nakagyo.kyoto.jp","nantan.kyoto.jp","oyamazaki.kyoto.jp","sakyo.kyoto.jp","seika.kyoto.jp","tanabe.kyoto.jp","uji.kyoto.jp","ujitawara.kyoto.jp","wazuka.kyoto.jp","yamashina.kyoto.jp","yawata.kyoto.jp","asahi.mie.jp","inabe.mie.jp","ise.mie.jp","kameyama.mie.jp","kawagoe.mie.jp","kiho.mie.jp","kisosaki.mie.jp","kiwa.mie.jp","komono.mie.jp","kumano.mie.jp","kuwana.mie.jp","matsusaka.mie.jp","meiwa.mie.jp","mihama.mie.jp","minamiise.mie.jp","misugi.mie.jp","miyama.mie.jp","nabari.mie.jp","shima.mie.jp","suzuka.mie.jp","tado.mie.jp","taiki.mie.jp","taki.mie.jp","tamaki.mie.jp","toba.mie.jp","tsu.mie.jp","udono.mie.jp","ureshino.mie.jp","watarai.mie.jp","yokkaichi.mie.jp","furukawa.miyagi.jp","higashimatsushima.miyagi.jp","ishinomaki.miyagi.jp","iwanuma.miyagi.jp","kakuda.miyagi.jp","kami.miyagi.jp","kawasaki.miyagi.jp","marumori.miyagi.jp","matsushima.miyagi.jp","minamisanriku.miyagi.jp","misato.miyagi.jp","murata.miyagi.jp","natori.miyagi.jp","ogawara.miyagi.jp","ohira.miyagi.jp","onagawa.miyagi.jp","osaki.miyagi.jp","rifu.miyagi.jp","semine.miyagi.jp","shibata.miyagi.jp","shichikashuku.miyagi.jp","shikama.miyagi.jp","shiogama.miyagi.jp","shiroishi.miyagi.jp","tagajo.miyagi.jp","taiwa.miyagi.jp","tome.miyagi.jp","tomiya.miyagi.jp","wakuya.miyagi.jp","watari.miyagi.jp","yamamoto.miyagi.jp","zao.miyagi.jp","aya.miyazaki.jp","ebino.miyazaki.jp","gokase.miyazaki.jp","hyuga.miyazaki.jp","kadogawa.miyazaki.jp","kawaminami.miyazaki.jp","kijo.miyazaki.jp","kitagawa.miyazaki.jp","kitakata.miyazaki.jp","kitaura.miyazaki.jp","kobayashi.miyazaki.jp","kunitomi.miyazaki.jp","kushima.miyazaki.jp","mimata.miyazaki.jp","miyakonojo.miyazaki.jp","miyazaki.miyazaki.jp","morotsuka.miyazaki.jp","nichinan.miyazaki.jp","nishimera.miyazaki.jp","nobeoka.miyazaki.jp","saito.miyazaki.jp","shiiba.miyazaki.jp","shintomi.miyazaki.jp","takaharu.miyazaki.jp","takanabe.miyazaki.jp","takazaki.miyazaki.jp","tsuno.miyazaki.jp","achi.nagano.jp","agematsu.nagano.jp","anan.nagano.jp","aoki.nagano.jp","asahi.nagano.jp","azumino.nagano.jp","chikuhoku.nagano.jp","chikuma.nagano.jp","chino.nagano.jp","fujimi.nagano.jp","hakuba.nagano.jp","hara.nagano.jp","hiraya.nagano.jp","iida.nagano.jp","iijima.nagano.jp","iiyama.nagano.jp","iizuna.nagano.jp","ikeda.nagano.jp","ikusaka.nagano.jp","ina.nagano.jp","karuizawa.nagano.jp","kawakami.nagano.jp","kiso.nagano.jp","kisofukushima.nagano.jp","kitaaiki.nagano.jp","komagane.nagano.jp","komoro.nagano.jp","matsukawa.nagano.jp","matsumoto.nagano.jp","miasa.nagano.jp","minamiaiki.nagano.jp","minamimaki.nagano.jp","minamiminowa.nagano.jp","minowa.nagano.jp","miyada.nagano.jp","miyota.nagano.jp","mochizuki.nagano.jp","nagano.nagano.jp","nagawa.nagano.jp","nagiso.nagano.jp","nakagawa.nagano.jp","nakano.nagano.jp","nozawaonsen.nagano.jp","obuse.nagano.jp","ogawa.nagano.jp","okaya.nagano.jp","omachi.nagano.jp","omi.nagano.jp","ookuwa.nagano.jp","ooshika.nagano.jp","otaki.nagano.jp","otari.nagano.jp","sakae.nagano.jp","sakaki.nagano.jp","saku.nagano.jp","sakuho.nagano.jp","shimosuwa.nagano.jp","shinanomachi.nagano.jp","shiojiri.nagano.jp","suwa.nagano.jp","suzaka.nagano.jp","takagi.nagano.jp","takamori.nagano.jp","takayama.nagano.jp","tateshina.nagano.jp","tatsuno.nagano.jp","togakushi.nagano.jp","togura.nagano.jp","tomi.nagano.jp","ueda.nagano.jp","wada.nagano.jp","yamagata.nagano.jp","yamanouchi.nagano.jp","yasaka.nagano.jp","yasuoka.nagano.jp","chijiwa.nagasaki.jp","futsu.nagasaki.jp","goto.nagasaki.jp","hasami.nagasaki.jp","hirado.nagasaki.jp","iki.nagasaki.jp","isahaya.nagasaki.jp","kawatana.nagasaki.jp","kuchinotsu.nagasaki.jp","matsuura.nagasaki.jp","nagasaki.nagasaki.jp","obama.nagasaki.jp","omura.nagasaki.jp","oseto.nagasaki.jp","saikai.nagasaki.jp","sasebo.nagasaki.jp","seihi.nagasaki.jp","shimabara.nagasaki.jp","shinkamigoto.nagasaki.jp","togitsu.nagasaki.jp","tsushima.nagasaki.jp","unzen.nagasaki.jp","ando.nara.jp","gose.nara.jp","heguri.nara.jp","higashiyoshino.nara.jp","ikaruga.nara.jp","ikoma.nara.jp","kamikitayama.nara.jp","kanmaki.nara.jp","kashiba.nara.jp","kashihara.nara.jp","katsuragi.nara.jp","kawai.nara.jp","kawakami.nara.jp","kawanishi.nara.jp","koryo.nara.jp","kurotaki.nara.jp","mitsue.nara.jp","miyake.nara.jp","nara.nara.jp","nosegawa.nara.jp","oji.nara.jp","ouda.nara.jp","oyodo.nara.jp","sakurai.nara.jp","sango.nara.jp","shimoichi.nara.jp","shimokitayama.nara.jp","shinjo.nara.jp","soni.nara.jp","takatori.nara.jp","tawaramoto.nara.jp","tenkawa.nara.jp","tenri.nara.jp","uda.nara.jp","yamatokoriyama.nara.jp","yamatotakada.nara.jp","yamazoe.nara.jp","yoshino.nara.jp","aga.niigata.jp","agano.niigata.jp","gosen.niigata.jp","itoigawa.niigata.jp","izumozaki.niigata.jp","joetsu.niigata.jp","kamo.niigata.jp","kariwa.niigata.jp","kashiwazaki.niigata.jp","minamiuonuma.niigata.jp","mitsuke.niigata.jp","muika.niigata.jp","murakami.niigata.jp","myoko.niigata.jp","nagaoka.niigata.jp","niigata.niigata.jp","ojiya.niigata.jp","omi.niigata.jp","sado.niigata.jp","sanjo.niigata.jp","seiro.niigata.jp","seirou.niigata.jp","sekikawa.niigata.jp","shibata.niigata.jp","tagami.niigata.jp","tainai.niigata.jp","tochio.niigata.jp","tokamachi.niigata.jp","tsubame.niigata.jp","tsunan.niigata.jp","uonuma.niigata.jp","yahiko.niigata.jp","yoita.niigata.jp","yuzawa.niigata.jp","beppu.oita.jp","bungoono.oita.jp","bungotakada.oita.jp","hasama.oita.jp","hiji.oita.jp","himeshima.oita.jp","hita.oita.jp","kamitsue.oita.jp","kokonoe.oita.jp","kuju.oita.jp","kunisaki.oita.jp","kusu.oita.jp","oita.oita.jp","saiki.oita.jp","taketa.oita.jp","tsukumi.oita.jp","usa.oita.jp","usuki.oita.jp","yufu.oita.jp","akaiwa.okayama.jp","asakuchi.okayama.jp","bizen.okayama.jp","hayashima.okayama.jp","ibara.okayama.jp","kagamino.okayama.jp","kasaoka.okayama.jp","kibichuo.okayama.jp","kumenan.okayama.jp","kurashiki.okayama.jp","maniwa.okayama.jp","misaki.okayama.jp","nagi.okayama.jp","niimi.okayama.jp","nishiawakura.okayama.jp","okayama.okayama.jp","satosho.okayama.jp","setouchi.okayama.jp","shinjo.okayama.jp","shoo.okayama.jp","soja.okayama.jp","takahashi.okayama.jp","tamano.okayama.jp","tsuyama.okayama.jp","wake.okayama.jp","yakage.okayama.jp","aguni.okinawa.jp","ginowan.okinawa.jp","ginoza.okinawa.jp","gushikami.okinawa.jp","haebaru.okinawa.jp","higashi.okinawa.jp","hirara.okinawa.jp","iheya.okinawa.jp","ishigaki.okinawa.jp","ishikawa.okinawa.jp","itoman.okinawa.jp","izena.okinawa.jp","kadena.okinawa.jp","kin.okinawa.jp","kitadaito.okinawa.jp","kitanakagusuku.okinawa.jp","kumejima.okinawa.jp","kunigami.okinawa.jp","minamidaito.okinawa.jp","motobu.okinawa.jp","nago.okinawa.jp","naha.okinawa.jp","nakagusuku.okinawa.jp","nakijin.okinawa.jp","nanjo.okinawa.jp","nishihara.okinawa.jp","ogimi.okinawa.jp","okinawa.okinawa.jp","onna.okinawa.jp","shimoji.okinawa.jp","taketomi.okinawa.jp","tarama.okinawa.jp","tokashiki.okinawa.jp","tomigusuku.okinawa.jp","tonaki.okinawa.jp","urasoe.okinawa.jp","uruma.okinawa.jp","yaese.okinawa.jp","yomitan.okinawa.jp","yonabaru.okinawa.jp","yonaguni.okinawa.jp","zamami.okinawa.jp","abeno.osaka.jp","chihayaakasaka.osaka.jp","chuo.osaka.jp","daito.osaka.jp","fujiidera.osaka.jp","habikino.osaka.jp","hannan.osaka.jp","higashiosaka.osaka.jp","higashisumiyoshi.osaka.jp","higashiyodogawa.osaka.jp","hirakata.osaka.jp","ibaraki.osaka.jp","ikeda.osaka.jp","izumi.osaka.jp","izumiotsu.osaka.jp","izumisano.osaka.jp","kadoma.osaka.jp","kaizuka.osaka.jp","kanan.osaka.jp","kashiwara.osaka.jp","katano.osaka.jp","kawachinagano.osaka.jp","kishiwada.osaka.jp","kita.osaka.jp","kumatori.osaka.jp","matsubara.osaka.jp","minato.osaka.jp","minoh.osaka.jp","misaki.osaka.jp","moriguchi.osaka.jp","neyagawa.osaka.jp","nishi.osaka.jp","nose.osaka.jp","osakasayama.osaka.jp","sakai.osaka.jp","sayama.osaka.jp","sennan.osaka.jp","settsu.osaka.jp","shijonawate.osaka.jp","shimamoto.osaka.jp","suita.osaka.jp","tadaoka.osaka.jp","taishi.osaka.jp","tajiri.osaka.jp","takaishi.osaka.jp","takatsuki.osaka.jp","tondabayashi.osaka.jp","toyonaka.osaka.jp","toyono.osaka.jp","yao.osaka.jp","ariake.saga.jp","arita.saga.jp","fukudomi.saga.jp","genkai.saga.jp","hamatama.saga.jp","hizen.saga.jp","imari.saga.jp","kamimine.saga.jp","kanzaki.saga.jp","karatsu.saga.jp","kashima.saga.jp","kitagata.saga.jp","kitahata.saga.jp","kiyama.saga.jp","kouhoku.saga.jp","kyuragi.saga.jp","nishiarita.saga.jp","ogi.saga.jp","omachi.saga.jp","ouchi.saga.jp","saga.saga.jp","shiroishi.saga.jp","taku.saga.jp","tara.saga.jp","tosu.saga.jp","yoshinogari.saga.jp","arakawa.saitama.jp","asaka.saitama.jp","chichibu.saitama.jp","fujimi.saitama.jp","fujimino.saitama.jp","fukaya.saitama.jp","hanno.saitama.jp","hanyu.saitama.jp","hasuda.saitama.jp","hatogaya.saitama.jp","hatoyama.saitama.jp","hidaka.saitama.jp","higashichichibu.saitama.jp","higashimatsuyama.saitama.jp","honjo.saitama.jp","ina.saitama.jp","iruma.saitama.jp","iwatsuki.saitama.jp","kamiizumi.saitama.jp","kamikawa.saitama.jp","kamisato.saitama.jp","kasukabe.saitama.jp","kawagoe.saitama.jp","kawaguchi.saitama.jp","kawajima.saitama.jp","kazo.saitama.jp","kitamoto.saitama.jp","koshigaya.saitama.jp","kounosu.saitama.jp","kuki.saitama.jp","kumagaya.saitama.jp","matsubushi.saitama.jp","minano.saitama.jp","misato.saitama.jp","miyashiro.saitama.jp","miyoshi.saitama.jp","moroyama.saitama.jp","nagatoro.saitama.jp","namegawa.saitama.jp","niiza.saitama.jp","ogano.saitama.jp","ogawa.saitama.jp","ogose.saitama.jp","okegawa.saitama.jp","omiya.saitama.jp","otaki.saitama.jp","ranzan.saitama.jp","ryokami.saitama.jp","saitama.saitama.jp","sakado.saitama.jp","satte.saitama.jp","sayama.saitama.jp","shiki.saitama.jp","shiraoka.saitama.jp","soka.saitama.jp","sugito.saitama.jp","toda.saitama.jp","tokigawa.saitama.jp","tokorozawa.saitama.jp","tsurugashima.saitama.jp","urawa.saitama.jp","warabi.saitama.jp","yashio.saitama.jp","yokoze.saitama.jp","yono.saitama.jp","yorii.saitama.jp","yoshida.saitama.jp","yoshikawa.saitama.jp","yoshimi.saitama.jp","aisho.shiga.jp","gamo.shiga.jp","higashiomi.shiga.jp","hikone.shiga.jp","koka.shiga.jp","konan.shiga.jp","kosei.shiga.jp","koto.shiga.jp","kusatsu.shiga.jp","maibara.shiga.jp","moriyama.shiga.jp","nagahama.shiga.jp","nishiazai.shiga.jp","notogawa.shiga.jp","omihachiman.shiga.jp","otsu.shiga.jp","ritto.shiga.jp","ryuoh.shiga.jp","takashima.shiga.jp","takatsuki.shiga.jp","torahime.shiga.jp","toyosato.shiga.jp","yasu.shiga.jp","akagi.shimane.jp","ama.shimane.jp","gotsu.shimane.jp","hamada.shimane.jp","higashiizumo.shimane.jp","hikawa.shimane.jp","hikimi.shimane.jp","izumo.shimane.jp","kakinoki.shimane.jp","masuda.shimane.jp","matsue.shimane.jp","misato.shimane.jp","nishinoshima.shimane.jp","ohda.shimane.jp","okinoshima.shimane.jp","okuizumo.shimane.jp","shimane.shimane.jp","tamayu.shimane.jp","tsuwano.shimane.jp","unnan.shimane.jp","yakumo.shimane.jp","yasugi.shimane.jp","yatsuka.shimane.jp","arai.shizuoka.jp","atami.shizuoka.jp","fuji.shizuoka.jp","fujieda.shizuoka.jp","fujikawa.shizuoka.jp","fujinomiya.shizuoka.jp","fukuroi.shizuoka.jp","gotemba.shizuoka.jp","haibara.shizuoka.jp","hamamatsu.shizuoka.jp","higashiizu.shizuoka.jp","ito.shizuoka.jp","iwata.shizuoka.jp","izu.shizuoka.jp","izunokuni.shizuoka.jp","kakegawa.shizuoka.jp","kannami.shizuoka.jp","kawanehon.shizuoka.jp","kawazu.shizuoka.jp","kikugawa.shizuoka.jp","kosai.shizuoka.jp","makinohara.shizuoka.jp","matsuzaki.shizuoka.jp","minamiizu.shizuoka.jp","mishima.shizuoka.jp","morimachi.shizuoka.jp","nishiizu.shizuoka.jp","numazu.shizuoka.jp","omaezaki.shizuoka.jp","shimada.shizuoka.jp","shimizu.shizuoka.jp","shimoda.shizuoka.jp","shizuoka.shizuoka.jp","susono.shizuoka.jp","yaizu.shizuoka.jp","yoshida.shizuoka.jp","ashikaga.tochigi.jp","bato.tochigi.jp","haga.tochigi.jp","ichikai.tochigi.jp","iwafune.tochigi.jp","kaminokawa.tochigi.jp","kanuma.tochigi.jp","karasuyama.tochigi.jp","kuroiso.tochigi.jp","mashiko.tochigi.jp","mibu.tochigi.jp","moka.tochigi.jp","motegi.tochigi.jp","nasu.tochigi.jp","nasushiobara.tochigi.jp","nikko.tochigi.jp","nishikata.tochigi.jp","nogi.tochigi.jp","ohira.tochigi.jp","ohtawara.tochigi.jp","oyama.tochigi.jp","sakura.tochigi.jp","sano.tochigi.jp","shimotsuke.tochigi.jp","shioya.tochigi.jp","takanezawa.tochigi.jp","tochigi.tochigi.jp","tsuga.tochigi.jp","ujiie.tochigi.jp","utsunomiya.tochigi.jp","yaita.tochigi.jp","aizumi.tokushima.jp","anan.tokushima.jp","ichiba.tokushima.jp","itano.tokushima.jp","kainan.tokushima.jp","komatsushima.tokushima.jp","matsushige.tokushima.jp","mima.tokushima.jp","minami.tokushima.jp","miyoshi.tokushima.jp","mugi.tokushima.jp","nakagawa.tokushima.jp","naruto.tokushima.jp","sanagochi.tokushima.jp","shishikui.tokushima.jp","tokushima.tokushima.jp","wajiki.tokushima.jp","adachi.tokyo.jp","akiruno.tokyo.jp","akishima.tokyo.jp","aogashima.tokyo.jp","arakawa.tokyo.jp","bunkyo.tokyo.jp","chiyoda.tokyo.jp","chofu.tokyo.jp","chuo.tokyo.jp","edogawa.tokyo.jp","fuchu.tokyo.jp","fussa.tokyo.jp","hachijo.tokyo.jp","hachioji.tokyo.jp","hamura.tokyo.jp","higashikurume.tokyo.jp","higashimurayama.tokyo.jp","higashiyamato.tokyo.jp","hino.tokyo.jp","hinode.tokyo.jp","hinohara.tokyo.jp","inagi.tokyo.jp","itabashi.tokyo.jp","katsushika.tokyo.jp","kita.tokyo.jp","kiyose.tokyo.jp","kodaira.tokyo.jp","koganei.tokyo.jp","kokubunji.tokyo.jp","komae.tokyo.jp","koto.tokyo.jp","kouzushima.tokyo.jp","kunitachi.tokyo.jp","machida.tokyo.jp","meguro.tokyo.jp","minato.tokyo.jp","mitaka.tokyo.jp","mizuho.tokyo.jp","musashimurayama.tokyo.jp","musashino.tokyo.jp","nakano.tokyo.jp","nerima.tokyo.jp","ogasawara.tokyo.jp","okutama.tokyo.jp","ome.tokyo.jp","oshima.tokyo.jp","ota.tokyo.jp","setagaya.tokyo.jp","shibuya.tokyo.jp","shinagawa.tokyo.jp","shinjuku.tokyo.jp","suginami.tokyo.jp","sumida.tokyo.jp","tachikawa.tokyo.jp","taito.tokyo.jp","tama.tokyo.jp","toshima.tokyo.jp","chizu.tottori.jp","hino.tottori.jp","kawahara.tottori.jp","koge.tottori.jp","kotoura.tottori.jp","misasa.tottori.jp","nanbu.tottori.jp","nichinan.tottori.jp","sakaiminato.tottori.jp","tottori.tottori.jp","wakasa.tottori.jp","yazu.tottori.jp","yonago.tottori.jp","asahi.toyama.jp","fuchu.toyama.jp","fukumitsu.toyama.jp","funahashi.toyama.jp","himi.toyama.jp","imizu.toyama.jp","inami.toyama.jp","johana.toyama.jp","kamiichi.toyama.jp","kurobe.toyama.jp","nakaniikawa.toyama.jp","namerikawa.toyama.jp","nanto.toyama.jp","nyuzen.toyama.jp","oyabe.toyama.jp","taira.toyama.jp","takaoka.toyama.jp","tateyama.toyama.jp","toga.toyama.jp","tonami.toyama.jp","toyama.toyama.jp","unazuki.toyama.jp","uozu.toyama.jp","yamada.toyama.jp","arida.wakayama.jp","aridagawa.wakayama.jp","gobo.wakayama.jp","hashimoto.wakayama.jp","hidaka.wakayama.jp","hirogawa.wakayama.jp","inami.wakayama.jp","iwade.wakayama.jp","kainan.wakayama.jp","kamitonda.wakayama.jp","katsuragi.wakayama.jp","kimino.wakayama.jp","kinokawa.wakayama.jp","kitayama.wakayama.jp","koya.wakayama.jp","koza.wakayama.jp","kozagawa.wakayama.jp","kudoyama.wakayama.jp","kushimoto.wakayama.jp","mihama.wakayama.jp","misato.wakayama.jp","nachikatsuura.wakayama.jp","shingu.wakayama.jp","shirahama.wakayama.jp","taiji.wakayama.jp","tanabe.wakayama.jp","wakayama.wakayama.jp","yuasa.wakayama.jp","yura.wakayama.jp","asahi.yamagata.jp","funagata.yamagata.jp","higashine.yamagata.jp","iide.yamagata.jp","kahoku.yamagata.jp","kaminoyama.yamagata.jp","kaneyama.yamagata.jp","kawanishi.yamagata.jp","mamurogawa.yamagata.jp","mikawa.yamagata.jp","murayama.yamagata.jp","nagai.yamagata.jp","nakayama.yamagata.jp","nanyo.yamagata.jp","nishikawa.yamagata.jp","obanazawa.yamagata.jp","oe.yamagata.jp","oguni.yamagata.jp","ohkura.yamagata.jp","oishida.yamagata.jp","sagae.yamagata.jp","sakata.yamagata.jp","sakegawa.yamagata.jp","shinjo.yamagata.jp","shirataka.yamagata.jp","shonai.yamagata.jp","takahata.yamagata.jp","tendo.yamagata.jp","tozawa.yamagata.jp","tsuruoka.yamagata.jp","yamagata.yamagata.jp","yamanobe.yamagata.jp","yonezawa.yamagata.jp","yuza.yamagata.jp","abu.yamaguchi.jp","hagi.yamaguchi.jp","hikari.yamaguchi.jp","hofu.yamaguchi.jp","iwakuni.yamaguchi.jp","kudamatsu.yamaguchi.jp","mitou.yamaguchi.jp","nagato.yamaguchi.jp","oshima.yamaguchi.jp","shimonoseki.yamaguchi.jp","shunan.yamaguchi.jp","tabuse.yamaguchi.jp","tokuyama.yamaguchi.jp","toyota.yamaguchi.jp","ube.yamaguchi.jp","yuu.yamaguchi.jp","chuo.yamanashi.jp","doshi.yamanashi.jp","fuefuki.yamanashi.jp","fujikawa.yamanashi.jp","fujikawaguchiko.yamanashi.jp","fujiyoshida.yamanashi.jp","hayakawa.yamanashi.jp","hokuto.yamanashi.jp","ichikawamisato.yamanashi.jp","kai.yamanashi.jp","kofu.yamanashi.jp","koshu.yamanashi.jp","kosuge.yamanashi.jp","minami-alps.yamanashi.jp","minobu.yamanashi.jp","nakamichi.yamanashi.jp","nanbu.yamanashi.jp","narusawa.yamanashi.jp","nirasaki.yamanashi.jp","nishikatsura.yamanashi.jp","oshino.yamanashi.jp","otsuki.yamanashi.jp","showa.yamanashi.jp","tabayama.yamanashi.jp","tsuru.yamanashi.jp","uenohara.yamanashi.jp","yamanakako.yamanashi.jp","yamanashi.yamanashi.jp","ke","ac.ke","co.ke","go.ke","info.ke","me.ke","mobi.ke","ne.ke","or.ke","sc.ke","kg","org.kg","net.kg","com.kg","edu.kg","gov.kg","mil.kg","*.kh","ki","edu.ki","biz.ki","net.ki","org.ki","gov.ki","info.ki","com.ki","km","org.km","nom.km","gov.km","prd.km","tm.km","edu.km","mil.km","ass.km","com.km","coop.km","asso.km","presse.km","medecin.km","notaires.km","pharmaciens.km","veterinaire.km","gouv.km","kn","net.kn","org.kn","edu.kn","gov.kn","kp","com.kp","edu.kp","gov.kp","org.kp","rep.kp","tra.kp","kr","ac.kr","co.kr","es.kr","go.kr","hs.kr","kg.kr","mil.kr","ms.kr","ne.kr","or.kr","pe.kr","re.kr","sc.kr","busan.kr","chungbuk.kr","chungnam.kr","daegu.kr","daejeon.kr","gangwon.kr","gwangju.kr","gyeongbuk.kr","gyeonggi.kr","gyeongnam.kr","incheon.kr","jeju.kr","jeonbuk.kr","jeonnam.kr","seoul.kr","ulsan.kr","kw","com.kw","edu.kw","emb.kw","gov.kw","ind.kw","net.kw","org.kw","ky","edu.ky","gov.ky","com.ky","org.ky","net.ky","kz","org.kz","edu.kz","net.kz","gov.kz","mil.kz","com.kz","la","int.la","net.la","info.la","edu.la","gov.la","per.la","com.la","org.la","lb","com.lb","edu.lb","gov.lb","net.lb","org.lb","lc","com.lc","net.lc","co.lc","org.lc","edu.lc","gov.lc","li","lk","gov.lk","sch.lk","net.lk","int.lk","com.lk","org.lk","edu.lk","ngo.lk","soc.lk","web.lk","ltd.lk","assn.lk","grp.lk","hotel.lk","ac.lk","lr","com.lr","edu.lr","gov.lr","org.lr","net.lr","ls","ac.ls","biz.ls","co.ls","edu.ls","gov.ls","info.ls","net.ls","org.ls","sc.ls","lt","gov.lt","lu","lv","com.lv","edu.lv","gov.lv","org.lv","mil.lv","id.lv","net.lv","asn.lv","conf.lv","ly","com.ly","net.ly","gov.ly","plc.ly","edu.ly","sch.ly","med.ly","org.ly","id.ly","ma","co.ma","net.ma","gov.ma","org.ma","ac.ma","press.ma","mc","tm.mc","asso.mc","md","me","co.me","net.me","org.me","edu.me","ac.me","gov.me","its.me","priv.me","mg","org.mg","nom.mg","gov.mg","prd.mg","tm.mg","edu.mg","mil.mg","com.mg","co.mg","mh","mil","mk","com.mk","org.mk","net.mk","edu.mk","gov.mk","inf.mk","name.mk","ml","com.ml","edu.ml","gouv.ml","gov.ml","net.ml","org.ml","presse.ml","*.mm","mn","gov.mn","edu.mn","org.mn","mo","com.mo","net.mo","org.mo","edu.mo","gov.mo","mobi","mp","mq","mr","gov.mr","ms","com.ms","edu.ms","gov.ms","net.ms","org.ms","mt","com.mt","edu.mt","net.mt","org.mt","mu","com.mu","net.mu","org.mu","gov.mu","ac.mu","co.mu","or.mu","museum","academy.museum","agriculture.museum","air.museum","airguard.museum","alabama.museum","alaska.museum","amber.museum","ambulance.museum","american.museum","americana.museum","americanantiques.museum","americanart.museum","amsterdam.museum","and.museum","annefrank.museum","anthro.museum","anthropology.museum","antiques.museum","aquarium.museum","arboretum.museum","archaeological.museum","archaeology.museum","architecture.museum","art.museum","artanddesign.museum","artcenter.museum","artdeco.museum","arteducation.museum","artgallery.museum","arts.museum","artsandcrafts.museum","asmatart.museum","assassination.museum","assisi.museum","association.museum","astronomy.museum","atlanta.museum","austin.museum","australia.museum","automotive.museum","aviation.museum","axis.museum","badajoz.museum","baghdad.museum","bahn.museum","bale.museum","baltimore.museum","barcelona.museum","baseball.museum","basel.museum","baths.museum","bauern.museum","beauxarts.museum","beeldengeluid.museum","bellevue.museum","bergbau.museum","berkeley.museum","berlin.museum","bern.museum","bible.museum","bilbao.museum","bill.museum","birdart.museum","birthplace.museum","bonn.museum","boston.museum","botanical.museum","botanicalgarden.museum","botanicgarden.museum","botany.museum","brandywinevalley.museum","brasil.museum","bristol.museum","british.museum","britishcolumbia.museum","broadcast.museum","brunel.museum","brussel.museum","brussels.museum","bruxelles.museum","building.museum","burghof.museum","bus.museum","bushey.museum","cadaques.museum","california.museum","cambridge.museum","can.museum","canada.museum","capebreton.museum","carrier.museum","cartoonart.museum","casadelamoneda.museum","castle.museum","castres.museum","celtic.museum","center.museum","chattanooga.museum","cheltenham.museum","chesapeakebay.museum","chicago.museum","children.museum","childrens.museum","childrensgarden.museum","chiropractic.museum","chocolate.museum","christiansburg.museum","cincinnati.museum","cinema.museum","circus.museum","civilisation.museum","civilization.museum","civilwar.museum","clinton.museum","clock.museum","coal.museum","coastaldefence.museum","cody.museum","coldwar.museum","collection.museum","colonialwilliamsburg.museum","coloradoplateau.museum","columbia.museum","columbus.museum","communication.museum","communications.museum","community.museum","computer.museum","computerhistory.museum","comunicações.museum","contemporary.museum","contemporaryart.museum","convent.museum","copenhagen.museum","corporation.museum","correios-e-telecomunicações.museum","corvette.museum","costume.museum","countryestate.museum","county.museum","crafts.museum","cranbrook.museum","creation.museum","cultural.museum","culturalcenter.museum","culture.museum","cyber.museum","cymru.museum","dali.museum","dallas.museum","database.museum","ddr.museum","decorativearts.museum","delaware.museum","delmenhorst.museum","denmark.museum","depot.museum","design.museum","detroit.museum","dinosaur.museum","discovery.museum","dolls.museum","donostia.museum","durham.museum","eastafrica.museum","eastcoast.museum","education.museum","educational.museum","egyptian.museum","eisenbahn.museum","elburg.museum","elvendrell.museum","embroidery.museum","encyclopedic.museum","england.museum","entomology.museum","environment.museum","environmentalconservation.museum","epilepsy.museum","essex.museum","estate.museum","ethnology.museum","exeter.museum","exhibition.museum","family.museum","farm.museum","farmequipment.museum","farmers.museum","farmstead.museum","field.museum","figueres.museum","filatelia.museum","film.museum","fineart.museum","finearts.museum","finland.museum","flanders.museum","florida.museum","force.museum","fortmissoula.museum","fortworth.museum","foundation.museum","francaise.museum","frankfurt.museum","franziskaner.museum","freemasonry.museum","freiburg.museum","fribourg.museum","frog.museum","fundacio.museum","furniture.museum","gallery.museum","garden.museum","gateway.museum","geelvinck.museum","gemological.museum","geology.museum","georgia.museum","giessen.museum","glas.museum","glass.museum","gorge.museum","grandrapids.museum","graz.museum","guernsey.museum","halloffame.museum","hamburg.museum","handson.museum","harvestcelebration.museum","hawaii.museum","health.museum","heimatunduhren.museum","hellas.museum","helsinki.museum","hembygdsforbund.museum","heritage.museum","histoire.museum","historical.museum","historicalsociety.museum","historichouses.museum","historisch.museum","historisches.museum","history.museum","historyofscience.museum","horology.museum","house.museum","humanities.museum","illustration.museum","imageandsound.museum","indian.museum","indiana.museum","indianapolis.museum","indianmarket.museum","intelligence.museum","interactive.museum","iraq.museum","iron.museum","isleofman.museum","jamison.museum","jefferson.museum","jerusalem.museum","jewelry.museum","jewish.museum","jewishart.museum","jfk.museum","journalism.museum","judaica.museum","judygarland.museum","juedisches.museum","juif.museum","karate.museum","karikatur.museum","kids.museum","koebenhavn.museum","koeln.museum","kunst.museum","kunstsammlung.museum","kunstunddesign.museum","labor.museum","labour.museum","lajolla.museum","lancashire.museum","landes.museum","lans.museum","läns.museum","larsson.museum","lewismiller.museum","lincoln.museum","linz.museum","living.museum","livinghistory.museum","localhistory.museum","london.museum","losangeles.museum","louvre.museum","loyalist.museum","lucerne.museum","luxembourg.museum","luzern.museum","mad.museum","madrid.museum","mallorca.museum","manchester.museum","mansion.museum","mansions.museum","manx.museum","marburg.museum","maritime.museum","maritimo.museum","maryland.museum","marylhurst.museum","media.museum","medical.museum","medizinhistorisches.museum","meeres.museum","memorial.museum","mesaverde.museum","michigan.museum","midatlantic.museum","military.museum","mill.museum","miners.museum","mining.museum","minnesota.museum","missile.museum","missoula.museum","modern.museum","moma.museum","money.museum","monmouth.museum","monticello.museum","montreal.museum","moscow.museum","motorcycle.museum","muenchen.museum","muenster.museum","mulhouse.museum","muncie.museum","museet.museum","museumcenter.museum","museumvereniging.museum","music.museum","national.museum","nationalfirearms.museum","nationalheritage.museum","nativeamerican.museum","naturalhistory.museum","naturalhistorymuseum.museum","naturalsciences.museum","nature.museum","naturhistorisches.museum","natuurwetenschappen.museum","naumburg.museum","naval.museum","nebraska.museum","neues.museum","newhampshire.museum","newjersey.museum","newmexico.museum","newport.museum","newspaper.museum","newyork.museum","niepce.museum","norfolk.museum","north.museum","nrw.museum","nyc.museum","nyny.museum","oceanographic.museum","oceanographique.museum","omaha.museum","online.museum","ontario.museum","openair.museum","oregon.museum","oregontrail.museum","otago.museum","oxford.museum","pacific.museum","paderborn.museum","palace.museum","paleo.museum","palmsprings.museum","panama.museum","paris.museum","pasadena.museum","pharmacy.museum","philadelphia.museum","philadelphiaarea.museum","philately.museum","phoenix.museum","photography.museum","pilots.museum","pittsburgh.museum","planetarium.museum","plantation.museum","plants.museum","plaza.museum","portal.museum","portland.museum","portlligat.museum","posts-and-telecommunications.museum","preservation.museum","presidio.museum","press.museum","project.museum","public.museum","pubol.museum","quebec.museum","railroad.museum","railway.museum","research.museum","resistance.museum","riodejaneiro.museum","rochester.museum","rockart.museum","roma.museum","russia.museum","saintlouis.museum","salem.museum","salvadordali.museum","salzburg.museum","sandiego.museum","sanfrancisco.museum","santabarbara.museum","santacruz.museum","santafe.museum","saskatchewan.museum","satx.museum","savannahga.museum","schlesisches.museum","schoenbrunn.museum","schokoladen.museum","school.museum","schweiz.museum","science.museum","scienceandhistory.museum","scienceandindustry.museum","sciencecenter.museum","sciencecenters.museum","science-fiction.museum","sciencehistory.museum","sciences.museum","sciencesnaturelles.museum","scotland.museum","seaport.museum","settlement.museum","settlers.museum","shell.museum","sherbrooke.museum","sibenik.museum","silk.museum","ski.museum","skole.museum","society.museum","sologne.museum","soundandvision.museum","southcarolina.museum","southwest.museum","space.museum","spy.museum","square.museum","stadt.museum","stalbans.museum","starnberg.museum","state.museum","stateofdelaware.museum","station.museum","steam.museum","steiermark.museum","stjohn.museum","stockholm.museum","stpetersburg.museum","stuttgart.museum","suisse.museum","surgeonshall.museum","surrey.museum","svizzera.museum","sweden.museum","sydney.museum","tank.museum","tcm.museum","technology.museum","telekommunikation.museum","television.museum","texas.museum","textile.museum","theater.museum","time.museum","timekeeping.museum","topology.museum","torino.museum","touch.museum","town.museum","transport.museum","tree.museum","trolley.museum","trust.museum","trustee.museum","uhren.museum","ulm.museum","undersea.museum","university.museum","usa.museum","usantiques.museum","usarts.museum","uscountryestate.museum","usculture.museum","usdecorativearts.museum","usgarden.museum","ushistory.museum","ushuaia.museum","uslivinghistory.museum","utah.museum","uvic.museum","valley.museum","vantaa.museum","versailles.museum","viking.museum","village.museum","virginia.museum","virtual.museum","virtuel.museum","vlaanderen.museum","volkenkunde.museum","wales.museum","wallonie.museum","war.museum","washingtondc.museum","watchandclock.museum","watch-and-clock.museum","western.museum","westfalen.museum","whaling.museum","wildlife.museum","williamsburg.museum","windmill.museum","workshop.museum","york.museum","yorkshire.museum","yosemite.museum","youth.museum","zoological.museum","zoology.museum","ירושלים.museum","иком.museum","mv","aero.mv","biz.mv","com.mv","coop.mv","edu.mv","gov.mv","info.mv","int.mv","mil.mv","museum.mv","name.mv","net.mv","org.mv","pro.mv","mw","ac.mw","biz.mw","co.mw","com.mw","coop.mw","edu.mw","gov.mw","int.mw","museum.mw","net.mw","org.mw","mx","com.mx","org.mx","gob.mx","edu.mx","net.mx","my","com.my","net.my","org.my","gov.my","edu.my","mil.my","name.my","mz","ac.mz","adv.mz","co.mz","edu.mz","gov.mz","mil.mz","net.mz","org.mz","na","info.na","pro.na","name.na","school.na","or.na","dr.na","us.na","mx.na","ca.na","in.na","cc.na","tv.na","ws.na","mobi.na","co.na","com.na","org.na","name","nc","asso.nc","nom.nc","ne","net","nf","com.nf","net.nf","per.nf","rec.nf","web.nf","arts.nf","firm.nf","info.nf","other.nf","store.nf","ng","com.ng","edu.ng","gov.ng","i.ng","mil.ng","mobi.ng","name.ng","net.ng","org.ng","sch.ng","ni","ac.ni","biz.ni","co.ni","com.ni","edu.ni","gob.ni","in.ni","info.ni","int.ni","mil.ni","net.ni","nom.ni","org.ni","web.ni","nl","no","fhs.no","vgs.no","fylkesbibl.no","folkebibl.no","museum.no","idrett.no","priv.no","mil.no","stat.no","dep.no","kommune.no","herad.no","aa.no","ah.no","bu.no","fm.no","hl.no","hm.no","jan-mayen.no","mr.no","nl.no","nt.no","of.no","ol.no","oslo.no","rl.no","sf.no","st.no","svalbard.no","tm.no","tr.no","va.no","vf.no","gs.aa.no","gs.ah.no","gs.bu.no","gs.fm.no","gs.hl.no","gs.hm.no","gs.jan-mayen.no","gs.mr.no","gs.nl.no","gs.nt.no","gs.of.no","gs.ol.no","gs.oslo.no","gs.rl.no","gs.sf.no","gs.st.no","gs.svalbard.no","gs.tm.no","gs.tr.no","gs.va.no","gs.vf.no","akrehamn.no","åkrehamn.no","algard.no","ålgård.no","arna.no","brumunddal.no","bryne.no","bronnoysund.no","brønnøysund.no","drobak.no","drøbak.no","egersund.no","fetsund.no","floro.no","florø.no","fredrikstad.no","hokksund.no","honefoss.no","hønefoss.no","jessheim.no","jorpeland.no","jørpeland.no","kirkenes.no","kopervik.no","krokstadelva.no","langevag.no","langevåg.no","leirvik.no","mjondalen.no","mjøndalen.no","mo-i-rana.no","mosjoen.no","mosjøen.no","nesoddtangen.no","orkanger.no","osoyro.no","osøyro.no","raholt.no","råholt.no","sandnessjoen.no","sandnessjøen.no","skedsmokorset.no","slattum.no","spjelkavik.no","stathelle.no","stavern.no","stjordalshalsen.no","stjørdalshalsen.no","tananger.no","tranby.no","vossevangen.no","afjord.no","åfjord.no","agdenes.no","al.no","ål.no","alesund.no","ålesund.no","alstahaug.no","alta.no","áltá.no","alaheadju.no","álaheadju.no","alvdal.no","amli.no","åmli.no","amot.no","åmot.no","andebu.no","andoy.no","andøy.no","andasuolo.no","ardal.no","årdal.no","aremark.no","arendal.no","ås.no","aseral.no","åseral.no","asker.no","askim.no","askvoll.no","askoy.no","askøy.no","asnes.no","åsnes.no","audnedaln.no","aukra.no","aure.no","aurland.no","aurskog-holand.no","aurskog-høland.no","austevoll.no","austrheim.no","averoy.no","averøy.no","balestrand.no","ballangen.no","balat.no","bálát.no","balsfjord.no","bahccavuotna.no","báhccavuotna.no","bamble.no","bardu.no","beardu.no","beiarn.no","bajddar.no","bájddar.no","baidar.no","báidár.no","berg.no","bergen.no","berlevag.no","berlevåg.no","bearalvahki.no","bearalváhki.no","bindal.no","birkenes.no","bjarkoy.no","bjarkøy.no","bjerkreim.no","bjugn.no","bodo.no","bodø.no","badaddja.no","bådåddjå.no","budejju.no","bokn.no","bremanger.no","bronnoy.no","brønnøy.no","bygland.no","bykle.no","barum.no","bærum.no","bo.telemark.no","bø.telemark.no","bo.nordland.no","bø.nordland.no","bievat.no","bievát.no","bomlo.no","bømlo.no","batsfjord.no","båtsfjord.no","bahcavuotna.no","báhcavuotna.no","dovre.no","drammen.no","drangedal.no","dyroy.no","dyrøy.no","donna.no","dønna.no","eid.no","eidfjord.no","eidsberg.no","eidskog.no","eidsvoll.no","eigersund.no","elverum.no","enebakk.no","engerdal.no","etne.no","etnedal.no","evenes.no","evenassi.no","evenášši.no","evje-og-hornnes.no","farsund.no","fauske.no","fuossko.no","fuoisku.no","fedje.no","fet.no","finnoy.no","finnøy.no","fitjar.no","fjaler.no","fjell.no","flakstad.no","flatanger.no","flekkefjord.no","flesberg.no","flora.no","fla.no","flå.no","folldal.no","forsand.no","fosnes.no","frei.no","frogn.no","froland.no","frosta.no","frana.no","fræna.no","froya.no","frøya.no","fusa.no","fyresdal.no","forde.no","førde.no","gamvik.no","gangaviika.no","gáŋgaviika.no","gaular.no","gausdal.no","gildeskal.no","gildeskål.no","giske.no","gjemnes.no","gjerdrum.no","gjerstad.no","gjesdal.no","gjovik.no","gjøvik.no","gloppen.no","gol.no","gran.no","grane.no","granvin.no","gratangen.no","grimstad.no","grong.no","kraanghke.no","kråanghke.no","grue.no","gulen.no","hadsel.no","halden.no","halsa.no","hamar.no","hamaroy.no","habmer.no","hábmer.no","hapmir.no","hápmir.no","hammerfest.no","hammarfeasta.no","hámmárfeasta.no","haram.no","hareid.no","harstad.no","hasvik.no","aknoluokta.no","ákŋoluokta.no","hattfjelldal.no","aarborte.no","haugesund.no","hemne.no","hemnes.no","hemsedal.no","heroy.more-og-romsdal.no","herøy.møre-og-romsdal.no","heroy.nordland.no","herøy.nordland.no","hitra.no","hjartdal.no","hjelmeland.no","hobol.no","hobøl.no","hof.no","hol.no","hole.no","holmestrand.no","holtalen.no","holtålen.no","hornindal.no","horten.no","hurdal.no","hurum.no","hvaler.no","hyllestad.no","hagebostad.no","hægebostad.no","hoyanger.no","høyanger.no","hoylandet.no","høylandet.no","ha.no","hå.no","ibestad.no","inderoy.no","inderøy.no","iveland.no","jevnaker.no","jondal.no","jolster.no","jølster.no","karasjok.no","karasjohka.no","kárášjohka.no","karlsoy.no","galsa.no","gálsá.no","karmoy.no","karmøy.no","kautokeino.no","guovdageaidnu.no","klepp.no","klabu.no","klæbu.no","kongsberg.no","kongsvinger.no","kragero.no","kragerø.no","kristiansand.no","kristiansund.no","krodsherad.no","krødsherad.no","kvalsund.no","rahkkeravju.no","ráhkkerávju.no","kvam.no","kvinesdal.no","kvinnherad.no","kviteseid.no","kvitsoy.no","kvitsøy.no","kvafjord.no","kvæfjord.no","giehtavuoatna.no","kvanangen.no","kvænangen.no","navuotna.no","návuotna.no","kafjord.no","kåfjord.no","gaivuotna.no","gáivuotna.no","larvik.no","lavangen.no","lavagis.no","loabat.no","loabát.no","lebesby.no","davvesiida.no","leikanger.no","leirfjord.no","leka.no","leksvik.no","lenvik.no","leangaviika.no","leaŋgaviika.no","lesja.no","levanger.no","lier.no","lierne.no","lillehammer.no","lillesand.no","lindesnes.no","lindas.no","lindås.no","lom.no","loppa.no","lahppi.no","láhppi.no","lund.no","lunner.no","luroy.no","lurøy.no","luster.no","lyngdal.no","lyngen.no","ivgu.no","lardal.no","lerdal.no","lærdal.no","lodingen.no","lødingen.no","lorenskog.no","lørenskog.no","loten.no","løten.no","malvik.no","masoy.no","måsøy.no","muosat.no","muosát.no","mandal.no","marker.no","marnardal.no","masfjorden.no","meland.no","meldal.no","melhus.no","meloy.no","meløy.no","meraker.no","meråker.no","moareke.no","moåreke.no","midsund.no","midtre-gauldal.no","modalen.no","modum.no","molde.no","moskenes.no","moss.no","mosvik.no","malselv.no","målselv.no","malatvuopmi.no","málatvuopmi.no","namdalseid.no","aejrie.no","namsos.no","namsskogan.no","naamesjevuemie.no","nååmesjevuemie.no","laakesvuemie.no","nannestad.no","narvik.no","narviika.no","naustdal.no","nedre-eiker.no","nes.akershus.no","nes.buskerud.no","nesna.no","nesodden.no","nesseby.no","unjarga.no","unjárga.no","nesset.no","nissedal.no","nittedal.no","nord-aurdal.no","nord-fron.no","nord-odal.no","norddal.no","nordkapp.no","davvenjarga.no","davvenjárga.no","nordre-land.no","nordreisa.no","raisa.no","ráisa.no","nore-og-uvdal.no","notodden.no","naroy.no","nærøy.no","notteroy.no","nøtterøy.no","odda.no","oksnes.no","øksnes.no","oppdal.no","oppegard.no","oppegård.no","orkdal.no","orland.no","ørland.no","orskog.no","ørskog.no","orsta.no","ørsta.no","os.hedmark.no","os.hordaland.no","osen.no","osteroy.no","osterøy.no","ostre-toten.no","østre-toten.no","overhalla.no","ovre-eiker.no","øvre-eiker.no","oyer.no","øyer.no","oygarden.no","øygarden.no","oystre-slidre.no","øystre-slidre.no","porsanger.no","porsangu.no","porsáŋgu.no","porsgrunn.no","radoy.no","radøy.no","rakkestad.no","rana.no","ruovat.no","randaberg.no","rauma.no","rendalen.no","rennebu.no","rennesoy.no","rennesøy.no","rindal.no","ringebu.no","ringerike.no","ringsaker.no","rissa.no","risor.no","risør.no","roan.no","rollag.no","rygge.no","ralingen.no","rælingen.no","rodoy.no","rødøy.no","romskog.no","rømskog.no","roros.no","røros.no","rost.no","røst.no","royken.no","røyken.no","royrvik.no","røyrvik.no","rade.no","råde.no","salangen.no","siellak.no","saltdal.no","salat.no","sálát.no","sálat.no","samnanger.no","sande.more-og-romsdal.no","sande.møre-og-romsdal.no","sande.vestfold.no","sandefjord.no","sandnes.no","sandoy.no","sandøy.no","sarpsborg.no","sauda.no","sauherad.no","sel.no","selbu.no","selje.no","seljord.no","sigdal.no","siljan.no","sirdal.no","skaun.no","skedsmo.no","ski.no","skien.no","skiptvet.no","skjervoy.no","skjervøy.no","skierva.no","skiervá.no","skjak.no","skjåk.no","skodje.no","skanland.no","skånland.no","skanit.no","skánit.no","smola.no","smøla.no","snillfjord.no","snasa.no","snåsa.no","snoasa.no","snaase.no","snåase.no","sogndal.no","sokndal.no","sola.no","solund.no","songdalen.no","sortland.no","spydeberg.no","stange.no","stavanger.no","steigen.no","steinkjer.no","stjordal.no","stjørdal.no","stokke.no","stor-elvdal.no","stord.no","stordal.no","storfjord.no","omasvuotna.no","strand.no","stranda.no","stryn.no","sula.no","suldal.no","sund.no","sunndal.no","surnadal.no","sveio.no","svelvik.no","sykkylven.no","sogne.no","søgne.no","somna.no","sømna.no","sondre-land.no","søndre-land.no","sor-aurdal.no","sør-aurdal.no","sor-fron.no","sør-fron.no","sor-odal.no","sør-odal.no","sor-varanger.no","sør-varanger.no","matta-varjjat.no","mátta-várjjat.no","sorfold.no","sørfold.no","sorreisa.no","sørreisa.no","sorum.no","sørum.no","tana.no","deatnu.no","time.no","tingvoll.no","tinn.no","tjeldsund.no","dielddanuorri.no","tjome.no","tjøme.no","tokke.no","tolga.no","torsken.no","tranoy.no","tranøy.no","tromso.no","tromsø.no","tromsa.no","romsa.no","trondheim.no","troandin.no","trysil.no","trana.no","træna.no","trogstad.no","trøgstad.no","tvedestrand.no","tydal.no","tynset.no","tysfjord.no","divtasvuodna.no","divttasvuotna.no","tysnes.no","tysvar.no","tysvær.no","tonsberg.no","tønsberg.no","ullensaker.no","ullensvang.no","ulvik.no","utsira.no","vadso.no","vadsø.no","cahcesuolo.no","čáhcesuolo.no","vaksdal.no","valle.no","vang.no","vanylven.no","vardo.no","vardø.no","varggat.no","várggát.no","vefsn.no","vaapste.no","vega.no","vegarshei.no","vegårshei.no","vennesla.no","verdal.no","verran.no","vestby.no","vestnes.no","vestre-slidre.no","vestre-toten.no","vestvagoy.no","vestvågøy.no","vevelstad.no","vik.no","vikna.no","vindafjord.no","volda.no","voss.no","varoy.no","værøy.no","vagan.no","vågan.no","voagat.no","vagsoy.no","vågsøy.no","vaga.no","vågå.no","valer.ostfold.no","våler.østfold.no","valer.hedmark.no","våler.hedmark.no","*.np","nr","biz.nr","info.nr","gov.nr","edu.nr","org.nr","net.nr","com.nr","nu","nz","ac.nz","co.nz","cri.nz","geek.nz","gen.nz","govt.nz","health.nz","iwi.nz","kiwi.nz","maori.nz","mil.nz","māori.nz","net.nz","org.nz","parliament.nz","school.nz","om","co.om","com.om","edu.om","gov.om","med.om","museum.om","net.om","org.om","pro.om","onion","org","pa","ac.pa","gob.pa","com.pa","org.pa","sld.pa","edu.pa","net.pa","ing.pa","abo.pa","med.pa","nom.pa","pe","edu.pe","gob.pe","nom.pe","mil.pe","org.pe","com.pe","net.pe","pf","com.pf","org.pf","edu.pf","*.pg","ph","com.ph","net.ph","org.ph","gov.ph","edu.ph","ngo.ph","mil.ph","i.ph","pk","com.pk","net.pk","edu.pk","org.pk","fam.pk","biz.pk","web.pk","gov.pk","gob.pk","gok.pk","gon.pk","gop.pk","gos.pk","info.pk","pl","com.pl","net.pl","org.pl","aid.pl","agro.pl","atm.pl","auto.pl","biz.pl","edu.pl","gmina.pl","gsm.pl","info.pl","mail.pl","miasta.pl","media.pl","mil.pl","nieruchomosci.pl","nom.pl","pc.pl","powiat.pl","priv.pl","realestate.pl","rel.pl","sex.pl","shop.pl","sklep.pl","sos.pl","szkola.pl","targi.pl","tm.pl","tourism.pl","travel.pl","turystyka.pl","gov.pl","ap.gov.pl","ic.gov.pl","is.gov.pl","us.gov.pl","kmpsp.gov.pl","kppsp.gov.pl","kwpsp.gov.pl","psp.gov.pl","wskr.gov.pl","kwp.gov.pl","mw.gov.pl","ug.gov.pl","um.gov.pl","umig.gov.pl","ugim.gov.pl","upow.gov.pl","uw.gov.pl","starostwo.gov.pl","pa.gov.pl","po.gov.pl","psse.gov.pl","pup.gov.pl","rzgw.gov.pl","sa.gov.pl","so.gov.pl","sr.gov.pl","wsa.gov.pl","sko.gov.pl","uzs.gov.pl","wiih.gov.pl","winb.gov.pl","pinb.gov.pl","wios.gov.pl","witd.gov.pl","wzmiuw.gov.pl","piw.gov.pl","wiw.gov.pl","griw.gov.pl","wif.gov.pl","oum.gov.pl","sdn.gov.pl","zp.gov.pl","uppo.gov.pl","mup.gov.pl","wuoz.gov.pl","konsulat.gov.pl","oirm.gov.pl","augustow.pl","babia-gora.pl","bedzin.pl","beskidy.pl","bialowieza.pl","bialystok.pl","bielawa.pl","bieszczady.pl","boleslawiec.pl","bydgoszcz.pl","bytom.pl","cieszyn.pl","czeladz.pl","czest.pl","dlugoleka.pl","elblag.pl","elk.pl","glogow.pl","gniezno.pl","gorlice.pl","grajewo.pl","ilawa.pl","jaworzno.pl","jelenia-gora.pl","jgora.pl","kalisz.pl","kazimierz-dolny.pl","karpacz.pl","kartuzy.pl","kaszuby.pl","katowice.pl","kepno.pl","ketrzyn.pl","klodzko.pl","kobierzyce.pl","kolobrzeg.pl","konin.pl","konskowola.pl","kutno.pl","lapy.pl","lebork.pl","legnica.pl","lezajsk.pl","limanowa.pl","lomza.pl","lowicz.pl","lubin.pl","lukow.pl","malbork.pl","malopolska.pl","mazowsze.pl","mazury.pl","mielec.pl","mielno.pl","mragowo.pl","naklo.pl","nowaruda.pl","nysa.pl","olawa.pl","olecko.pl","olkusz.pl","olsztyn.pl","opoczno.pl","opole.pl","ostroda.pl","ostroleka.pl","ostrowiec.pl","ostrowwlkp.pl","pila.pl","pisz.pl","podhale.pl","podlasie.pl","polkowice.pl","pomorze.pl","pomorskie.pl","prochowice.pl","pruszkow.pl","przeworsk.pl","pulawy.pl","radom.pl","rawa-maz.pl","rybnik.pl","rzeszow.pl","sanok.pl","sejny.pl","slask.pl","slupsk.pl","sosnowiec.pl","stalowa-wola.pl","skoczow.pl","starachowice.pl","stargard.pl","suwalki.pl","swidnica.pl","swiebodzin.pl","swinoujscie.pl","szczecin.pl","szczytno.pl","tarnobrzeg.pl","tgory.pl","turek.pl","tychy.pl","ustka.pl","walbrzych.pl","warmia.pl","warszawa.pl","waw.pl","wegrow.pl","wielun.pl","wlocl.pl","wloclawek.pl","wodzislaw.pl","wolomin.pl","wroclaw.pl","zachpomor.pl","zagan.pl","zarow.pl","zgora.pl","zgorzelec.pl","pm","pn","gov.pn","co.pn","org.pn","edu.pn","net.pn","post","pr","com.pr","net.pr","org.pr","gov.pr","edu.pr","isla.pr","pro.pr","biz.pr","info.pr","name.pr","est.pr","prof.pr","ac.pr","pro","aaa.pro","aca.pro","acct.pro","avocat.pro","bar.pro","cpa.pro","eng.pro","jur.pro","law.pro","med.pro","recht.pro","ps","edu.ps","gov.ps","sec.ps","plo.ps","com.ps","org.ps","net.ps","pt","net.pt","gov.pt","org.pt","edu.pt","int.pt","publ.pt","com.pt","nome.pt","pw","co.pw","ne.pw","or.pw","ed.pw","go.pw","belau.pw","py","com.py","coop.py","edu.py","gov.py","mil.py","net.py","org.py","qa","com.qa","edu.qa","gov.qa","mil.qa","name.qa","net.qa","org.qa","sch.qa","re","asso.re","com.re","nom.re","ro","arts.ro","com.ro","firm.ro","info.ro","nom.ro","nt.ro","org.ro","rec.ro","store.ro","tm.ro","www.ro","rs","ac.rs","co.rs","edu.rs","gov.rs","in.rs","org.rs","ru","rw","ac.rw","co.rw","coop.rw","gov.rw","mil.rw","net.rw","org.rw","sa","com.sa","net.sa","org.sa","gov.sa","med.sa","pub.sa","edu.sa","sch.sa","sb","com.sb","edu.sb","gov.sb","net.sb","org.sb","sc","com.sc","gov.sc","net.sc","org.sc","edu.sc","sd","com.sd","net.sd","org.sd","edu.sd","med.sd","tv.sd","gov.sd","info.sd","se","a.se","ac.se","b.se","bd.se","brand.se","c.se","d.se","e.se","f.se","fh.se","fhsk.se","fhv.se","g.se","h.se","i.se","k.se","komforb.se","kommunalforbund.se","komvux.se","l.se","lanbib.se","m.se","n.se","naturbruksgymn.se","o.se","org.se","p.se","parti.se","pp.se","press.se","r.se","s.se","t.se","tm.se","u.se","w.se","x.se","y.se","z.se","sg","com.sg","net.sg","org.sg","gov.sg","edu.sg","per.sg","sh","com.sh","net.sh","gov.sh","org.sh","mil.sh","si","sj","sk","sl","com.sl","net.sl","edu.sl","gov.sl","org.sl","sm","sn","art.sn","com.sn","edu.sn","gouv.sn","org.sn","perso.sn","univ.sn","so","com.so","edu.so","gov.so","me.so","net.so","org.so","sr","ss","biz.ss","com.ss","edu.ss","gov.ss","net.ss","org.ss","st","co.st","com.st","consulado.st","edu.st","embaixada.st","gov.st","mil.st","net.st","org.st","principe.st","saotome.st","store.st","su","sv","com.sv","edu.sv","gob.sv","org.sv","red.sv","sx","gov.sx","sy","edu.sy","gov.sy","net.sy","mil.sy","com.sy","org.sy","sz","co.sz","ac.sz","org.sz","tc","td","tel","tf","tg","th","ac.th","co.th","go.th","in.th","mi.th","net.th","or.th","tj","ac.tj","biz.tj","co.tj","com.tj","edu.tj","go.tj","gov.tj","int.tj","mil.tj","name.tj","net.tj","nic.tj","org.tj","test.tj","web.tj","tk","tl","gov.tl","tm","com.tm","co.tm","org.tm","net.tm","nom.tm","gov.tm","mil.tm","edu.tm","tn","com.tn","ens.tn","fin.tn","gov.tn","ind.tn","intl.tn","nat.tn","net.tn","org.tn","info.tn","perso.tn","tourism.tn","edunet.tn","rnrt.tn","rns.tn","rnu.tn","mincom.tn","agrinet.tn","defense.tn","turen.tn","to","com.to","gov.to","net.to","org.to","edu.to","mil.to","tr","av.tr","bbs.tr","bel.tr","biz.tr","com.tr","dr.tr","edu.tr","gen.tr","gov.tr","info.tr","mil.tr","k12.tr","kep.tr","name.tr","net.tr","org.tr","pol.tr","tel.tr","tsk.tr","tv.tr","web.tr","nc.tr","gov.nc.tr","tt","co.tt","com.tt","org.tt","net.tt","biz.tt","info.tt","pro.tt","int.tt","coop.tt","jobs.tt","mobi.tt","travel.tt","museum.tt","aero.tt","name.tt","gov.tt","edu.tt","tv","tw","edu.tw","gov.tw","mil.tw","com.tw","net.tw","org.tw","idv.tw","game.tw","ebiz.tw","club.tw","網路.tw","組織.tw","商業.tw","tz","ac.tz","co.tz","go.tz","hotel.tz","info.tz","me.tz","mil.tz","mobi.tz","ne.tz","or.tz","sc.tz","tv.tz","ua","com.ua","edu.ua","gov.ua","in.ua","net.ua","org.ua","cherkassy.ua","cherkasy.ua","chernigov.ua","chernihiv.ua","chernivtsi.ua","chernovtsy.ua","ck.ua","cn.ua","cr.ua","crimea.ua","cv.ua","dn.ua","dnepropetrovsk.ua","dnipropetrovsk.ua","dominic.ua","donetsk.ua","dp.ua","if.ua","ivano-frankivsk.ua","kh.ua","kharkiv.ua","kharkov.ua","kherson.ua","khmelnitskiy.ua","khmelnytskyi.ua","kiev.ua","kirovograd.ua","km.ua","kr.ua","krym.ua","ks.ua","kv.ua","kyiv.ua","lg.ua","lt.ua","lugansk.ua","lutsk.ua","lv.ua","lviv.ua","mk.ua","mykolaiv.ua","nikolaev.ua","od.ua","odesa.ua","odessa.ua","pl.ua","poltava.ua","rivne.ua","rovno.ua","rv.ua","sb.ua","sebastopol.ua","sevastopol.ua","sm.ua","sumy.ua","te.ua","ternopil.ua","uz.ua","uzhgorod.ua","vinnica.ua","vinnytsia.ua","vn.ua","volyn.ua","yalta.ua","zaporizhzhe.ua","zaporizhzhia.ua","zhitomir.ua","zhytomyr.ua","zp.ua","zt.ua","ug","co.ug","or.ug","ac.ug","sc.ug","go.ug","ne.ug","com.ug","org.ug","uk","ac.uk","co.uk","gov.uk","ltd.uk","me.uk","net.uk","nhs.uk","org.uk","plc.uk","police.uk","*.sch.uk","us","dni.us","fed.us","isa.us","kids.us","nsn.us","ak.us","al.us","ar.us","as.us","az.us","ca.us","co.us","ct.us","dc.us","de.us","fl.us","ga.us","gu.us","hi.us","ia.us","id.us","il.us","in.us","ks.us","ky.us","la.us","ma.us","md.us","me.us","mi.us","mn.us","mo.us","ms.us","mt.us","nc.us","nd.us","ne.us","nh.us","nj.us","nm.us","nv.us","ny.us","oh.us","ok.us","or.us","pa.us","pr.us","ri.us","sc.us","sd.us","tn.us","tx.us","ut.us","vi.us","vt.us","va.us","wa.us","wi.us","wv.us","wy.us","k12.ak.us","k12.al.us","k12.ar.us","k12.as.us","k12.az.us","k12.ca.us","k12.co.us","k12.ct.us","k12.dc.us","k12.de.us","k12.fl.us","k12.ga.us","k12.gu.us","k12.ia.us","k12.id.us","k12.il.us","k12.in.us","k12.ks.us","k12.ky.us","k12.la.us","k12.ma.us","k12.md.us","k12.me.us","k12.mi.us","k12.mn.us","k12.mo.us","k12.ms.us","k12.mt.us","k12.nc.us","k12.ne.us","k12.nh.us","k12.nj.us","k12.nm.us","k12.nv.us","k12.ny.us","k12.oh.us","k12.ok.us","k12.or.us","k12.pa.us","k12.pr.us","k12.ri.us","k12.sc.us","k12.tn.us","k12.tx.us","k12.ut.us","k12.vi.us","k12.vt.us","k12.va.us","k12.wa.us","k12.wi.us","k12.wy.us","cc.ak.us","cc.al.us","cc.ar.us","cc.as.us","cc.az.us","cc.ca.us","cc.co.us","cc.ct.us","cc.dc.us","cc.de.us","cc.fl.us","cc.ga.us","cc.gu.us","cc.hi.us","cc.ia.us","cc.id.us","cc.il.us","cc.in.us","cc.ks.us","cc.ky.us","cc.la.us","cc.ma.us","cc.md.us","cc.me.us","cc.mi.us","cc.mn.us","cc.mo.us","cc.ms.us","cc.mt.us","cc.nc.us","cc.nd.us","cc.ne.us","cc.nh.us","cc.nj.us","cc.nm.us","cc.nv.us","cc.ny.us","cc.oh.us","cc.ok.us","cc.or.us","cc.pa.us","cc.pr.us","cc.ri.us","cc.sc.us","cc.sd.us","cc.tn.us","cc.tx.us","cc.ut.us","cc.vi.us","cc.vt.us","cc.va.us","cc.wa.us","cc.wi.us","cc.wv.us","cc.wy.us","lib.ak.us","lib.al.us","lib.ar.us","lib.as.us","lib.az.us","lib.ca.us","lib.co.us","lib.ct.us","lib.dc.us","lib.fl.us","lib.ga.us","lib.gu.us","lib.hi.us","lib.ia.us","lib.id.us","lib.il.us","lib.in.us","lib.ks.us","lib.ky.us","lib.la.us","lib.ma.us","lib.md.us","lib.me.us","lib.mi.us","lib.mn.us","lib.mo.us","lib.ms.us","lib.mt.us","lib.nc.us","lib.nd.us","lib.ne.us","lib.nh.us","lib.nj.us","lib.nm.us","lib.nv.us","lib.ny.us","lib.oh.us","lib.ok.us","lib.or.us","lib.pa.us","lib.pr.us","lib.ri.us","lib.sc.us","lib.sd.us","lib.tn.us","lib.tx.us","lib.ut.us","lib.vi.us","lib.vt.us","lib.va.us","lib.wa.us","lib.wi.us","lib.wy.us","pvt.k12.ma.us","chtr.k12.ma.us","paroch.k12.ma.us","ann-arbor.mi.us","cog.mi.us","dst.mi.us","eaton.mi.us","gen.mi.us","mus.mi.us","tec.mi.us","washtenaw.mi.us","uy","com.uy","edu.uy","gub.uy","mil.uy","net.uy","org.uy","uz","co.uz","com.uz","net.uz","org.uz","va","vc","com.vc","net.vc","org.vc","gov.vc","mil.vc","edu.vc","ve","arts.ve","co.ve","com.ve","e12.ve","edu.ve","firm.ve","gob.ve","gov.ve","info.ve","int.ve","mil.ve","net.ve","org.ve","rec.ve","store.ve","tec.ve","web.ve","vg","vi","co.vi","com.vi","k12.vi","net.vi","org.vi","vn","com.vn","net.vn","org.vn","edu.vn","gov.vn","int.vn","ac.vn","biz.vn","info.vn","name.vn","pro.vn","health.vn","vu","com.vu","edu.vu","net.vu","org.vu","wf","ws","com.ws","net.ws","org.ws","gov.ws","edu.ws","yt","امارات","հայ","বাংলা","бг","бел","中国","中國","الجزائر","مصر","ею","ευ","موريتانيا","გე","ελ","香港","公司.香港","教育.香港","政府.香港","個人.香港","網絡.香港","組織.香港","ಭಾರತ","ଭାରତ","ভাৰত","भारतम्","भारोत","ڀارت","ഭാരതം","भारत","بارت","بھارت","భారత్","ભારત","ਭਾਰਤ","ভারত","இந்தியா","ایران","ايران","عراق","الاردن","한국","қаз","ලංකා","இலங்கை","المغرب","мкд","мон","澳門","澳门","مليسيا","عمان","پاکستان","پاكستان","فلسطين","срб","пр.срб","орг.срб","обр.срб","од.срб","упр.срб","ак.срб","рф","قطر","السعودية","السعودیة","السعودیۃ","السعوديه","سودان","新加坡","சிங்கப்பூர்","سورية","سوريا","ไทย","ศึกษา.ไทย","ธุรกิจ.ไทย","รัฐบาล.ไทย","ทหาร.ไทย","เน็ต.ไทย","องค์กร.ไทย","تونس","台灣","台湾","臺灣","укр","اليمن","xxx","*.ye","ac.za","agric.za","alt.za","co.za","edu.za","gov.za","grondar.za","law.za","mil.za","net.za","ngo.za","nic.za","nis.za","nom.za","org.za","school.za","tm.za","web.za","zm","ac.zm","biz.zm","co.zm","com.zm","edu.zm","gov.zm","info.zm","mil.zm","net.zm","org.zm","sch.zm","zw","ac.zw","co.zw","gov.zw","mil.zw","org.zw","aaa","aarp","abarth","abb","abbott","abbvie","abc","able","abogado","abudhabi","academy","accenture","accountant","accountants","aco","actor","adac","ads","adult","aeg","aetna","afamilycompany","afl","africa","agakhan","agency","aig","aigo","airbus","airforce","airtel","akdn","alfaromeo","alibaba","alipay","allfinanz","allstate","ally","alsace","alstom","amazon","americanexpress","americanfamily","amex","amfam","amica","amsterdam","analytics","android","anquan","anz","aol","apartments","app","apple","aquarelle","arab","aramco","archi","army","art","arte","asda","associates","athleta","attorney","auction","audi","audible","audio","auspost","author","auto","autos","avianca","aws","axa","azure","baby","baidu","banamex","bananarepublic","band","bank","bar","barcelona","barclaycard","barclays","barefoot","bargains","baseball","basketball","bauhaus","bayern","bbc","bbt","bbva","bcg","bcn","beats","beauty","beer","bentley","berlin","best","bestbuy","bet","bharti","bible","bid","bike","bing","bingo","bio","black","blackfriday","blockbuster","blog","bloomberg","blue","bms","bmw","bnpparibas","boats","boehringer","bofa","bom","bond","boo","book","booking","bosch","bostik","boston","bot","boutique","box","bradesco","bridgestone","broadway","broker","brother","brussels","budapest","bugatti","build","builders","business","buy","buzz","bzh","cab","cafe","cal","call","calvinklein","cam","camera","camp","cancerresearch","canon","capetown","capital","capitalone","car","caravan","cards","care","career","careers","cars","casa","case","caseih","cash","casino","catering","catholic","cba","cbn","cbre","cbs","ceb","center","ceo","cern","cfa","cfd","chanel","channel","charity","chase","chat","cheap","chintai","christmas","chrome","church","cipriani","circle","cisco","citadel","citi","citic","city","cityeats","claims","cleaning","click","clinic","clinique","clothing","cloud","club","clubmed","coach","codes","coffee","college","cologne","comcast","commbank","community","company","compare","computer","comsec","condos","construction","consulting","contact","contractors","cooking","cookingchannel","cool","corsica","country","coupon","coupons","courses","cpa","credit","creditcard","creditunion","cricket","crown","crs","cruise","cruises","csc","cuisinella","cymru","cyou","dabur","dad","dance","data","date","dating","datsun","day","dclk","dds","deal","dealer","deals","degree","delivery","dell","deloitte","delta","democrat","dental","dentist","desi","design","dev","dhl","diamonds","diet","digital","direct","directory","discount","discover","dish","diy","dnp","docs","doctor","dog","domains","dot","download","drive","dtv","dubai","duck","dunlop","dupont","durban","dvag","dvr","earth","eat","eco","edeka","education","email","emerck","energy","engineer","engineering","enterprises","epson","equipment","ericsson","erni","esq","estate","esurance","etisalat","eurovision","eus","events","exchange","expert","exposed","express","extraspace","fage","fail","fairwinds","faith","family","fan","fans","farm","farmers","fashion","fast","fedex","feedback","ferrari","ferrero","fiat","fidelity","fido","film","final","finance","financial","fire","firestone","firmdale","fish","fishing","fit","fitness","flickr","flights","flir","florist","flowers","fly","foo","food","foodnetwork","football","ford","forex","forsale","forum","foundation","fox","free","fresenius","frl","frogans","frontdoor","frontier","ftr","fujitsu","fujixerox","fun","fund","furniture","futbol","fyi","gal","gallery","gallo","gallup","game","games","gap","garden","gay","gbiz","gdn","gea","gent","genting","george","ggee","gift","gifts","gives","giving","glade","glass","gle","global","globo","gmail","gmbh","gmo","gmx","godaddy","gold","goldpoint","golf","goo","goodyear","goog","google","gop","got","grainger","graphics","gratis","green","gripe","grocery","group","guardian","gucci","guge","guide","guitars","guru","hair","hamburg","hangout","haus","hbo","hdfc","hdfcbank","health","healthcare","help","helsinki","here","hermes","hgtv","hiphop","hisamitsu","hitachi","hiv","hkt","hockey","holdings","holiday","homedepot","homegoods","homes","homesense","honda","horse","hospital","host","hosting","hot","hoteles","hotels","hotmail","house","how","hsbc","hughes","hyatt","hyundai","ibm","icbc","ice","icu","ieee","ifm","ikano","imamat","imdb","immo","immobilien","inc","industries","infiniti","ing","ink","institute","insurance","insure","intel","international","intuit","investments","ipiranga","irish","ismaili","ist","istanbul","itau","itv","iveco","jaguar","java","jcb","jcp","jeep","jetzt","jewelry","jio","jll","jmp","jnj","joburg","jot","joy","jpmorgan","jprs","juegos","juniper","kaufen","kddi","kerryhotels","kerrylogistics","kerryproperties","kfh","kia","kim","kinder","kindle","kitchen","kiwi","koeln","komatsu","kosher","kpmg","kpn","krd","kred","kuokgroup","kyoto","lacaixa","lamborghini","lamer","lancaster","lancia","land","landrover","lanxess","lasalle","lat","latino","latrobe","law","lawyer","lds","lease","leclerc","lefrak","legal","lego","lexus","lgbt","lidl","life","lifeinsurance","lifestyle","lighting","like","lilly","limited","limo","lincoln","linde","link","lipsy","live","living","lixil","llc","llp","loan","loans","locker","locus","loft","lol","london","lotte","lotto","love","lpl","lplfinancial","ltd","ltda","lundbeck","lupin","luxe","luxury","macys","madrid","maif","maison","makeup","man","management","mango","map","market","marketing","markets","marriott","marshalls","maserati","mattel","mba","mckinsey","med","media","meet","melbourne","meme","memorial","men","menu","merckmsd","metlife","miami","microsoft","mini","mint","mit","mitsubishi","mlb","mls","mma","mobile","moda","moe","moi","mom","monash","money","monster","mormon","mortgage","moscow","moto","motorcycles","mov","movie","msd","mtn","mtr","mutual","nab","nadex","nagoya","nationwide","natura","navy","nba","nec","netbank","netflix","network","neustar","new","newholland","news","next","nextdirect","nexus","nfl","ngo","nhk","nico","nike","nikon","ninja","nissan","nissay","nokia","northwesternmutual","norton","now","nowruz","nowtv","nra","nrw","ntt","nyc","obi","observer","off","office","okinawa","olayan","olayangroup","oldnavy","ollo","omega","one","ong","onl","online","onyourside","ooo","open","oracle","orange","organic","origins","osaka","otsuka","ott","ovh","page","panasonic","paris","pars","partners","parts","party","passagens","pay","pccw","pet","pfizer","pharmacy","phd","philips","phone","photo","photography","photos","physio","pics","pictet","pictures","pid","pin","ping","pink","pioneer","pizza","place","play","playstation","plumbing","plus","pnc","pohl","poker","politie","porn","pramerica","praxi","press","prime","prod","productions","prof","progressive","promo","properties","property","protection","pru","prudential","pub","pwc","qpon","quebec","quest","qvc","racing","radio","raid","read","realestate","realtor","realty","recipes","red","redstone","redumbrella","rehab","reise","reisen","reit","reliance","ren","rent","rentals","repair","report","republican","rest","restaurant","review","reviews","rexroth","rich","richardli","ricoh","rightathome","ril","rio","rip","rmit","rocher","rocks","rodeo","rogers","room","rsvp","rugby","ruhr","run","rwe","ryukyu","saarland","safe","safety","sakura","sale","salon","samsclub","samsung","sandvik","sandvikcoromant","sanofi","sap","sarl","sas","save","saxo","sbi","sbs","sca","scb","schaeffler","schmidt","scholarships","school","schule","schwarz","science","scjohnson","scor","scot","search","seat","secure","security","seek","select","sener","services","ses","seven","sew","sex","sexy","sfr","shangrila","sharp","shaw","shell","shia","shiksha","shoes","shop","shopping","shouji","show","showtime","shriram","silk","sina","singles","site","ski","skin","sky","skype","sling","smart","smile","sncf","soccer","social","softbank","software","sohu","solar","solutions","song","sony","soy","spa","space","sport","spot","spreadbetting","srl","stada","staples","star","statebank","statefarm","stc","stcgroup","stockholm","storage","store","stream","studio","study","style","sucks","supplies","supply","support","surf","surgery","suzuki","swatch","swiftcover","swiss","sydney","symantec","systems","tab","taipei","talk","taobao","target","tatamotors","tatar","tattoo","tax","taxi","tci","tdk","team","tech","technology","temasek","tennis","teva","thd","theater","theatre","tiaa","tickets","tienda","tiffany","tips","tires","tirol","tjmaxx","tjx","tkmaxx","tmall","today","tokyo","tools","top","toray","toshiba","total","tours","town","toyota","toys","trade","trading","training","travel","travelchannel","travelers","travelersinsurance","trust","trv","tube","tui","tunes","tushu","tvs","ubank","ubs","unicom","university","uno","uol","ups","vacations","vana","vanguard","vegas","ventures","verisign","versicherung","vet","viajes","video","vig","viking","villas","vin","vip","virgin","visa","vision","viva","vivo","vlaanderen","vodka","volkswagen","volvo","vote","voting","voto","voyage","vuelos","wales","walmart","walter","wang","wanggou","watch","watches","weather","weatherchannel","webcam","weber","website","wed","wedding","weibo","weir","whoswho","wien","wiki","williamhill","win","windows","wine","winners","wme","wolterskluwer","woodside","work","works","world","wow","wtc","wtf","xbox","xerox","xfinity","xihuan","xin","कॉम","セール","佛山","慈善","集团","在线","大众汽车","点看","คอม","八卦","موقع","公益","公司","香格里拉","网站","移动","我爱你","москва","католик","онлайн","сайт","联通","קום","时尚","微博","淡马锡","ファッション","орг","नेट","ストア","アマゾン","삼성","商标","商店","商城","дети","ポイント","新闻","工行","家電","كوم","中文网","中信","娱乐","谷歌","電訊盈科","购物","クラウド","通販","网店","संगठन","餐厅","网络","ком","亚马逊","诺基亚","食品","飞利浦","手表","手机","ارامكو","العليان","اتصالات","بازار","ابوظبي","كاثوليك","همراه","닷컴","政府","شبكة","بيتك","عرب","机构","组织机构","健康","招聘","рус","珠宝","大拿","みんな","グーグル","世界","書籍","网址","닷넷","コム","天主教","游戏","vermögensberater","vermögensberatung","企业","信息","嘉里大酒店","嘉里","广东","政务","xyz","yachts","yahoo","yamaxun","yandex","yodobashi","yoga","yokohama","you","youtube","yun","zappos","zara","zero","zip","zone","zuerich","cc.ua","inf.ua","ltd.ua","adobeaemcloud.com","adobeaemcloud.net","*.dev.adobeaemcloud.com","beep.pl","barsy.ca","*.compute.estate","*.alces.network","altervista.org","alwaysdata.net","cloudfront.net","*.compute.amazonaws.com","*.compute-1.amazonaws.com","*.compute.amazonaws.com.cn","us-east-1.amazonaws.com","cn-north-1.eb.amazonaws.com.cn","cn-northwest-1.eb.amazonaws.com.cn","elasticbeanstalk.com","ap-northeast-1.elasticbeanstalk.com","ap-northeast-2.elasticbeanstalk.com","ap-northeast-3.elasticbeanstalk.com","ap-south-1.elasticbeanstalk.com","ap-southeast-1.elasticbeanstalk.com","ap-southeast-2.elasticbeanstalk.com","ca-central-1.elasticbeanstalk.com","eu-central-1.elasticbeanstalk.com","eu-west-1.elasticbeanstalk.com","eu-west-2.elasticbeanstalk.com","eu-west-3.elasticbeanstalk.com","sa-east-1.elasticbeanstalk.com","us-east-1.elasticbeanstalk.com","us-east-2.elasticbeanstalk.com","us-gov-west-1.elasticbeanstalk.com","us-west-1.elasticbeanstalk.com","us-west-2.elasticbeanstalk.com","*.elb.amazonaws.com","*.elb.amazonaws.com.cn","s3.amazonaws.com","s3-ap-northeast-1.amazonaws.com","s3-ap-northeast-2.amazonaws.com","s3-ap-south-1.amazonaws.com","s3-ap-southeast-1.amazonaws.com","s3-ap-southeast-2.amazonaws.com","s3-ca-central-1.amazonaws.com","s3-eu-central-1.amazonaws.com","s3-eu-west-1.amazonaws.com","s3-eu-west-2.amazonaws.com","s3-eu-west-3.amazonaws.com","s3-external-1.amazonaws.com","s3-fips-us-gov-west-1.amazonaws.com","s3-sa-east-1.amazonaws.com","s3-us-gov-west-1.amazonaws.com","s3-us-east-2.amazonaws.com","s3-us-west-1.amazonaws.com","s3-us-west-2.amazonaws.com","s3.ap-northeast-2.amazonaws.com","s3.ap-south-1.amazonaws.com","s3.cn-north-1.amazonaws.com.cn","s3.ca-central-1.amazonaws.com","s3.eu-central-1.amazonaws.com","s3.eu-west-2.amazonaws.com","s3.eu-west-3.amazonaws.com","s3.us-east-2.amazonaws.com","s3.dualstack.ap-northeast-1.amazonaws.com","s3.dualstack.ap-northeast-2.amazonaws.com","s3.dualstack.ap-south-1.amazonaws.com","s3.dualstack.ap-southeast-1.amazonaws.com","s3.dualstack.ap-southeast-2.amazonaws.com","s3.dualstack.ca-central-1.amazonaws.com","s3.dualstack.eu-central-1.amazonaws.com","s3.dualstack.eu-west-1.amazonaws.com","s3.dualstack.eu-west-2.amazonaws.com","s3.dualstack.eu-west-3.amazonaws.com","s3.dualstack.sa-east-1.amazonaws.com","s3.dualstack.us-east-1.amazonaws.com","s3.dualstack.us-east-2.amazonaws.com","s3-website-us-east-1.amazonaws.com","s3-website-us-west-1.amazonaws.com","s3-website-us-west-2.amazonaws.com","s3-website-ap-northeast-1.amazonaws.com","s3-website-ap-southeast-1.amazonaws.com","s3-website-ap-southeast-2.amazonaws.com","s3-website-eu-west-1.amazonaws.com","s3-website-sa-east-1.amazonaws.com","s3-website.ap-northeast-2.amazonaws.com","s3-website.ap-south-1.amazonaws.com","s3-website.ca-central-1.amazonaws.com","s3-website.eu-central-1.amazonaws.com","s3-website.eu-west-2.amazonaws.com","s3-website.eu-west-3.amazonaws.com","s3-website.us-east-2.amazonaws.com","amsw.nl","t3l3p0rt.net","tele.amune.org","apigee.io","on-aptible.com","user.aseinet.ne.jp","gv.vc","d.gv.vc","user.party.eus","pimienta.org","poivron.org","potager.org","sweetpepper.org","myasustor.com","myfritz.net","*.awdev.ca","*.advisor.ws","b-data.io","backplaneapp.io","balena-devices.com","app.banzaicloud.io","betainabox.com","bnr.la","blackbaudcdn.net","boomla.net","boxfuse.io","square7.ch","bplaced.com","bplaced.de","square7.de","bplaced.net","square7.net","browsersafetymark.io","uk0.bigv.io","dh.bytemark.co.uk","vm.bytemark.co.uk","mycd.eu","carrd.co","crd.co","uwu.ai","ae.org","ar.com","br.com","cn.com","com.de","com.se","de.com","eu.com","gb.com","gb.net","hu.com","hu.net","jp.net","jpn.com","kr.com","mex.com","no.com","qc.com","ru.com","sa.com","se.net","uk.com","uk.net","us.com","uy.com","za.bz","za.com","africa.com","gr.com","in.net","us.org","co.com","c.la","certmgr.org","xenapponazure.com","discourse.group","discourse.team","virtueeldomein.nl","cleverapps.io","*.lcl.dev","*.stg.dev","c66.me","cloud66.ws","cloud66.zone","jdevcloud.com","wpdevcloud.com","cloudaccess.host","freesite.host","cloudaccess.net","cloudcontrolled.com","cloudcontrolapp.com","cloudera.site","trycloudflare.com","workers.dev","wnext.app","co.ca","*.otap.co","co.cz","c.cdn77.org","cdn77-ssl.net","r.cdn77.net","rsc.cdn77.org","ssl.origin.cdn77-secure.org","cloudns.asia","cloudns.biz","cloudns.club","cloudns.cc","cloudns.eu","cloudns.in","cloudns.info","cloudns.org","cloudns.pro","cloudns.pw","cloudns.us","cloudeity.net","cnpy.gdn","co.nl","co.no","webhosting.be","hosting-cluster.nl","ac.ru","edu.ru","gov.ru","int.ru","mil.ru","test.ru","dyn.cosidns.de","dynamisches-dns.de","dnsupdater.de","internet-dns.de","l-o-g-i-n.de","dynamic-dns.info","feste-ip.net","knx-server.net","static-access.net","realm.cz","*.cryptonomic.net","cupcake.is","*.customer-oci.com","*.oci.customer-oci.com","*.ocp.customer-oci.com","*.ocs.customer-oci.com","cyon.link","cyon.site","daplie.me","localhost.daplie.me","dattolocal.com","dattorelay.com","dattoweb.com","mydatto.com","dattolocal.net","mydatto.net","biz.dk","co.dk","firm.dk","reg.dk","store.dk","*.dapps.earth","*.bzz.dapps.earth","builtwithdark.com","edgestack.me","debian.net","dedyn.io","dnshome.de","online.th","shop.th","drayddns.com","dreamhosters.com","mydrobo.com","drud.io","drud.us","duckdns.org","dy.fi","tunk.org","dyndns-at-home.com","dyndns-at-work.com","dyndns-blog.com","dyndns-free.com","dyndns-home.com","dyndns-ip.com","dyndns-mail.com","dyndns-office.com","dyndns-pics.com","dyndns-remote.com","dyndns-server.com","dyndns-web.com","dyndns-wiki.com","dyndns-work.com","dyndns.biz","dyndns.info","dyndns.org","dyndns.tv","at-band-camp.net","ath.cx","barrel-of-knowledge.info","barrell-of-knowledge.info","better-than.tv","blogdns.com","blogdns.net","blogdns.org","blogsite.org","boldlygoingnowhere.org","broke-it.net","buyshouses.net","cechire.com","dnsalias.com","dnsalias.net","dnsalias.org","dnsdojo.com","dnsdojo.net","dnsdojo.org","does-it.net","doesntexist.com","doesntexist.org","dontexist.com","dontexist.net","dontexist.org","doomdns.com","doomdns.org","dvrdns.org","dyn-o-saur.com","dynalias.com","dynalias.net","dynalias.org","dynathome.net","dyndns.ws","endofinternet.net","endofinternet.org","endoftheinternet.org","est-a-la-maison.com","est-a-la-masion.com","est-le-patron.com","est-mon-blogueur.com","for-better.biz","for-more.biz","for-our.info","for-some.biz","for-the.biz","forgot.her.name","forgot.his.name","from-ak.com","from-al.com","from-ar.com","from-az.net","from-ca.com","from-co.net","from-ct.com","from-dc.com","from-de.com","from-fl.com","from-ga.com","from-hi.com","from-ia.com","from-id.com","from-il.com","from-in.com","from-ks.com","from-ky.com","from-la.net","from-ma.com","from-md.com","from-me.org","from-mi.com","from-mn.com","from-mo.com","from-ms.com","from-mt.com","from-nc.com","from-nd.com","from-ne.com","from-nh.com","from-nj.com","from-nm.com","from-nv.com","from-ny.net","from-oh.com","from-ok.com","from-or.com","from-pa.com","from-pr.com","from-ri.com","from-sc.com","from-sd.com","from-tn.com","from-tx.com","from-ut.com","from-va.com","from-vt.com","from-wa.com","from-wi.com","from-wv.com","from-wy.com","ftpaccess.cc","fuettertdasnetz.de","game-host.org","game-server.cc","getmyip.com","gets-it.net","go.dyndns.org","gotdns.com","gotdns.org","groks-the.info","groks-this.info","ham-radio-op.net","here-for-more.info","hobby-site.com","hobby-site.org","home.dyndns.org","homedns.org","homeftp.net","homeftp.org","homeip.net","homelinux.com","homelinux.net","homelinux.org","homeunix.com","homeunix.net","homeunix.org","iamallama.com","in-the-band.net","is-a-anarchist.com","is-a-blogger.com","is-a-bookkeeper.com","is-a-bruinsfan.org","is-a-bulls-fan.com","is-a-candidate.org","is-a-caterer.com","is-a-celticsfan.org","is-a-chef.com","is-a-chef.net","is-a-chef.org","is-a-conservative.com","is-a-cpa.com","is-a-cubicle-slave.com","is-a-democrat.com","is-a-designer.com","is-a-doctor.com","is-a-financialadvisor.com","is-a-geek.com","is-a-geek.net","is-a-geek.org","is-a-green.com","is-a-guru.com","is-a-hard-worker.com","is-a-hunter.com","is-a-knight.org","is-a-landscaper.com","is-a-lawyer.com","is-a-liberal.com","is-a-libertarian.com","is-a-linux-user.org","is-a-llama.com","is-a-musician.com","is-a-nascarfan.com","is-a-nurse.com","is-a-painter.com","is-a-patsfan.org","is-a-personaltrainer.com","is-a-photographer.com","is-a-player.com","is-a-republican.com","is-a-rockstar.com","is-a-socialist.com","is-a-soxfan.org","is-a-student.com","is-a-teacher.com","is-a-techie.com","is-a-therapist.com","is-an-accountant.com","is-an-actor.com","is-an-actress.com","is-an-anarchist.com","is-an-artist.com","is-an-engineer.com","is-an-entertainer.com","is-by.us","is-certified.com","is-found.org","is-gone.com","is-into-anime.com","is-into-cars.com","is-into-cartoons.com","is-into-games.com","is-leet.com","is-lost.org","is-not-certified.com","is-saved.org","is-slick.com","is-uberleet.com","is-very-bad.org","is-very-evil.org","is-very-good.org","is-very-nice.org","is-very-sweet.org","is-with-theband.com","isa-geek.com","isa-geek.net","isa-geek.org","isa-hockeynut.com","issmarterthanyou.com","isteingeek.de","istmein.de","kicks-ass.net","kicks-ass.org","knowsitall.info","land-4-sale.us","lebtimnetz.de","leitungsen.de","likes-pie.com","likescandy.com","merseine.nu","mine.nu","misconfused.org","mypets.ws","myphotos.cc","neat-url.com","office-on-the.net","on-the-web.tv","podzone.net","podzone.org","readmyblog.org","saves-the-whales.com","scrapper-site.net","scrapping.cc","selfip.biz","selfip.com","selfip.info","selfip.net","selfip.org","sells-for-less.com","sells-for-u.com","sells-it.net","sellsyourhome.org","servebbs.com","servebbs.net","servebbs.org","serveftp.net","serveftp.org","servegame.org","shacknet.nu","simple-url.com","space-to-rent.com","stuff-4-sale.org","stuff-4-sale.us","teaches-yoga.com","thruhere.net","traeumtgerade.de","webhop.biz","webhop.info","webhop.net","webhop.org","worse-than.tv","writesthisblog.com","ddnss.de","dyn.ddnss.de","dyndns.ddnss.de","dyndns1.de","dyn-ip24.de","home-webserver.de","dyn.home-webserver.de","myhome-server.de","ddnss.org","definima.net","definima.io","bci.dnstrace.pro","ddnsfree.com","ddnsgeek.com","giize.com","gleeze.com","kozow.com","loseyourip.com","ooguy.com","theworkpc.com","casacam.net","dynu.net","accesscam.org","camdvr.org","freeddns.org","mywire.org","webredirect.org","myddns.rocks","blogsite.xyz","dynv6.net","e4.cz","en-root.fr","mytuleap.com","onred.one","staging.onred.one","enonic.io","customer.enonic.io","eu.org","al.eu.org","asso.eu.org","at.eu.org","au.eu.org","be.eu.org","bg.eu.org","ca.eu.org","cd.eu.org","ch.eu.org","cn.eu.org","cy.eu.org","cz.eu.org","de.eu.org","dk.eu.org","edu.eu.org","ee.eu.org","es.eu.org","fi.eu.org","fr.eu.org","gr.eu.org","hr.eu.org","hu.eu.org","ie.eu.org","il.eu.org","in.eu.org","int.eu.org","is.eu.org","it.eu.org","jp.eu.org","kr.eu.org","lt.eu.org","lu.eu.org","lv.eu.org","mc.eu.org","me.eu.org","mk.eu.org","mt.eu.org","my.eu.org","net.eu.org","ng.eu.org","nl.eu.org","no.eu.org","nz.eu.org","paris.eu.org","pl.eu.org","pt.eu.org","q-a.eu.org","ro.eu.org","ru.eu.org","se.eu.org","si.eu.org","sk.eu.org","tr.eu.org","uk.eu.org","us.eu.org","eu-1.evennode.com","eu-2.evennode.com","eu-3.evennode.com","eu-4.evennode.com","us-1.evennode.com","us-2.evennode.com","us-3.evennode.com","us-4.evennode.com","twmail.cc","twmail.net","twmail.org","mymailer.com.tw","url.tw","apps.fbsbx.com","ru.net","adygeya.ru","bashkiria.ru","bir.ru","cbg.ru","com.ru","dagestan.ru","grozny.ru","kalmykia.ru","kustanai.ru","marine.ru","mordovia.ru","msk.ru","mytis.ru","nalchik.ru","nov.ru","pyatigorsk.ru","spb.ru","vladikavkaz.ru","vladimir.ru","abkhazia.su","adygeya.su","aktyubinsk.su","arkhangelsk.su","armenia.su","ashgabad.su","azerbaijan.su","balashov.su","bashkiria.su","bryansk.su","bukhara.su","chimkent.su","dagestan.su","east-kazakhstan.su","exnet.su","georgia.su","grozny.su","ivanovo.su","jambyl.su","kalmykia.su","kaluga.su","karacol.su","karaganda.su","karelia.su","khakassia.su","krasnodar.su","kurgan.su","kustanai.su","lenug.su","mangyshlak.su","mordovia.su","msk.su","murmansk.su","nalchik.su","navoi.su","north-kazakhstan.su","nov.su","obninsk.su","penza.su","pokrovsk.su","sochi.su","spb.su","tashkent.su","termez.su","togliatti.su","troitsk.su","tselinograd.su","tula.su","tuva.su","vladikavkaz.su","vladimir.su","vologda.su","channelsdvr.net","u.channelsdvr.net","fastly-terrarium.com","fastlylb.net","map.fastlylb.net","freetls.fastly.net","map.fastly.net","a.prod.fastly.net","global.prod.fastly.net","a.ssl.fastly.net","b.ssl.fastly.net","global.ssl.fastly.net","fastpanel.direct","fastvps-server.com","fhapp.xyz","fedorainfracloud.org","fedorapeople.org","cloud.fedoraproject.org","app.os.fedoraproject.org","app.os.stg.fedoraproject.org","mydobiss.com","filegear.me","filegear-au.me","filegear-de.me","filegear-gb.me","filegear-ie.me","filegear-jp.me","filegear-sg.me","firebaseapp.com","flynnhub.com","flynnhosting.net","0e.vc","freebox-os.com","freeboxos.com","fbx-os.fr","fbxos.fr","freebox-os.fr","freeboxos.fr","freedesktop.org","*.futurecms.at","*.ex.futurecms.at","*.in.futurecms.at","futurehosting.at","futuremailing.at","*.ex.ortsinfo.at","*.kunden.ortsinfo.at","*.statics.cloud","service.gov.uk","gehirn.ne.jp","usercontent.jp","gentapps.com","lab.ms","github.io","githubusercontent.com","gitlab.io","glitch.me","lolipop.io","cloudapps.digital","london.cloudapps.digital","homeoffice.gov.uk","ro.im","shop.ro","goip.de","run.app","a.run.app","web.app","*.0emm.com","appspot.com","*.r.appspot.com","blogspot.ae","blogspot.al","blogspot.am","blogspot.ba","blogspot.be","blogspot.bg","blogspot.bj","blogspot.ca","blogspot.cf","blogspot.ch","blogspot.cl","blogspot.co.at","blogspot.co.id","blogspot.co.il","blogspot.co.ke","blogspot.co.nz","blogspot.co.uk","blogspot.co.za","blogspot.com","blogspot.com.ar","blogspot.com.au","blogspot.com.br","blogspot.com.by","blogspot.com.co","blogspot.com.cy","blogspot.com.ee","blogspot.com.eg","blogspot.com.es","blogspot.com.mt","blogspot.com.ng","blogspot.com.tr","blogspot.com.uy","blogspot.cv","blogspot.cz","blogspot.de","blogspot.dk","blogspot.fi","blogspot.fr","blogspot.gr","blogspot.hk","blogspot.hr","blogspot.hu","blogspot.ie","blogspot.in","blogspot.is","blogspot.it","blogspot.jp","blogspot.kr","blogspot.li","blogspot.lt","blogspot.lu","blogspot.md","blogspot.mk","blogspot.mr","blogspot.mx","blogspot.my","blogspot.nl","blogspot.no","blogspot.pe","blogspot.pt","blogspot.qa","blogspot.re","blogspot.ro","blogspot.rs","blogspot.ru","blogspot.se","blogspot.sg","blogspot.si","blogspot.sk","blogspot.sn","blogspot.td","blogspot.tw","blogspot.ug","blogspot.vn","cloudfunctions.net","cloud.goog","codespot.com","googleapis.com","googlecode.com","pagespeedmobilizer.com","publishproxy.com","withgoogle.com","withyoutube.com","awsmppl.com","fin.ci","free.hr","caa.li","ua.rs","conf.se","hs.zone","hs.run","hashbang.sh","hasura.app","hasura-app.io","hepforge.org","herokuapp.com","herokussl.com","myravendb.com","ravendb.community","ravendb.me","development.run","ravendb.run","bpl.biz","orx.biz","ng.city","biz.gl","ng.ink","col.ng","firm.ng","gen.ng","ltd.ng","ngo.ng","ng.school","sch.so","häkkinen.fi","*.moonscale.io","moonscale.net","iki.fi","dyn-berlin.de","in-berlin.de","in-brb.de","in-butter.de","in-dsl.de","in-dsl.net","in-dsl.org","in-vpn.de","in-vpn.net","in-vpn.org","biz.at","info.at","info.cx","ac.leg.br","al.leg.br","am.leg.br","ap.leg.br","ba.leg.br","ce.leg.br","df.leg.br","es.leg.br","go.leg.br","ma.leg.br","mg.leg.br","ms.leg.br","mt.leg.br","pa.leg.br","pb.leg.br","pe.leg.br","pi.leg.br","pr.leg.br","rj.leg.br","rn.leg.br","ro.leg.br","rr.leg.br","rs.leg.br","sc.leg.br","se.leg.br","sp.leg.br","to.leg.br","pixolino.com","ipifony.net","mein-iserv.de","test-iserv.de","iserv.dev","iobb.net","myjino.ru","*.hosting.myjino.ru","*.landing.myjino.ru","*.spectrum.myjino.ru","*.vps.myjino.ru","*.triton.zone","*.cns.joyent.com","js.org","kaas.gg","khplay.nl","keymachine.de","kinghost.net","uni5.net","knightpoint.systems","oya.to","co.krd","edu.krd","git-repos.de","lcube-server.de","svn-repos.de","leadpages.co","lpages.co","lpusercontent.com","lelux.site","co.business","co.education","co.events","co.financial","co.network","co.place","co.technology","app.lmpm.com","linkitools.space","linkyard.cloud","linkyard-cloud.ch","members.linode.com","nodebalancer.linode.com","we.bs","loginline.app","loginline.dev","loginline.io","loginline.services","loginline.site","krasnik.pl","leczna.pl","lubartow.pl","lublin.pl","poniatowa.pl","swidnik.pl","uklugs.org","glug.org.uk","lug.org.uk","lugs.org.uk","barsy.bg","barsy.co.uk","barsyonline.co.uk","barsycenter.com","barsyonline.com","barsy.club","barsy.de","barsy.eu","barsy.in","barsy.info","barsy.io","barsy.me","barsy.menu","barsy.mobi","barsy.net","barsy.online","barsy.org","barsy.pro","barsy.pub","barsy.shop","barsy.site","barsy.support","barsy.uk","*.magentosite.cloud","mayfirst.info","mayfirst.org","hb.cldmail.ru","miniserver.com","memset.net","cloud.metacentrum.cz","custom.metacentrum.cz","flt.cloud.muni.cz","usr.cloud.muni.cz","meteorapp.com","eu.meteorapp.com","co.pl","azurecontainer.io","azurewebsites.net","azure-mobile.net","cloudapp.net","mozilla-iot.org","bmoattachments.org","net.ru","org.ru","pp.ru","ui.nabu.casa","pony.club","of.fashion","on.fashion","of.football","in.london","of.london","for.men","and.mom","for.mom","for.one","for.sale","of.work","to.work","nctu.me","bitballoon.com","netlify.com","4u.com","ngrok.io","nh-serv.co.uk","nfshost.com","dnsking.ch","mypi.co","n4t.co","001www.com","ddnslive.com","myiphost.com","forumz.info","16-b.it","32-b.it","64-b.it","soundcast.me","tcp4.me","dnsup.net","hicam.net","now-dns.net","ownip.net","vpndns.net","dynserv.org","now-dns.org","x443.pw","now-dns.top","ntdll.top","freeddns.us","crafting.xyz","zapto.xyz","nsupdate.info","nerdpol.ovh","blogsyte.com","brasilia.me","cable-modem.org","ciscofreak.com","collegefan.org","couchpotatofries.org","damnserver.com","ddns.me","ditchyourip.com","dnsfor.me","dnsiskinky.com","dvrcam.info","dynns.com","eating-organic.net","fantasyleague.cc","geekgalaxy.com","golffan.us","health-carereform.com","homesecuritymac.com","homesecuritypc.com","hopto.me","ilovecollege.info","loginto.me","mlbfan.org","mmafan.biz","myactivedirectory.com","mydissent.net","myeffect.net","mymediapc.net","mypsx.net","mysecuritycamera.com","mysecuritycamera.net","mysecuritycamera.org","net-freaks.com","nflfan.org","nhlfan.net","no-ip.ca","no-ip.co.uk","no-ip.net","noip.us","onthewifi.com","pgafan.net","point2this.com","pointto.us","privatizehealthinsurance.net","quicksytes.com","read-books.org","securitytactics.com","serveexchange.com","servehumour.com","servep2p.com","servesarcasm.com","stufftoread.com","ufcfan.org","unusualperson.com","workisboring.com","3utilities.com","bounceme.net","ddns.net","ddnsking.com","gotdns.ch","hopto.org","myftp.biz","myftp.org","myvnc.com","no-ip.biz","no-ip.info","no-ip.org","noip.me","redirectme.net","servebeer.com","serveblog.net","servecounterstrike.com","serveftp.com","servegame.com","servehalflife.com","servehttp.com","serveirc.com","serveminecraft.net","servemp3.com","servepics.com","servequake.com","sytes.net","webhop.me","zapto.org","stage.nodeart.io","nodum.co","nodum.io","pcloud.host","nyc.mn","nom.ae","nom.af","nom.ai","nom.al","nym.by","nom.bz","nym.bz","nom.cl","nym.ec","nom.gd","nom.ge","nom.gl","nym.gr","nom.gt","nym.gy","nym.hk","nom.hn","nym.ie","nom.im","nom.ke","nym.kz","nym.la","nym.lc","nom.li","nym.li","nym.lt","nym.lu","nom.lv","nym.me","nom.mk","nym.mn","nym.mx","nom.nu","nym.nz","nym.pe","nym.pt","nom.pw","nom.qa","nym.ro","nom.rs","nom.si","nym.sk","nom.st","nym.su","nym.sx","nom.tj","nym.tw","nom.ug","nom.uy","nom.vc","nom.vg","static.observableusercontent.com","cya.gg","cloudycluster.net","nid.io","opencraft.hosting","operaunite.com","skygearapp.com","outsystemscloud.com","ownprovider.com","own.pm","ox.rs","oy.lc","pgfog.com","pagefrontapp.com","art.pl","gliwice.pl","krakow.pl","poznan.pl","wroc.pl","zakopane.pl","pantheonsite.io","gotpantheon.com","mypep.link","perspecta.cloud","on-web.fr","*.platform.sh","*.platformsh.site","dyn53.io","co.bn","xen.prgmr.com","priv.at","prvcy.page","*.dweb.link","protonet.io","chirurgiens-dentistes-en-france.fr","byen.site","pubtls.org","qualifioapp.com","qbuser.com","instantcloud.cn","ras.ru","qa2.com","qcx.io","*.sys.qcx.io","dev-myqnapcloud.com","alpha-myqnapcloud.com","myqnapcloud.com","*.quipelements.com","vapor.cloud","vaporcloud.io","rackmaze.com","rackmaze.net","*.on-k3s.io","*.on-rancher.cloud","*.on-rio.io","readthedocs.io","rhcloud.com","app.render.com","onrender.com","repl.co","repl.run","resindevice.io","devices.resinstaging.io","hzc.io","wellbeingzone.eu","ptplus.fit","wellbeingzone.co.uk","git-pages.rit.edu","sandcats.io","logoip.de","logoip.com","schokokeks.net","gov.scot","scrysec.com","firewall-gateway.com","firewall-gateway.de","my-gateway.de","my-router.de","spdns.de","spdns.eu","firewall-gateway.net","my-firewall.org","myfirewall.org","spdns.org","senseering.net","biz.ua","co.ua","pp.ua","shiftedit.io","myshopblocks.com","shopitsite.com","mo-siemens.io","1kapp.com","appchizi.com","applinzi.com","sinaapp.com","vipsinaapp.com","siteleaf.net","bounty-full.com","alpha.bounty-full.com","beta.bounty-full.com","stackhero-network.com","static.land","dev.static.land","sites.static.land","apps.lair.io","*.stolos.io","spacekit.io","customer.speedpartner.de","api.stdlib.com","storj.farm","utwente.io","soc.srcf.net","user.srcf.net","temp-dns.com","applicationcloud.io","scapp.io","*.s5y.io","*.sensiosite.cloud","syncloud.it","diskstation.me","dscloud.biz","dscloud.me","dscloud.mobi","dsmynas.com","dsmynas.net","dsmynas.org","familyds.com","familyds.net","familyds.org","i234.me","myds.me","synology.me","vpnplus.to","direct.quickconnect.to","taifun-dns.de","gda.pl","gdansk.pl","gdynia.pl","med.pl","sopot.pl","edugit.org","telebit.app","telebit.io","*.telebit.xyz","gwiddle.co.uk","thingdustdata.com","cust.dev.thingdust.io","cust.disrec.thingdust.io","cust.prod.thingdust.io","cust.testing.thingdust.io","arvo.network","azimuth.network","bloxcms.com","townnews-staging.com","12hp.at","2ix.at","4lima.at","lima-city.at","12hp.ch","2ix.ch","4lima.ch","lima-city.ch","trafficplex.cloud","de.cool","12hp.de","2ix.de","4lima.de","lima-city.de","1337.pictures","clan.rip","lima-city.rocks","webspace.rocks","lima.zone","*.transurl.be","*.transurl.eu","*.transurl.nl","tuxfamily.org","dd-dns.de","diskstation.eu","diskstation.org","dray-dns.de","draydns.de","dyn-vpn.de","dynvpn.de","mein-vigor.de","my-vigor.de","my-wan.de","syno-ds.de","synology-diskstation.de","synology-ds.de","uber.space","*.uberspace.de","hk.com","hk.org","ltd.hk","inc.hk","virtualuser.de","virtual-user.de","urown.cloud","dnsupdate.info","lib.de.us","2038.io","router.management","v-info.info","voorloper.cloud","v.ua","wafflecell.com","*.webhare.dev","wedeploy.io","wedeploy.me","wedeploy.sh","remotewd.com","wmflabs.org","myforum.community","community-pro.de","diskussionsbereich.de","community-pro.net","meinforum.net","half.host","xnbay.com","u2.xnbay.com","u2-local.xnbay.com","cistron.nl","demon.nl","xs4all.space","yandexcloud.net","storage.yandexcloud.net","website.yandexcloud.net","official.academy","yolasite.com","ybo.faith","yombo.me","homelink.one","ybo.party","ybo.review","ybo.science","ybo.trade","nohost.me","noho.st","za.net","za.org","now.sh","bss.design","basicserver.io","virtualserver.io","enterprisecloud.nu"]')})),x.register("fqcu2",(function(e,t){var i;a(e.exports,"Store",(()=>i),(e=>i=e)),i=class{constructor(){this.synchronous=!1}findCookie(e,a,t,i){throw Error("findCookie is not implemented")}findCookies(e,a,t,i){throw Error("findCookies is not implemented")}putCookie(e,a){throw Error("putCookie is not implemented")}updateCookie(e,a,t){throw Error("updateCookie is not implemented")}removeCookie(e,a,t,i){throw Error("removeCookie is not implemented")}removeCookies(e,a,t){throw Error("removeCookies is not implemented")}removeAllCookies(e){throw Error("removeAllCookies is not implemented")}getAllCookies(e){throw Error("getAllCookies is not implemented (therefore jar cannot be serialized)")}}})),x.register("hiUcE",(function(e,t){var i;a(e.exports,"MemoryCookieStore",(()=>i),(e=>i=e));var o=x("1Vp8Z").fromCallback,r=x("fqcu2").Store,n=x("5EBdA").permuteDomain,p=x("gYruC").pathMatch;class d extends r{constructor(){super(),this.synchronous=!0,this.idx={},s.inspect.custom&&(this[s.inspect.custom]=this.inspect)}inspect(){return`{ idx: ${s.inspect(this.idx,!1,2)} }`}findCookie(e,a,t,i){return i(null,this.idx[e]&&this.idx[e][a]?this.idx[e][a][t]||null:void 0)}findCookies(e,a,t,i){const o=[];if("function"==typeof t&&(i=t,t=!1),!e)return i(null,[]);let s;s=a?e=>{Object.keys(e).forEach((t=>{if(p(a,t)){const a=e[t];for(const e in a)o.push(a[e])}}))}:e=>{for(const a in e){const t=e[a];for(const e in t)o.push(t[e])}};const r=n(e,t)||[e],d=this.idx;r.forEach((e=>{const a=d[e];a&&s(a)})),i(null,o)}putCookie(e,a){this.idx[e.domain]||(this.idx[e.domain]={}),this.idx[e.domain][e.path]||(this.idx[e.domain][e.path]={}),this.idx[e.domain][e.path][e.key]=e,a(null)}updateCookie(e,a,t){this.putCookie(a,t)}removeCookie(e,a,t,i){this.idx[e]&&this.idx[e][a]&&this.idx[e][a][t]&&delete this.idx[e][a][t],i(null)}removeCookies(e,a,t){return this.idx[e]&&(a?delete this.idx[e][a]:delete this.idx[e]),t(null)}removeAllCookies(e){return this.idx={},e(null)}getAllCookies(e){const a=[],t=this.idx;Object.keys(t).forEach((e=>{Object.keys(t[e]).forEach((i=>{Object.keys(t[e][i]).forEach((o=>{null!==o&&a.push(t[e][i][o])}))}))})),a.sort(((e,a)=>(e.creationIndex||0)-(a.creationIndex||0))),e(null,a)}}["findCookie","findCookies","putCookie","updateCookie","removeCookie","removeCookies","removeAllCookies","getAllCookies"].forEach((e=>{d[e]=o(d.prototype[e])})),i=d})),x.register("1Vp8Z",(function(e,t){var i;a(e.exports,"fromCallback",(()=>i),(e=>i=e)),i=function(e){return Object.defineProperty((function(){if("function"!=typeof arguments[arguments.length-1])return new Promise(((a,t)=>{arguments[arguments.length]=(e,i)=>{if(e)return t(e);a(i)},arguments.length++,e.apply(this,arguments)}));e.apply(this,arguments)}),"name",{value:e.name})}})),x.register("5EBdA",((e,t)=>{var i;a(e.exports,"permuteDomain",(()=>i),(e=>i=e));var o=x("gIN7T");const s=["local"];i=(e,a)=>{let t=null;if(a){const a=e.split(".");t=s.includes(a[a.length-1])?`${a[a.length-2]}.${a[a.length-1]}`:o.getPublicSuffix(e)}else t=o.getPublicSuffix(e);if(!t)return null;if(t==e)return[e];const i=e.slice(0,-(t.length+1)).split(".").reverse();let r=t;const n=[r];for(;i.length;)r=`${i.shift()}.${r}`,n.push(r);return n}})),x.register("gYruC",((e,t)=>{var i;a(e.exports,"pathMatch",(()=>i),(e=>i=e)),i=(e,a)=>{if(a===e)return!0;if(0===e.indexOf(a)){if("/"===a.substr(-1))return!0;if("/"===e.substr(a.length,1))return!0}return!1}})),x.register("iTC6a",((e,a)=>{e.exports="4.0.0"})),x.register("bhSD8",(function(e,t){a(e.exports,"AbortError",(()=>s)),a(e.exports,"AbortController",(()=>r));var i=x("hEmCq"),o=x("178aB"),s=function(e){function a(a){var t=e.call(this,a)||this;return t.name="AbortError",t}return i.__extends(a,e),a}(Error),r=function(){function e(e){var a=this;if(this._signal=new o.AbortSignal,e){Array.isArray(e)||(e=arguments);for(var t=0,i=e;i.length>t;t++){var s=i[t];s.aborted?this.abort():s.addEventListener("abort",(()=>{a.abort()}))}}}return Object.defineProperty(e.prototype,"signal",{get(){return this._signal},enumerable:!1,configurable:!0}),e.prototype.abort=function(){o.abortSignal(this._signal)},e.timeout=e=>{var a=new o.AbortSignal,t=setTimeout(o.abortSignal,e,a);return"function"==typeof t.unref&&t.unref(),a},e}()})),x.register("hEmCq",(function(e,t){function i(e,a){function t(){this.constructor=e}if("function"!=typeof a&&null!==a)throw new TypeError("Class extends value "+a+" is not a constructor or null");d(e,a),e.prototype=null===a?Object.create(a):(t.prototype=a.prototype,new t)}function o(e,a){var t={};for(var i in e)({}).hasOwnProperty.call(e,i)&&0>a.indexOf(i)&&(t[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var o=0;for(i=Object.getOwnPropertySymbols(e);i.length>o;o++)0>a.indexOf(i[o])&&{}.propertyIsEnumerable.call(e,i[o])&&(t[i[o]]=e[i[o]])}return t}function s(e){return this instanceof s?(this.v=e,this):new s(e)}function r(e,a,t){function i(e){l[e]&&(d[e]=a=>new Promise(((t,i)=>{m.push([e,a,t,i])>1||o(e,a)})))}function o(e,a){try{(t=l[e](a)).value instanceof s?Promise.resolve(t.value.v).then(r,n):p(m[0][2],t)}catch(e){p(m[0][3],e)}var t}function r(e){o("next",e)}function n(e){o("throw",e)}function p(e,a){e(a),m.shift(),m.length&&o(m[0][0],m[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var d,l=t.apply(e,a||[]),m=[];return d={},i("next"),i("throw"),i("return"),d[Symbol.asyncIterator]=function(){return this},d}function n(e){function a(a,o){t[a]=e[a]?t=>(i=!i)?{value:s(e[a](t)),done:"return"===a}:o?o(t):t:o}var t,i;return t={},a("next"),a("throw",(e=>{throw e})),a("return"),t[Symbol.iterator]=function(){return this},t}function p(e){function a(a){t[a]=e[a]&&(t=>new Promise(((i,o)=>{((e,a,t,i)=>{Promise.resolve(i).then((a=>{e({value:a,done:t})}),a)})(i,o,(t=e[a](t)).done,t.value)})))}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e=(e=>{var a="function"==typeof Symbol&&Symbol.iterator,t=a&&e[a],i=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:()=>(e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e})};throw new TypeError(a?"Object is not iterable.":"Symbol.iterator is not defined.")})(e),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t)}a(e.exports,"__extends",(()=>i)),a(e.exports,"__rest",(()=>o)),a(e.exports,"__await",(()=>s)),a(e.exports,"__asyncGenerator",(()=>r)),a(e.exports,"__asyncDelegator",(()=>n)),a(e.exports,"__asyncValues",(()=>p));var d=(e,a)=>(d=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&((e,a)=>{e.__proto__=a})||((e,a)=>{for(var t in a)({}).hasOwnProperty.call(a,t)&&(e[t]=a[t])}))(e,a)})),x.register("178aB",(function(e,t){function i(e){if(!e.aborted){e.onabort&&e.onabort.call(e);var a=o.get(e);a&&a.slice().forEach((a=>{a.call(e,{type:"abort"})})),s.set(e,!0)}}a(e.exports,"AbortSignal",(()=>r)),a(e.exports,"abortSignal",(()=>i));var o=new WeakMap,s=new WeakMap,r=function(){function e(){this.onabort=null,o.set(this,[]),s.set(this,!1)}return Object.defineProperty(e.prototype,"aborted",{get(){if(!s.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");return s.get(this)},enumerable:!1,configurable:!0}),Object.defineProperty(e,"none",{get(){return new e},enumerable:!1,configurable:!0}),e.prototype.addEventListener=function(e,a){if(!o.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");o.get(this).push(a)},e.prototype.removeEventListener=function(e,a){if(!o.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");var t=o.get(this),i=t.indexOf(a);i>-1&&t.splice(i,1)},e.prototype.dispatchEvent=e=>{throw Error("This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.")},e}()})),x.register("7EOPB",(function(e,t){function i(e){return e.toLowerCase()}function o(e){if(e&&"object"==typeof e){const a=e;if("function"==typeof a.rawHeaders&&"function"==typeof a.clone&&"function"==typeof a.get&&"function"==typeof a.set&&"function"==typeof a.contains&&"function"==typeof a.remove&&"function"==typeof a.headersArray&&"function"==typeof a.headerValues&&"function"==typeof a.headerNames&&"function"==typeof a.toJson)return!0}return!1}a(e.exports,"isHttpHeadersLike",(()=>o)),a(e.exports,"HttpHeaders",(()=>s));class s{constructor(e){if(this._headersMap={},e)for(const a in e)this.set(a,e[a])}set(e,a){this._headersMap[i(e)]={name:e,value:""+a}}get(e){const a=this._headersMap[i(e)];return a?a.value:void 0}contains(e){return!!this._headersMap[i(e)]}remove(e){const a=this.contains(e);return delete this._headersMap[i(e)],a}rawHeaders(){return this.toJson({preserveCase:!0})}headersArray(){const e=[];for(const a in this._headersMap)e.push(this._headersMap[a]);return e}headerNames(){const e=[],a=this.headersArray();for(let t=0;a.length>t;++t)e.push(a[t].name);return e}headerValues(){const e=[],a=this.headersArray();for(let t=0;a.length>t;++t)e.push(a[t].value);return e}toJson(e={}){const a={};if(e.preserveCase)for(const e in this._headersMap){const t=this._headersMap[e];a[t.name]=t.value}else for(const e in this._headersMap){const t=this._headersMap[e];a[i(t.name)]=t.value}return a}toString(){return JSON.stringify(this.toJson({preserveCase:!0}))}clone(){const e={};for(const a in this._headersMap){const t=this._headersMap[a];e[t.name]=t.value}return new s(e)}}})),x.register("iySVB",((e,t)=>{function i(e,a,t){const i=n.URLBuilder.parse(a.host).getHost();if(!i)throw Error("Expecting a non-empty host in proxy settings.");if(0>(r=a.port)||r>65535)throw Error("Expecting a valid port number in the range of [0, 65535] in proxy settings.");var r;const p={proxy:{host:i,port:a.port,headers:t&&t.rawHeaders()||{}}};a.username&&a.password?p.proxy.proxyAuth=`${a.username}:${a.password}`:a.username&&(p.proxy.proxyAuth=""+a.username);const d=o(e);return{isHttps:d,agent:s(d,o(a.host),p)}}function o(e){return"https"===(n.URLBuilder.parse(e).getScheme()||"").toLowerCase()}function s(e,a,t){return e&&a?r.httpsOverHttps(t):e&&!a?r.httpsOverHttp(t):!e&&a?r.httpOverHttps(t):r.httpOverHttp(t)}a(e.exports,"createProxyAgent",(()=>i)),a(e.exports,"isUrlHttps",(()=>o));var r=x("b03e1"),n=x("8asXx")})),x.register("8asXx",(function(e,t){function i(e){return e._textLength>e._currentIndex}function o(e){return e._text[e._currentIndex]}function s(e,a){i(e)&&(a||(a=1),e._currentIndex+=a)}function r(e,a){let t=e._currentIndex+a;return t>e._textLength&&(t=e._textLength),e._text.substring(e._currentIndex,t)}function n(e,a){let t="";for(;i(e);){const i=o(e);if(!a(i))break;t+=i,s(e)}return t}function p(e,...a){return n(e,(e=>-1===a.indexOf(e)))}a(e.exports,"URLQuery",(()=>l)),a(e.exports,"URLBuilder",(()=>m)),a(e.exports,"URL",(()=>x("hr5R1").URL));var d=x("aQqza");class l{constructor(){this._rawQuery={}}any(){return Object.keys(this._rawQuery).length>0}keys(){return Object.keys(this._rawQuery)}set(e,a){const t=a;e&&(null!=t?this._rawQuery[e]=Array.isArray(t)?t:""+t:delete this._rawQuery[e])}get(e){return e?this._rawQuery[e]:void 0}toString(){let e="";for(const a in this._rawQuery){e&&(e+="&");const t=this._rawQuery[a];if(Array.isArray(t)){const i=[];for(const e of t)i.push(`${a}=${e}`);e+=i.join("&")}else e+=`${a}=${t}`}return e}static parse(e){const a=new l;if(e){e.startsWith("?")&&(e=e.substring(1));let t="ParameterName",i="",o="";for(let s=0;e.length>s;++s){const r=e[s];switch(t){case"ParameterName":switch(r){case"=":t="ParameterValue";break;case"&":i="",o="";break;default:i+=r}break;case"ParameterValue":"&"===r?(a.set(i,o),i="",o="",t="ParameterName"):o+=r;break;default:throw Error("Unrecognized URLQuery parse state: "+t)}}"ParameterValue"===t&&a.set(i,o)}return a}}class m{setScheme(e){e?this.set(e,"SCHEME"):this._scheme=void 0}getScheme(){return this._scheme}setHost(e){e?this.set(e,"SCHEME_OR_HOST"):this._host=void 0}getHost(){return this._host}setPort(e){null==e||""===e?this._port=void 0:this.set(""+e,"PORT")}getPort(){return this._port}setPath(e){if(e){const a=e.indexOf("://");if(-1!==a){const t=e.lastIndexOf("/",a);this.set(-1===t?e:e.substr(t+1),"SCHEME")}else this.set(e,"PATH")}else this._path=void 0}appendPath(e){if(e){let a=this.getPath();a&&(a.endsWith("/")||(a+="/"),e.startsWith("/")&&(e=e.substring(1)),e=a+e),this.set(e,"PATH")}}getPath(){return this._path}setQuery(e){this._query=e?l.parse(e):void 0}setQueryParameter(e,a){e&&(this._query||(this._query=new l),this._query.set(e,a))}getQueryParameterValue(e){return this._query?this._query.get(e):void 0}getQuery(){return this._query?""+this._query:void 0}set(e,a){const t=new u(e,a);for(;t.next();){const e=t.current();let a;if(e)switch(e.type){case"SCHEME":this._scheme=e.text||void 0;break;case"HOST":this._host=e.text||void 0;break;case"PORT":this._port=e.text||void 0;break;case"PATH":a=e.text||void 0,this._path&&"/"!==this._path&&"/"===a||(this._path=a);break;case"QUERY":this._query=l.parse(e.text);break;default:throw Error("Unrecognized URLTokenType: "+e.type)}}}toString(){let e="";return this._scheme&&(e+=this._scheme+"://"),this._host&&(e+=this._host),this._port&&(e+=":"+this._port),this._path&&(this._path.startsWith("/")||(e+="/"),e+=this._path),this._query&&this._query.any()&&(e+="?"+this._query),e}replaceAll(e,a){e&&(this.setScheme(d.replaceAll(this.getScheme(),e,a)),this.setHost(d.replaceAll(this.getHost(),e,a)),this.setPort(d.replaceAll(this.getPort(),e,a)),this.setPath(d.replaceAll(this.getPath(),e,a)),this.setQuery(d.replaceAll(this.getQuery(),e,a)))}static parse(e){const a=new m;return a.set(e,"SCHEME_OR_HOST"),a}}class c{constructor(e,a){this.text=e,this.type=a}static scheme(e){return new c(e,"SCHEME")}static host(e){return new c(e,"HOST")}static port(e){return new c(e,"PORT")}static path(e){return new c(e,"PATH")}static query(e){return new c(e,"QUERY")}}class u{constructor(e,a){this._text=e,this._textLength=e?e.length:0,this._currentState=null!=a?a:"SCHEME_OR_HOST",this._currentIndex=0}current(){return this._currentToken}next(){if(i(this))switch(this._currentState){case"SCHEME":(e=>{const a=(e=>n(e,(e=>(e=>{const a=e.charCodeAt(0);return a>=48&&57>=a||a>=65&&90>=a||a>=97&&122>=a})(e))))(e);e._currentToken=c.scheme(a),e._currentState=i(e)?"HOST":"DONE"})(this);break;case"SCHEME_OR_HOST":(e=>{const a=p(e,":","/","?");i(e)?":"===o(e)?"://"===r(e,3)?(e._currentToken=c.scheme(a),e._currentState="HOST"):(e._currentToken=c.host(a),e._currentState="PORT"):(e._currentToken=c.host(a),e._currentState="/"===o(e)?"PATH":"QUERY"):(e._currentToken=c.host(a),e._currentState="DONE")})(this);break;case"HOST":(e=>{"://"===r(e,3)&&s(e,3);const a=p(e,":","/","?");e._currentToken=c.host(a),e._currentState=i(e)?":"===o(e)?"PORT":"/"===o(e)?"PATH":"QUERY":"DONE"})(this);break;case"PORT":(e=>{":"===o(e)&&s(e);const a=p(e,"/","?");e._currentToken=c.port(a),e._currentState=i(e)?"/"===o(e)?"PATH":"QUERY":"DONE"})(this);break;case"PATH":(e=>{const a=p(e,"?");e._currentToken=c.path(a),e._currentState=i(e)?"QUERY":"DONE"})(this);break;case"QUERY":(e=>{"?"===o(e)&&s(e);const a=(e=>{let a="";return e._textLength>e._currentIndex&&(a=e._text.substring(e._currentIndex),e._currentIndex=e._textLength),a})(e);e._currentToken=c.query(a),e._currentState="DONE"})(this);break;default:throw Error("Unrecognized URLTokenizerState: "+this._currentState)}else this._currentToken=void 0;return!!this._currentToken}}})),x.register("aQqza",((e,t)=>{function i(e){return u.test(e)}function o(){return c.default()}function s(e,a,t,i){if(Array.isArray(e)||(e=[e]),!t||!i)return{[a]:e};const o={[a]:e};return o[m.XML_ATTRKEY]={[t]:i},o}function r(e){return g.test(e)}function n(e,a,t){return e&&a?e.split(a).join(t||""):e}function p(e){return"object"!=typeof e&&"function"!=typeof e||null===e}function d(e){return process.env[e]?process.env[e]:process.env[e.toLowerCase()]?process.env[e.toLowerCase()]:void 0}function l(e){return!("object"!=typeof e||null===e||Array.isArray(e)||e instanceof RegExp||e instanceof Date)}a(e.exports,"isNode",(()=>h)),a(e.exports,"isValidUuid",(()=>i)),a(e.exports,"generateUuid",(()=>o)),a(e.exports,"prepareXMLRootList",(()=>s)),a(e.exports,"isDuration",(()=>r)),a(e.exports,"replaceAll",(()=>n)),a(e.exports,"isPrimitiveType",(()=>p)),a(e.exports,"getEnvironmentValue",(()=>d)),a(e.exports,"isObject",(()=>l)),x("21nev");var m=x("kCpHd"),c=x("fptqj");const u=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/i,h="undefined"!=typeof process&&!!process.version&&!!process.versions&&!!process.versions.node,g=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/})),x.register("21nev",((e,t)=>{a(e.exports,"Constants",(()=>i));const i={coreHttpVersion:"2.2.4",HTTP:"http:",HTTPS:"https:",HTTP_PROXY:"HTTP_PROXY",HTTPS_PROXY:"HTTPS_PROXY",NO_PROXY:"NO_PROXY",ALL_PROXY:"ALL_PROXY",HttpConstants:{HttpVerbs:{PUT:"PUT",GET:"GET",DELETE:"DELETE",POST:"POST",MERGE:"MERGE",HEAD:"HEAD",PATCH:"PATCH"},StatusCodes:{TooManyRequests:429,ServiceUnavailable:503}},HeaderConstants:{AUTHORIZATION:"authorization",AUTHORIZATION_SCHEME:"Bearer",RETRY_AFTER:"Retry-After",USER_AGENT:"User-Agent"}}})),x.register("kCpHd",((e,t)=>{a(e.exports,"XML_ATTRKEY",(()=>i)),a(e.exports,"XML_CHARKEY",(()=>o));const i="$",o="_"})),x.register("fptqj",((e,t)=>{a(e.exports,"default",(()=>s));var i=x("aUnBU"),o=x("hEJXw"),s=(e,a,t)=>{const s=(e=e||{}).random||(e.rng||i.default)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,a){t=t||0;for(let e=0;16>e;++e)a[t+e]=s[e];return a}return o.default(s)}})),x.register("aUnBU",((t,i)=>{function o(){return r>s.length-16&&(e(n).randomFillSync(s),r=0),s.slice(r,r+=16)}a(t.exports,"default",(()=>o));const s=new Uint8Array(256);let r=s.length})),x.register("hEJXw",((e,t)=>{a(e.exports,"default",(()=>s));var i=x("dkb9B");const o=[];for(let e=0;256>e;++e)o.push((e+256).toString(16).substr(1));var s=(e,a=0)=>{const t=(o[e[a+0]]+o[e[a+1]]+o[e[a+2]]+o[e[a+3]]+"-"+o[e[a+4]]+o[e[a+5]]+"-"+o[e[a+6]]+o[e[a+7]]+"-"+o[e[a+8]]+o[e[a+9]]+"-"+o[e[a+10]]+o[e[a+11]]+o[e[a+12]]+o[e[a+13]]+o[e[a+14]]+o[e[a+15]]).toLowerCase();if(!i.default(t))throw TypeError("Stringified UUID is invalid");return t}})),x.register("dkb9B",((e,t)=>{a(e.exports,"default",(()=>o));var i=x("dUvnz"),o=e=>"string"==typeof e&&i.default.test(e)})),x.register("dUvnz",((e,t)=>{a(e.exports,"default",(()=>i));var i=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i})),x.register("9Jyks",(function(e,a){function o(e){if(!(this instanceof o))return new o(e);for(var a in this._overheadLength=0,this._valueLength=0,this._valuesToMeasure=[],r.call(this),e=e||{})this[a]=e[a]}var r=x("1GDCl"),n=p.parse,d=l.Stream,u=x("3oTNp"),h=x("zyeNR"),g=x("4ZN1M");e.exports=o,s.inherits(o,r),o.LINE_BREAK="\r\n",o.DEFAULT_CONTENT_TYPE="application/octet-stream",o.prototype.append=function(e,a,t){"string"==typeof(t=t||{})&&(t={filename:t});var i=r.prototype.append.bind(this);if("number"==typeof a&&(a=""+a),s.isArray(a))this._error(Error("Arrays are not supported."));else{var o=this._multiPartHeader(e,a,t),n=this._multiPartFooter();i(o),i(a),i(n),this._trackLength(o,a,t)}},o.prototype._trackLength=function(e,a,t){var i=0;null!=t.knownLength?i+=+t.knownLength:Buffer.isBuffer(a)?i=a.length:"string"==typeof a&&(i=Buffer.byteLength(a)),this._valueLength+=i,this._overheadLength+=Buffer.byteLength(e)+o.LINE_BREAK.length,a&&(a.path||a.readable&&a.hasOwnProperty("httpVersion")||a instanceof d)&&(t.knownLength||this._valuesToMeasure.push(a))},o.prototype._lengthRetriever=(e,a)=>{e.hasOwnProperty("fd")?null!=e.end&&e.end!=1/0&&null!=e.start?a(null,e.end+1-(e.start?e.start:0)):i.stat(e.path,((t,i)=>{t?a(t):a(null,i.size-(e.start?e.start:0))})):e.hasOwnProperty("httpVersion")?a(null,+e.headers["content-length"]):e.hasOwnProperty("httpModule")?(e.on("response",(t=>{e.pause(),a(null,+t.headers["content-length"])})),e.resume()):a("Unknown stream")},o.prototype._multiPartHeader=function(e,a,t){if("string"==typeof t.header)return t.header;var i,s=this._getContentDisposition(a,t),r=this._getContentType(a,t),n="",p={"Content-Disposition":["form-data",'name="'+e+'"'].concat(s||[]),"Content-Type":[].concat(r||[])};for(var d in"object"==typeof t.header&&g(p,t.header),p)p.hasOwnProperty(d)&&null!=(i=p[d])&&(Array.isArray(i)||(i=[i]),i.length&&(n+=d+": "+i.join("; ")+o.LINE_BREAK));return"--"+this.getBoundary()+o.LINE_BREAK+n+o.LINE_BREAK},o.prototype._getContentDisposition=(e,a)=>{var i,o;return"string"==typeof a.filepath?i=t.normalize(a.filepath).replace(/\\/g,"/"):a.filename||e.name||e.path?i=t.basename(a.filename||e.name||e.path):e.readable&&e.hasOwnProperty("httpVersion")&&(i=t.basename(e.client._httpMessage.path||"")),i&&(o='filename="'+i+'"'),o},o.prototype._getContentType=(e,a)=>{var t=a.contentType;return!t&&e.name&&(t=u.lookup(e.name)),!t&&e.path&&(t=u.lookup(e.path)),!t&&e.readable&&e.hasOwnProperty("httpVersion")&&(t=e.headers["content-type"]),t||!a.filepath&&!a.filename||(t=u.lookup(a.filepath||a.filename)),t||"object"!=typeof e||(t=o.DEFAULT_CONTENT_TYPE),t},o.prototype._multiPartFooter=function(){return function(e){var a=o.LINE_BREAK;0===this._streams.length&&(a+=this._lastBoundary()),e(a)}.bind(this)},o.prototype._lastBoundary=function(){return"--"+this.getBoundary()+"--"+o.LINE_BREAK},o.prototype.getHeaders=function(e){var a,t={"content-type":"multipart/form-data; boundary="+this.getBoundary()};for(a in e)e.hasOwnProperty(a)&&(t[a.toLowerCase()]=e[a]);return t},o.prototype.setBoundary=function(e){this._boundary=e},o.prototype.getBoundary=function(){return this._boundary||this._generateBoundary(),this._boundary},o.prototype.getBuffer=function(){for(var e=new Buffer.alloc(0),a=this.getBoundary(),t=0,i=this._streams.length;i>t;t++)"function"!=typeof this._streams[t]&&(e=Buffer.isBuffer(this._streams[t])?Buffer.concat([e,this._streams[t]]):Buffer.concat([e,Buffer.from(this._streams[t])]),"string"==typeof this._streams[t]&&this._streams[t].substring(2,a.length+2)===a||(e=Buffer.concat([e,Buffer.from(o.LINE_BREAK)])));return Buffer.concat([e,Buffer.from(this._lastBoundary())])},o.prototype._generateBoundary=function(){for(var e="--------------------------",a=0;24>a;a++)e+=Math.floor(10*Math.random()).toString(16);this._boundary=e},o.prototype.getLengthSync=function(){var e=this._overheadLength+this._valueLength;return this._streams.length&&(e+=this._lastBoundary().length),this.hasKnownLength()||this._error(Error("Cannot calculate proper length in synchronous way.")),e},o.prototype.hasKnownLength=function(){var e=!0;return this._valuesToMeasure.length&&(e=!1),e},o.prototype.getLength=function(e){var a=this._overheadLength+this._valueLength;this._streams.length&&(a+=this._lastBoundary().length),this._valuesToMeasure.length?h.parallel(this._valuesToMeasure,this._lengthRetriever,((t,i)=>{t?e(t):(i.forEach((e=>{a+=e})),e(null,a))})):process.nextTick(e.bind(this,null,a))},o.prototype.submit=function(e,a){var t,i,o={method:"post"};return"string"==typeof e?(e=n(e),i=g({port:e.port,path:e.pathname,host:e.hostname,protocol:e.protocol},o)):(i=g(e,o)).port||(i.port="https:"==i.protocol?443:80),i.headers=this.getHeaders(e.headers),t="https:"==i.protocol?c.request(i):m.request(i),this.getLength(function(e,i){if(e&&"Unknown stream"!==e)this._error(e);else if(i&&t.setHeader("Content-Length",i),this.pipe(t),a){var o,s=function(e,i){return t.removeListener("error",s),t.removeListener("response",o),a.call(this,e,i)};o=s.bind(this,null),t.on("error",s),t.on("response",o)}}.bind(this)),t},o.prototype._error=function(e){this.error||(this.error=e,this.pause(),this.emit("error",e))},o.prototype.toString=()=>"[object FormData]"})),x.register("1GDCl",(function(e,a){function t(){this.writable=!1,this.readable=!0,this.dataSize=0,this.maxDataSize=2097152,this.pauseStreams=!0,this._released=!1,this._streams=[],this._currentStream=null,this._insideLoop=!1,this._pendingNext=!1}var i=l.Stream,o=x("1pcxk");e.exports=t,s.inherits(t,i),t.create=function(e){var a=new this;for(var t in e=e||{})a[t]=e[t];return a},t.isStreamLike=e=>"function"!=typeof e&&"string"!=typeof e&&"boolean"!=typeof e&&"number"!=typeof e&&!Buffer.isBuffer(e),t.prototype.append=function(e){if(t.isStreamLike(e)){if(!(e instanceof o)){var a=o.create(e,{maxDataSize:1/0,pauseStream:this.pauseStreams});e.on("data",this._checkDataSize.bind(this)),e=a}this._handleErrors(e),this.pauseStreams&&e.pause()}return this._streams.push(e),this},t.prototype.pipe=function(e,a){return i.prototype.pipe.call(this,e,a),this.resume(),e},t.prototype._getNext=function(){if(this._currentStream=null,this._insideLoop)this._pendingNext=!0;else{this._insideLoop=!0;try{do{this._pendingNext=!1,this._realGetNext()}while(this._pendingNext)}finally{this._insideLoop=!1}}},t.prototype._realGetNext=function(){var e=this._streams.shift();void 0!==e?"function"==typeof e?e(function(e){t.isStreamLike(e)&&(e.on("data",this._checkDataSize.bind(this)),this._handleErrors(e)),this._pipeNext(e)}.bind(this)):this._pipeNext(e):this.end()},t.prototype._pipeNext=function(e){if(this._currentStream=e,t.isStreamLike(e))return e.on("end",this._getNext.bind(this)),void e.pipe(this,{end:!1});this.write(e),this._getNext()},t.prototype._handleErrors=function(e){var a=this;e.on("error",(e=>{a._emitError(e)}))},t.prototype.write=function(e){this.emit("data",e)},t.prototype.pause=function(){this.pauseStreams&&(this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.pause&&this._currentStream.pause(),this.emit("pause"))},t.prototype.resume=function(){this._released||(this._released=!0,this.writable=!0,this._getNext()),this.pauseStreams&&this._currentStream&&"function"==typeof this._currentStream.resume&&this._currentStream.resume(),this.emit("resume")},t.prototype.end=function(){this._reset(),this.emit("end")},t.prototype.destroy=function(){this._reset(),this.emit("close")},t.prototype._reset=function(){this.writable=!1,this._streams=[],this._currentStream=null},t.prototype._checkDataSize=function(){this._updateDataSize(),this.dataSize>this.maxDataSize&&this._emitError(Error("DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded."))},t.prototype._updateDataSize=function(){this.dataSize=0;var e=this;this._streams.forEach((a=>{a.dataSize&&(e.dataSize+=a.dataSize)})),this._currentStream&&this._currentStream.dataSize&&(this.dataSize+=this._currentStream.dataSize)},t.prototype._emitError=function(e){this._reset(),this.emit("error",e)}})),x.register("1pcxk",(function(e,a){function t(){this.source=null,this.dataSize=0,this.maxDataSize=1048576,this.pauseStream=!0,this._maxDataSizeExceeded=!1,this._released=!1,this._bufferedEvents=[]}var i=l.Stream;e.exports=t,s.inherits(t,i),t.create=function(e,a){var t=new this;for(var i in a=a||{})t[i]=a[i];t.source=e;var o=e.emit;return e.emit=function(){return t._handleEmit(arguments),o.apply(e,arguments)},e.on("error",(()=>{})),t.pauseStream&&e.pause(),t},Object.defineProperty(t.prototype,"readable",{configurable:!0,enumerable:!0,get(){return this.source.readable}}),t.prototype.setEncoding=function(){return this.source.setEncoding.apply(this.source,arguments)},t.prototype.resume=function(){this._released||this.release(),this.source.resume()},t.prototype.pause=function(){this.source.pause()},t.prototype.release=function(){this._released=!0,this._bufferedEvents.forEach(function(e){this.emit.apply(this,e)}.bind(this)),this._bufferedEvents=[]},t.prototype.pipe=function(){var e=i.prototype.pipe.apply(this,arguments);return this.resume(),e},t.prototype._handleEmit=function(e){this._released?this.emit.apply(this,e):("data"===e[0]&&(this.dataSize+=e[1].length,this._checkIfMaxDataSizeExceeded()),this._bufferedEvents.push(e))},t.prototype._checkIfMaxDataSizeExceeded=function(){this._maxDataSizeExceeded||this.dataSize>this.maxDataSize&&(this._maxDataSizeExceeded=!0,this.emit("error",Error("DelayedStream#maxDataSize of "+this.maxDataSize+" bytes exceeded.")))}})),x.register("3oTNp",((e,i)=>{var o,s,r,n;a(e.exports,"charset",(()=>o),(e=>o=e)),a(e.exports,"extensions",(()=>s),(e=>s=e)),a(e.exports,"lookup",(()=>r),(e=>r=e)),a(e.exports,"types",(()=>n),(e=>n=e));var p,d,l,m=x("b8145"),c=t.extname,u=/^\s*([^;\s]*)(?:;|\s|$)/,h=/^text\//i;o=e=>{if(!e||"string"!=typeof e)return!1;var a=u.exec(e),t=a&&m[a[1].toLowerCase()];return t&&t.charset?t.charset:!(!a||!h.test(a[1]))&&"UTF-8"},r=e=>{if(!e||"string"!=typeof e)return!1;var a=c("x."+e).toLowerCase().substr(1);return a&&n[a]||!1},p=s=Object.create(null),d=n=Object.create(null),l=["nginx","apache",void 0,"iana"],Object.keys(m).forEach((e=>{var a=m[e],t=a.extensions;if(t&&t.length){p[e]=t;for(var i=0;t.length>i;i++){var o=t[i];if(d[o]){var s=l.indexOf(m[d[o]].source),r=l.indexOf(a.source);if("application/octet-stream"!==d[o]&&(s>r||s===r&&"application/"===d[o].substr(0,12)))continue}d[o]=e}}}))})),x.register("b8145",((e,a)=>{e.exports=x("isurf")})),x.register("isurf",((e,a)=>{e.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana"},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/ecmascript":{"source":"iana","compressible":true,"extensions":["es","ecma"]},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"apache","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/load-control+xml":{"source":"iana","compressible":true},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":false,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["asc","sig"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"iana"},"application/reputon+json":{"source":"iana","compressible":true},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"iana"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana"},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/stix+json":{"source":"iana","compressible":true},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"iana","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"iana"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"iana"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"iana","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{"source":"iana","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"iana","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.geo+json":{"source":"iana","compressible":true},"application/vnd.geocube+xml":{"source":"iana","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.slides":{"source":"iana"},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"iana","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hl7cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"iana"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"iana","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"iana"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"iana","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"iana","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.youtube.yt":{"source":"iana"},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana"},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"iana"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/hsj2":{"source":"iana","extensions":["hsj2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpeg","jpg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"apache","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/news":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime"]},"message/s-http":{"source":"iana"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"iana"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/step":{"source":"iana"},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana"},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"iana"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","compressible":true},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["markdown","md"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"iana"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"iana"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')})),x.register("zyeNR",((e,a)=>{e.exports={parallel:x("lLzem"),serial:x("eD12k"),serialOrdered:x("3P3Ne")}})),x.register("lLzem",((e,a)=>{var t=x("1lTCu"),i=x("4ayBo"),o=x("7e0aC");e.exports=(e,a,s)=>{for(var r=i(e);(r.keyedList||e).length>r.index;)t(e,a,r,((e,a)=>{e?s(e,a):0!==Object.keys(r.jobs).length||s(null,r.results)})),r.index++;return o.bind(r,s)}})),x.register("1lTCu",((e,a)=>{var t=x("eNwin"),i=x("dSu4u");e.exports=(e,a,o,s)=>{var r=o.keyedList?o.keyedList[o.index]:o.index;o.jobs[r]=((e,a,i,o)=>2==e.length?e(i,t(o)):e(i,a,t(o)))(a,r,e[r],((e,a)=>{r in o.jobs&&(delete o.jobs[r],e?i(o):o.results[r]=a,s(e,o.results))}))}})),x.register("eNwin",((e,a)=>{var t=x("SEqCX");e.exports=e=>{var a=!1;return t((()=>{a=!0})),(i,o)=>{a?e(i,o):t((()=>{e(i,o)}))}}})),x.register("SEqCX",((e,a)=>{e.exports=e=>{var a="function"==typeof setImmediate?setImmediate:"object"==typeof process&&"function"==typeof process.nextTick?process.nextTick:null;a?a(e):setTimeout(e,0)}})),x.register("dSu4u",(function(e,a){function t(e){"function"==typeof this.jobs[e]&&this.jobs[e]()}e.exports=e=>{Object.keys(e.jobs).forEach(t.bind(e)),e.jobs={}}})),x.register("4ayBo",((e,a)=>{e.exports=(e,a)=>{var t=!Array.isArray(e),i={index:0,keyedList:t||a?Object.keys(e):null,jobs:{},results:t?{}:[],size:t?Object.keys(e).length:e.length};return a&&i.keyedList.sort(t?a:(t,i)=>a(e[t],e[i])),i}})),x.register("7e0aC",(function(e,a){var t=x("dSu4u"),i=x("eNwin");e.exports=function(e){Object.keys(this.jobs).length&&(this.index=this.size,t(this),i(e)(null,this.results))}})),x.register("eD12k",((e,a)=>{var t=x("3P3Ne");e.exports=(e,a,i)=>t(e,a,null,i)})),x.register("3P3Ne",((e,a)=>{function t(e,a){return a>e?-1:e>a?1:0}var i=x("1lTCu"),o=x("4ayBo"),s=x("7e0aC");e.exports=(e,a,t,r)=>{var n=o(e,t);return i(e,a,n,(function t(o,s){o?r(o,s):(n.index++,(n.keyedList||e).length>n.index?i(e,a,n,t):r(null,n.results))})),s.bind(n,r)},e.exports.ascending=t,e.exports.descending=(e,a)=>-1*t(e,a)})),x.register("4ZN1M",((e,a)=>{e.exports=(e,a)=>(Object.keys(a).forEach((t=>{e[t]=e[t]||a[t]})),e)})),x.register("7nYXX",(function(e,t){a(e.exports,"RestError",(()=>r));var i=x("ay3LR"),o=x("2pwIy");const s=new i.Sanitizer;class r extends Error{constructor(e,a,t,i,o){super(e),this.name="RestError",this.code=a,this.statusCode=t,this.request=i,this.response=o,Object.setPrototypeOf(this,r.prototype)}[o.custom](){return`RestError: ${this.message} \n ${s.sanitize(this)}`}}r.REQUEST_SEND_ERROR="REQUEST_SEND_ERROR",r.PARSE_ERROR="PARSE_ERROR"})),x.register("ay3LR",(function(e,t){a(e.exports,"Sanitizer",(()=>p));var i=x("8asXx"),o=x("aQqza");const s="REDACTED",r=["x-ms-client-request-id","x-ms-return-client-request-id","x-ms-useragent","x-ms-correlation-request-id","x-ms-request-id","client-request-id","ms-cv","return-client-request-id","traceparent","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Origin","Accept","Accept-Encoding","Cache-Control","Connection","Content-Length","Content-Type","Date","ETag","Expires","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","Last-Modified","Pragma","Request-Id","Retry-After","Server","Transfer-Encoding","User-Agent"],n=["api-version"];class p{constructor({allowedHeaderNames:e=[],allowedQueryParameters:a=[]}={}){e=Array.isArray(e)?r.concat(e):r,a=Array.isArray(a)?n.concat(a):n,this.allowedHeaderNames=new Set(e.map((e=>e.toLowerCase()))),this.allowedQueryParameters=new Set(a.map((e=>e.toLowerCase())))}sanitize(e){const a=new Set;return JSON.stringify(e,((e,t)=>{if(t instanceof Error)return Object.assign(Object.assign({},t),{name:t.name,message:t.message});if("_headersMap"===e)return this.sanitizeHeaders(t);if("url"===e)return this.sanitizeUrl(t);if("query"===e)return this.sanitizeQuery(t);if("body"!==e&&"response"!==e&&"operationSpec"!==e){if(Array.isArray(t)||o.isObject(t)){if(a.has(t))return"[Circular]";a.add(t)}return t}}),2)}sanitizeHeaders(e){return this.sanitizeObject(e,this.allowedHeaderNames,((e,a)=>e[a].value))}sanitizeQuery(e){return this.sanitizeObject(e,this.allowedQueryParameters,((e,a)=>e[a]))}sanitizeObject(e,a,t){if("object"!=typeof e||null===e)return e;const i={};for(const o of Object.keys(e))i[o]=a.has(o.toLowerCase())?t(e,o):s;return i}sanitizeUrl(e){if("string"!=typeof e||null===e)return e;const a=i.URLBuilder.parse(e),t=a.getQuery();if(!t)return e;const o=i.URLQuery.parse(t);for(const e of o.keys())this.allowedQueryParameters.has(e.toLowerCase())||o.set(e,s);return a.setQuery(""+o),""+a}}})),x.register("2pwIy",((e,t)=>{a(e.exports,"custom",(()=>i));const i=s.inspect.custom})),x.register("kZQvg",((e,t)=>{a(e.exports,"logger",(()=>i));const i=x("5AktE").createClientLogger("core-http")})),x.register("5AktE",((e,t)=>{function i(e){const a=c.extend(e);return o(c,a),{error:s(a,"error"),warning:s(a,"warning"),info:s(a,"info"),verbose:s(a,"verbose")}}function o(e,a){a.log=(...a)=>{e.log(...a)}}function s(e,a){const t=Object.assign(e.extend(a),{level:a});if(o(e,t),r(t)){const e=p.default.disable();p.default.enable(e+","+t.namespace)}return d.add(t),t}function r(e){return!(!m||h[e.level]>h[m])}function n(e){return u.includes(e)}a(e.exports,"createClientLogger",(()=>i));var p=x("1aN9U");const d=new Set,l="undefined"!=typeof process&&process.env&&process.env.AZURE_LOG_LEVEL||void 0;let m;const c=p.default("azure");c.log=(...e)=>{p.default.log(...e)};const u=["verbose","info","warning","error"];l&&(n(l)?(e=>{if(e&&!n(e))throw Error(`Unknown log level '${e}'. Acceptable values: ${u.join(",")}`);m=e;const a=[];for(const e of d)r(e)&&a.push(e.namespace);p.default.enable(a.join(","))})(l):console.error(`AZURE_LOG_LEVEL set to unknown log level '${l}'; logging is not enabled. Acceptable values: ${u.join(", ")}.`));const h={verbose:400,info:300,warning:200,error:100}})),x.register("1aN9U",(function(e,t){function i(e){l=e,m=[],c=[];const a=e.split(",").map((e=>e.trim().replace(/\*/g,".*?")));for(const e of a)e.startsWith("-")?c.push(RegExp(`^${e.substr(1)}$`)):m.push(RegExp(`^${e}$`));for(const e of u)e.enabled=o(e.namespace)}function o(e){if(e.endsWith("*"))return!0;for(const a of c)if(a.test(e))return!1;for(const a of m)if(a.test(e))return!0;return!1}function s(e){const a=Object.assign(((...t)=>{a.enabled&&(t.length>0&&(t[0]=`${e} ${t[0]}`),a.log(...t))}),{enabled:o(e),destroy:r,log:h.log,namespace:e,extend:n});return u.push(a),a}function r(){const e=u.indexOf(this);return e>=0&&(u.splice(e,1),!0)}function n(e){const a=s(`${this.namespace}:${e}`);return a.log=this.log,a}a(e.exports,"default",(()=>g));var p=x("lmJIF");const d="undefined"!=typeof process&&process.env&&process.env.DEBUG||void 0;let l,m=[],c=[];const u=[];d&&i(d);const h=Object.assign((e=>s(e)),{enable:i,enabled:o,disable(){const e=l||"";return i(""),e},log:p.log});var g=h})),x.register("lmJIF",((t,i)=>{function r(a,...t){process.stderr.write(`${e(s).format(a,...t)}${o.EOL}`)}a(t.exports,"log",(()=>r))})),x.register("53stZ",(function(t,i){function o(e,a,t){Error.call(this,e),this.message=e,this.type=a,t&&(this.code=this.errno=t.code),Error.captureStackTrace(this,this.constructor)}function s(a){var t=this,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=i.size;let r=void 0===s?0:s;var p=i.timeout;let m=void 0===p?0:p;null==a?a=null:n(a)?a=Buffer.from(""+a):d(a)||Buffer.isBuffer(a)||("[object ArrayBuffer]"==={}.toString.call(a)?a=Buffer.from(a):ArrayBuffer.isView(a)?a=Buffer.from(a.buffer,a.byteOffset,a.byteLength):a instanceof e(l)||(a=Buffer.from(a+""))),this[I]={body:a,disturbed:!1,error:null},this.size=r,this.timeout=m,a instanceof e(l)&&a.on("error",(e=>{const a="AbortError"===e.name?e:new o(`Invalid response body while trying to fetch ${t.url}: ${e.message}`,"system",e);t[I].error=a}))}function r(){var a=this;if(this[I].disturbed)return s.Promise.reject(new TypeError("body used already for: "+this.url));if(this[I].disturbed=!0,this[I].error)return s.Promise.reject(this[I].error);let t=this.body;if(null===t)return s.Promise.resolve(Buffer.alloc(0));if(d(t)&&(t=t.stream()),Buffer.isBuffer(t))return s.Promise.resolve(t);if(!(t instanceof e(l)))return s.Promise.resolve(Buffer.alloc(0));let i=[],r=0,n=!1;return new s.Promise(((e,s)=>{let p;a.timeout&&(p=setTimeout((()=>{n=!0,s(new o(`Response timeout while trying to fetch ${a.url} (over ${a.timeout}ms)`,"body-timeout"))}),a.timeout)),t.on("error",(e=>{"AbortError"===e.name?(n=!0,s(e)):s(new o(`Invalid response body while trying to fetch ${a.url}: ${e.message}`,"system",e))})),t.on("data",(e=>{if(!n&&null!==e){if(a.size&&r+e.length>a.size)return n=!0,void s(new o(`content size at ${a.url} over limit: ${a.size}`,"max-size"));r+=e.length,i.push(e)}})),t.on("end",(()=>{if(!n){clearTimeout(p);try{e(Buffer.concat(i,r))}catch(e){s(new o(`Could not create Buffer from response body for ${a.url}: ${e.message}`,"system",e))}}}))}))}function n(e){return"object"==typeof e&&"function"==typeof e.append&&"function"==typeof e.delete&&"function"==typeof e.get&&"function"==typeof e.getAll&&"function"==typeof e.has&&"function"==typeof e.set&&("URLSearchParams"===e.constructor.name||"[object URLSearchParams]"==={}.toString.call(e)||"function"==typeof e.sort)}function d(e){return"object"==typeof e&&"function"==typeof e.arrayBuffer&&"string"==typeof e.type&&"function"==typeof e.stream&&"function"==typeof e.constructor&&"string"==typeof e.constructor.name&&/^(Blob|File)$/.test(e.constructor.name)&&/^(Blob|File)$/.test(e[Symbol.toStringTag])}function u(a){let t,i,o=a.body;if(a.bodyUsed)throw Error("cannot clone body after it is used");return o instanceof e(l)&&"function"!=typeof o.getBoundary&&(t=new A,i=new A,o.pipe(t),o.pipe(i),a[I].body=t,o=i),o}function g(a){return null===a?null:"string"==typeof a?"text/plain;charset=UTF-8":n(a)?"application/x-www-form-urlencoded;charset=UTF-8":d(a)?a.type||null:Buffer.isBuffer(a)||"[object ArrayBuffer]"==={}.toString.call(a)||ArrayBuffer.isView(a)?null:"function"==typeof a.getBoundary?"multipart/form-data;boundary="+a.getBoundary():a instanceof e(l)?null:"text/plain;charset=UTF-8"}function f(e){const a=e.body;return null===a?0:d(a)?a.size:Buffer.isBuffer(a)?a.length:a&&"function"==typeof a.getLengthSync&&(a._lengthRetrievers&&0==a._lengthRetrievers.length||a.hasKnownLength&&a.hasKnownLength())?a.getLengthSync():null}function y(e){if(B.test(e=""+e)||""===e)throw new TypeError(e+" is not a legal HTTP header name")}function v(e){if(q.test(e=""+e))throw new TypeError(e+" is not a legal HTTP header value")}function w(e,a){a=a.toLowerCase();for(const t in e)if(t.toLowerCase()===a)return t}function N(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"key+value";const t=Object.keys(e[M]).sort();return t.map("key"===a?e=>e.toLowerCase():"value"===a?a=>e[M][a].join(", "):a=>[a.toLowerCase(),e[M][a].join(", ")])}function k(e,a){const t=Object.create(V);return t[H]={target:e,kind:a,index:0},t}function S(e){const a=Object.assign({__proto__:null},e[M]),t=w(e[M],"Host");return void 0!==t&&(a[t]=a[t][0]),a}function j(e){return/^[a-zA-Z][a-zA-Z\d+\-.]*:/.exec(e)&&(e=""+new G(e)),X(e)}function C(e){return"object"==typeof e&&"object"==typeof e[$]}function T(e){Error.call(this,e),this.type="aborted",this.message=e,Error.captureStackTrace(this,this.constructor)}function P(a,t){if(!P.Promise)throw Error("native promise missing, set fetch.Promise to your favorite alternative");return s.Promise=P.Promise,new P.Promise(((i,s)=>{function r(){x.abort(),g&&g.removeEventListener("abort",b),clearTimeout(w)}const n=new Y(a,t),p=(a=>{const t=a[$].parsedURL,i=new L(a[$].headers);if(i.has("Accept")||i.set("Accept","*/*"),!t.protocol||!t.hostname)throw new TypeError("Only absolute URLs are supported");if(!/^https?:$/.test(t.protocol))throw new TypeError("Only HTTP(S) protocols are supported");if(a.signal&&a.body instanceof e(l).Readable&&!Q)throw Error("Cancellation of streamed requests with AbortSignal is not supported in node < 8");let o=null;if(null==a.body&&/^(POST|PUT)$/i.test(a.method)&&(o="0"),null!=a.body){const e=f(a);"number"==typeof e&&(o=e+"")}o&&i.set("Content-Length",o),i.has("User-Agent")||i.set("User-Agent","node-fetch/1.0 (+https://github.com/bitinn/node-fetch)"),a.compress&&!i.has("Accept-Encoding")&&i.set("Accept-Encoding","gzip,deflate");let s=a.agent;return"function"==typeof s&&(s=s(t)),i.has("Connection")||s||i.set("Connection","close"),Object.assign({},t,{method:a.method,headers:S(i),agent:s})})(n),u=e("https:"===p.protocol?c:m).request,g=n.signal;let y=null;const v=()=>{let a=new T("The user aborted a request.");s(a),n.body&&n.body instanceof e(l).Readable&&n.body.destroy(a),y&&y.body&&y.body.emit("error",a)};if(g&&g.aborted)return void v();const b=()=>{v(),r()},x=u(p);let w;g&&g.addEventListener("abort",b),n.timeout&&x.once("socket",(e=>{w=setTimeout((()=>{s(new o("network timeout at: "+n.url,"request-timeout")),r()}),n.timeout)})),x.on("error",(e=>{s(new o(`request to ${n.url} failed, reason: ${e.message}`,"system",e)),r()})),x.on("response",(a=>{clearTimeout(w);const t=(e=>{const a=new L;for(const t of Object.keys(e))if(!B.test(t))if(Array.isArray(e[t]))for(const i of e[t])q.test(i)||(void 0===a[M][t]?a[M][t]=[i]:a[M][t].push(i));else q.test(e[t])||(a[M][t]=[e[t]]);return a})(a.headers);if(P.isRedirect(a.statusCode)){const e=t.get("Location");let p=null;try{p=null===e?null:""+new J(e,n.url)}catch(a){if("manual"!==n.redirect)return s(new o("uri requested responds with an invalid redirect URL: "+e,"invalid-redirect")),void r()}switch(n.redirect){case"error":return s(new o("uri requested responds with a redirect, redirect mode is set to error: "+n.url,"no-redirect")),void r();case"manual":if(null!==p)try{t.set("Location",p)}catch(e){s(e)}break;case"follow":if(null===p)break;if(n.counter>=n.follow)return s(new o("maximum redirect reached at: "+n.url,"max-redirect")),void r();const e={headers:new L(n.headers),follow:n.follow,counter:n.counter+1,agent:n.agent,compress:n.compress,method:n.method,body:n.body,signal:n.signal,timeout:n.timeout,size:n.size};if(!((e,a)=>{const t=new J(a).hostname,i=new J(e).hostname;return t===i||"."===t[t.length-i.length-1]&&t.endsWith(i)})(n.url,p))for(const a of["authorization","www-authenticate","cookie","cookie2"])e.headers.delete(a);return 303!==a.statusCode&&n.body&&null===f(n)?(s(new o("Cannot follow redirect with body being a readable stream","unsupported-redirect")),void r()):(303!==a.statusCode&&(301!==a.statusCode&&302!==a.statusCode||"POST"!==n.method)||(e.method="GET",e.body=void 0,e.headers.delete("content-length")),i(P(new Y(p,e))),void r())}}a.once("end",(()=>{g&&g.removeEventListener("abort",b)}));let p=a.pipe(new Z);const d={url:n.url,status:a.statusCode,statusText:a.statusMessage,headers:t,size:n.size,timeout:n.timeout,counter:n.counter},l=t.get("Content-Encoding");if(!n.compress||"HEAD"===n.method||null===l||204===a.statusCode||304===a.statusCode)return y=new K(p,d),void i(y);const m={flush:e(h).Z_SYNC_FLUSH,finishFlush:e(h).Z_SYNC_FLUSH};if("gzip"==l||"x-gzip"==l)return p=p.pipe(e(h).createGunzip(m)),y=new K(p,d),void i(y);if("deflate"!=l&&"x-deflate"!=l){if("br"==l&&"function"==typeof e(h).createBrotliDecompress)return p=p.pipe(e(h).createBrotliDecompress()),y=new K(p,d),void i(y);y=new K(p,d),i(y)}else a.pipe(new Z).once("data",(a=>{p=p.pipe(8==(15&a[0])?e(h).createInflate():e(h).createInflateRaw()),y=new K(p,d),i(y)}))})),((e,a)=>{const t=a.body;null===t?e.end():d(t)?t.stream().pipe(e):Buffer.isBuffer(t)?(e.write(t),e.end()):t.pipe(e)})(x,n)}))}a(t.exports,"default",(()=>ee));var E=x("8kpQS");const z=e(l).Readable,_=Symbol(),O=Symbol();class R{constructor(){this[O]="";const e=arguments[0],a=arguments[1],t=[];let i=0;if(e){const a=e,o=+a.length;for(let e=0;o>e;e++){const o=a[e];let s;s=o instanceof Buffer?o:ArrayBuffer.isView(o)?Buffer.from(o.buffer,o.byteOffset,o.byteLength):o instanceof ArrayBuffer?Buffer.from(o):o instanceof R?o[_]:Buffer.from("string"==typeof o?o:o+""),i+=s.length,t.push(s)}}this[_]=Buffer.concat(t);let o=a&&void 0!==a.type&&(a.type+"").toLowerCase();o&&!/[^\u0020-\u007E]/.test(o)&&(this[O]=o)}get size(){return this[_].length}get type(){return this[O]}text(){return Promise.resolve(""+this[_])}arrayBuffer(){const e=this[_],a=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength);return Promise.resolve(a)}stream(){const e=new z;return e._read=()=>{},e.push(this[_]),e.push(null),e}toString(){return"[object Blob]"}slice(){const e=this.size,a=arguments[0],t=arguments[1];let i,o;i=void 0===a?0:0>a?Math.max(e+a,0):Math.min(a,e),o=void 0===t?e:0>t?Math.max(e+t,0):Math.min(t,e);const s=this[_].slice(i,i+Math.max(o-i,0)),r=new R([],{type:arguments[2]});return r[_]=s,r}}let D;Object.defineProperties(R.prototype,{size:{enumerable:!0},type:{enumerable:!0},slice:{enumerable:!0}}),Object.defineProperty(R.prototype,Symbol.toStringTag,{value:"Blob",writable:!1,enumerable:!1,configurable:!0}),(o.prototype=Object.create(Error.prototype)).constructor=o,o.prototype.name="FetchError";try{D=$1402515bac0e0c94$import$d8738670c721d955$9c68d69a4c5bbcf9}catch(e){}const I=Symbol(),A=e(l).PassThrough;s.prototype={get body(){return this[I].body},get bodyUsed(){return this[I].disturbed},arrayBuffer(){return r.call(this).then((e=>e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength)))},blob(){let e=this.headers&&this.headers.get("content-type")||"";return r.call(this).then((a=>Object.assign(new R([],{type:e.toLowerCase()}),{[_]:a})))},json(){var e=this;return r.call(this).then((a=>{try{return JSON.parse(""+a)}catch(a){return s.Promise.reject(new o(`invalid json response body at ${e.url} reason: ${a.message}`,"invalid-json"))}}))},text(){return r.call(this).then((e=>""+e))},buffer(){return r.call(this)},textConverted(){var e=this;return r.call(this).then((a=>((e,a)=>{if("function"!=typeof D)throw Error("The package `encoding` must be installed to use the textConverted() function");const t=a.get("content-type");let i,o,s="utf-8";return t&&(i=/charset=([^;]*)/i.exec(t)),o=""+e.slice(0,1024),!i&&o&&(i=/{for(const a of Object.getOwnPropertyNames(s.prototype))a in e||Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(s.prototype,a))},s.Promise=b.Promise;const B=/[^\^_`a-zA-Z\-0-9!#$%&'*+.|~]/,q=/[^\t\x20-\x7e\x80-\xff]/,M=Symbol();class L{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:void 0;if(this[M]=Object.create(null),e instanceof L){const a=e.raw(),t=Object.keys(a);for(const e of t)for(const t of a[e])this.append(e,t)}else if(null==e);else{if("object"!=typeof e)throw new TypeError("Provided initializer must be an object");{const a=e[Symbol.iterator];if(null!=a){if("function"!=typeof a)throw new TypeError("Header pairs must be iterable");const t=[];for(const a of e){if("object"!=typeof a||"function"!=typeof a[Symbol.iterator])throw new TypeError("Each header pair must be iterable");t.push(Array.from(a))}for(const e of t){if(2!==e.length)throw new TypeError("Each header pair must be a name/value tuple");this.append(e[0],e[1])}}else for(const a of Object.keys(e))this.append(a,e[a])}}}get(e){y(e=""+e);const a=w(this[M],e);return void 0===a?null:this[M][a].join(", ")}forEach(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,t=N(this),i=0;for(;t.length>i;){var o=t[i];e.call(a,o[1],o[0],this),t=N(this),i++}}set(e,a){a=""+a,y(e=""+e),v(a);const t=w(this[M],e);this[M][void 0!==t?t:e]=[a]}append(e,a){a=""+a,y(e=""+e),v(a);const t=w(this[M],e);void 0!==t?this[M][t].push(a):this[M][e]=[a]}has(e){return y(e=""+e),void 0!==w(this[M],e)}delete(e){y(e=""+e);const a=w(this[M],e);void 0!==a&&delete this[M][a]}raw(){return this[M]}keys(){return k(this,"key")}values(){return k(this,"value")}[Symbol.iterator](){return k(this,"key+value")}}L.prototype.entries=L.prototype[Symbol.iterator],Object.defineProperty(L.prototype,Symbol.toStringTag,{value:"Headers",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(L.prototype,{get:{enumerable:!0},forEach:{enumerable:!0},set:{enumerable:!0},append:{enumerable:!0},has:{enumerable:!0},delete:{enumerable:!0},keys:{enumerable:!0},values:{enumerable:!0},entries:{enumerable:!0}});const H=Symbol(),V=Object.setPrototypeOf({next(){if(!this||Object.getPrototypeOf(this)!==V)throw new TypeError("Value of `this` is not a HeadersIterator");var e=this[H];const a=e.index,t=N(e.target,e.kind);return t.length>a?(this[H].index=a+1,{value:t[a],done:!1}):{value:void 0,done:!0}}},Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));Object.defineProperty(V,Symbol.toStringTag,{value:"HeadersIterator",writable:!1,enumerable:!1,configurable:!0});const U=Symbol(),F=e(m).STATUS_CODES;class K{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};s.call(this,e,a);const t=a.status||200,i=new L(a.headers);if(null!=e&&!i.has("Content-Type")){const a=g(e);a&&i.append("Content-Type",a)}this[U]={url:a.url,status:t,statusText:a.statusText||F[t],headers:i,counter:a.counter}}get url(){return this[U].url||""}get status(){return this[U].status}get ok(){return this[U].status>=200&&300>this[U].status}get redirected(){return this[U].counter>0}get statusText(){return this[U].statusText}get headers(){return this[U].headers}clone(){return new K(u(this),{url:this.url,status:this.status,statusText:this.statusText,headers:this.headers,ok:this.ok,redirected:this.redirected})}}s.mixIn(K.prototype),Object.defineProperties(K.prototype,{url:{enumerable:!0},status:{enumerable:!0},ok:{enumerable:!0},redirected:{enumerable:!0},statusText:{enumerable:!0},headers:{enumerable:!0},clone:{enumerable:!0}}),Object.defineProperty(K.prototype,Symbol.toStringTag,{value:"Response",writable:!1,enumerable:!1,configurable:!0});const $=Symbol(),G=e(p).URL||e(E).URL,X=e(p).parse,W=e(p).format,Q="destroy"in e(l).Readable.prototype;class Y{constructor(e){let a,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};C(e)?a=j(e.url):(a=j(e&&e.href?e.href:""+e),e={});let i=t.method||e.method||"GET";if(i=i.toUpperCase(),(null!=t.body||C(e)&&null!==e.body)&&("GET"===i||"HEAD"===i))throw new TypeError("Request with GET/HEAD method cannot have body");let o=null!=t.body?t.body:C(e)&&null!==e.body?u(e):null;s.call(this,o,{timeout:t.timeout||e.timeout||0,size:t.size||e.size||0});const r=new L(t.headers||e.headers||{});if(null!=o&&!r.has("Content-Type")){const e=g(o);e&&r.append("Content-Type",e)}let n=C(e)?e.signal:null;if("signal"in t&&(n=t.signal),null!=n&&!(e=>{const a=e&&"object"==typeof e&&Object.getPrototypeOf(e);return!(!a||"AbortSignal"!==a.constructor.name)})(n))throw new TypeError("Expected signal to be an instanceof AbortSignal");this[$]={method:i,redirect:t.redirect||e.redirect||"follow",headers:r,parsedURL:a,signal:n},this.follow=void 0!==t.follow?t.follow:void 0!==e.follow?e.follow:20,this.compress=void 0!==t.compress?t.compress:void 0===e.compress||e.compress,this.counter=t.counter||e.counter||0,this.agent=t.agent||e.agent}get method(){return this[$].method}get url(){return W(this[$].parsedURL)}get headers(){return this[$].headers}get redirect(){return this[$].redirect}get signal(){return this[$].signal}clone(){return new Y(this)}}s.mixIn(Y.prototype),Object.defineProperty(Y.prototype,Symbol.toStringTag,{value:"Request",writable:!1,enumerable:!1,configurable:!0}),Object.defineProperties(Y.prototype,{method:{enumerable:!0},url:{enumerable:!0},headers:{enumerable:!0},redirect:{enumerable:!0},clone:{enumerable:!0},signal:{enumerable:!0}}),(T.prototype=Object.create(Error.prototype)).constructor=T,T.prototype.name="AbortError";const J=e(p).URL||e(E).URL,Z=e(l).PassThrough;P.isRedirect=e=>301===e||302===e||303===e||307===e||308===e,P.Promise=b.Promise;var ee=P})),x.register("8kpQS",((e,t)=>{var i,o,s,r,n,p,d,l,m;a(e.exports,"URL",(()=>i),(e=>i=e)),a(e.exports,"serializeURL",(()=>o),(e=>o=e)),a(e.exports,"serializeURLOrigin",(()=>s),(e=>s=e)),a(e.exports,"basicURLParse",(()=>r),(e=>r=e)),a(e.exports,"setTheUsername",(()=>n),(e=>n=e)),a(e.exports,"setThePassword",(()=>p),(e=>p=e)),a(e.exports,"serializeHost",(()=>d),(e=>d=e)),a(e.exports,"serializeInteger",(()=>l),(e=>l=e)),a(e.exports,"parseURL",(()=>m),(e=>m=e)),i=x("kbXuP").interface,o=x("lRcCk").serializeURL,s=x("lRcCk").serializeURLOrigin,r=x("lRcCk").basicURLParse,n=x("lRcCk").setTheUsername,p=x("lRcCk").setThePassword,d=x("lRcCk").serializeHost,l=x("lRcCk").serializeInteger,m=x("lRcCk").parseURL})),x.register("kbXuP",(function(e,a){"use strict";function t(a){if(!this||this[r]||!(this instanceof t))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.");if(1>arguments.length)throw new TypeError("Failed to construct 'URL': 1 argument required, but only "+arguments.length+" present.");const o=[];for(let e=0;arguments.length>e&&2>e;++e)o[e]=arguments[e];o[0]=i.USVString(o[0]),void 0!==o[1]&&(o[1]=i.USVString(o[1])),e.exports.setup(this,o)}var i=x("iCfQ6"),o=x("i2ozd"),s=x("fkm2d");const r=o.implSymbol;t.prototype.toJSON=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");const a=[];for(let e=0;arguments.length>e&&0>e;++e)a[e]=arguments[e];return this[r].toJSON.apply(this[r],a)},Object.defineProperty(t.prototype,"href",{get(){return this[r].href},set(e){e=i.USVString(e),this[r].href=e},enumerable:!0,configurable:!0}),t.prototype.toString=function(){if(!this||!e.exports.is(this))throw new TypeError("Illegal invocation");return this.href},Object.defineProperty(t.prototype,"origin",{get(){return this[r].origin},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"protocol",{get(){return this[r].protocol},set(e){e=i.USVString(e),this[r].protocol=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"username",{get(){return this[r].username},set(e){e=i.USVString(e),this[r].username=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"password",{get(){return this[r].password},set(e){e=i.USVString(e),this[r].password=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"host",{get(){return this[r].host},set(e){e=i.USVString(e),this[r].host=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hostname",{get(){return this[r].hostname},set(e){e=i.USVString(e),this[r].hostname=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"port",{get(){return this[r].port},set(e){e=i.USVString(e),this[r].port=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"pathname",{get(){return this[r].pathname},set(e){e=i.USVString(e),this[r].pathname=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"search",{get(){return this[r].search},set(e){e=i.USVString(e),this[r].search=e},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,"hash",{get(){return this[r].hash},set(e){e=i.USVString(e),this[r].hash=e},enumerable:!0,configurable:!0}),e.exports={is:e=>!!e&&e[r]instanceof s.implementation,create(e,a){let i=Object.create(t.prototype);return this.setup(i,e,a),i},setup(e,a,t){t||(t={}),t.wrapper=e,e[r]=new s.implementation(a,t),e[r][o.wrapperSymbol]=e},interface:t,expose:{Window:{URL:t},Worker:{URL:t}}}})),x.register("iCfQ6",((e,a)=>{"use strict";function t(e){return 0>e?-1:1}function i(e,a){a.unsigned||--e;const i=a.unsigned?0:-Math.pow(2,e),o=Math.pow(2,e)-1,s=Math.pow(2,a.moduloBitLength?a.moduloBitLength:e),r=Math.pow(2,a.moduloBitLength?a.moduloBitLength-1:e-1);return(e,n)=>{n||(n={});let p=+e;if(n.enforceRange){if(!Number.isFinite(p))throw new TypeError("Argument is not a finite number");if(p=t(p)*Math.floor(Math.abs(p)),i>p||p>o)throw new TypeError("Argument is not in byte range");return p}if(!isNaN(p)&&n.clamp)return p=(e=>e%1==.5&&0==(1&e)?Math.floor(e):Math.round(e))(p),i>p&&(p=i),p>o&&(p=o),p;if(!Number.isFinite(p)||0===p)return 0;if(p=t(p)*Math.floor(Math.abs(p)),p%=s,!a.unsigned&&p>=r)return p-s;if(a.unsigned)if(0>p)p+=s;else if(-0===p)return 0;return p}}var o={};e.exports=o,o.void=()=>{},o.boolean=e=>!!e,o.byte=i(8,{unsigned:!1}),o.octet=i(8,{unsigned:!0}),o.short=i(16,{unsigned:!1}),o["unsigned short"]=i(16,{unsigned:!0}),o.long=i(32,{unsigned:!1}),o["unsigned long"]=i(32,{unsigned:!0}),o["long long"]=i(32,{unsigned:!1,moduloBitLength:64}),o["unsigned long long"]=i(32,{unsigned:!0,moduloBitLength:64}),o.double=e=>{const a=+e;if(!Number.isFinite(a))throw new TypeError("Argument is not a finite floating-point value");return a},o["unrestricted double"]=e=>{const a=+e;if(isNaN(a))throw new TypeError("Argument is NaN");return a},o.float=o.double,o["unrestricted float"]=o["unrestricted double"],o.DOMString=(e,a)=>(a||(a={}),a.treatNullAsEmptyString&&null===e?"":e+""),o.ByteString=(e,a)=>{const t=e+"";let i;for(let e=0;void 0!==(i=t.codePointAt(e));++e)if(i>255)throw new TypeError("Argument is not a valid bytestring");return t},o.USVString=e=>{const a=e+"",t=a.length,i=[];for(let e=0;t>e;++e){const o=a.charCodeAt(e);if(55296>o||o>57343)i.push(String.fromCodePoint(o));else if(56320>o||o>57343)if(e===t-1)i.push(String.fromCodePoint(65533));else{const t=a.charCodeAt(e+1);56320>t||t>57343?i.push(String.fromCodePoint(65533)):(i.push(String.fromCodePoint(65536+1024*(1023&o)+(1023&t))),++e)}else i.push(String.fromCodePoint(65533))}return i.join("")},o.Date=(e,a)=>{if(!(e instanceof Date))throw new TypeError("Argument is not a Date object");if(!isNaN(e))return e},o.RegExp=(e,a)=>(e instanceof RegExp||(e=RegExp(e)),e)})),x.register("i2ozd",((e,t)=>{var i,o;a(e.exports,"wrapperSymbol",(()=>i),(e=>i=e)),a(e.exports,"implSymbol",(()=>o),(e=>o=e)),i=Symbol(),o=Symbol()})),x.register("fkm2d",(function(e,t){var i;a(e.exports,"implementation",(()=>i),(e=>i=e));var o=x("lRcCk");i=class{constructor(e){const a=e[0],t=e[1];let i=null;if(void 0!==t&&(i=o.basicURLParse(t),"failure"===i))throw new TypeError("Invalid base URL");const s=o.basicURLParse(a,{baseURL:i});if("failure"===s)throw new TypeError("Invalid URL");this._url=s}get href(){return o.serializeURL(this._url)}set href(e){const a=o.basicURLParse(e);if("failure"===a)throw new TypeError("Invalid URL");this._url=a}get origin(){return o.serializeURLOrigin(this._url)}get protocol(){return this._url.scheme+":"}set protocol(e){o.basicURLParse(e+":",{url:this._url,stateOverride:"scheme start"})}get username(){return this._url.username}set username(e){o.cannotHaveAUsernamePasswordPort(this._url)||o.setTheUsername(this._url,e)}get password(){return this._url.password}set password(e){o.cannotHaveAUsernamePasswordPort(this._url)||o.setThePassword(this._url,e)}get host(){const e=this._url;return null===e.host?"":null===e.port?o.serializeHost(e.host):o.serializeHost(e.host)+":"+o.serializeInteger(e.port)}set host(e){this._url.cannotBeABaseURL||o.basicURLParse(e,{url:this._url,stateOverride:"host"})}get hostname(){return null===this._url.host?"":o.serializeHost(this._url.host)}set hostname(e){this._url.cannotBeABaseURL||o.basicURLParse(e,{url:this._url,stateOverride:"hostname"})}get port(){return null===this._url.port?"":o.serializeInteger(this._url.port)}set port(e){o.cannotHaveAUsernamePasswordPort(this._url)||(""===e?this._url.port=null:o.basicURLParse(e,{url:this._url,stateOverride:"port"}))}get pathname(){return this._url.cannotBeABaseURL?this._url.path[0]:0===this._url.path.length?"":"/"+this._url.path.join("/")}set pathname(e){this._url.cannotBeABaseURL||(this._url.path=[],o.basicURLParse(e,{url:this._url,stateOverride:"path start"}))}get search(){return null===this._url.query||""===this._url.query?"":"?"+this._url.query}set search(e){const a=this._url;if(""===e)return void(a.query=null);const t="?"===e[0]?e.substring(1):e;a.query="",o.basicURLParse(t,{url:a,stateOverride:"query"})}get hash(){return null===this._url.fragment||""===this._url.fragment?"":"#"+this._url.fragment}set hash(e){if(""===e)return void(this._url.fragment=null);const a="#"===e[0]?e.substring(1):e;this._url.fragment="",o.basicURLParse(a,{url:this._url,stateOverride:"fragment"})}toJSON(){return this.href}}})),x.register("lRcCk",(function(e,t){function i(e){return u.ucs2.decode(e).length}function o(e,a){const t=e[a];return isNaN(t)?void 0:String.fromCodePoint(t)}function s(e){return e>=48&&57>=e}function r(e){return e>=65&&90>=e||e>=97&&122>=e}function n(e){return s(e)||e>=65&&70>=e||e>=97&&102>=e}function p(e){return"."===e||"%2e"===e.toLowerCase()}function d(e){return 2===e.length&&r(e.codePointAt(0))&&(":"===e[1]||"|"===e[1])}function l(e){return void 0!==I[e]}function m(e){return l(e.scheme)}function c(e){let a=e.toString(16).toUpperCase();return 1===a.length&&(a="0"+a),"%"+a}function h(e){return 31>=e||e>126}function g(e){return h(e)||B.has(e)}function f(e){return g(e)||q.has(e)}function y(e,a){const t=String.fromCodePoint(e);return a(e)?(e=>{const a=new Buffer(e);let t="";for(let e=0;a.length>e;++e)t+=c(a[e]);return t})(t):t}function v(e){let a=10;return 2>e.length||"0"!==e.charAt(0)||"x"!==e.charAt(1).toLowerCase()?2>e.length||"0"!==e.charAt(0)||(e=e.substring(1),a=8):(e=e.substring(2),a=16),""===e?0:(10===a?/[^0-9]/:16===a?/[^0-9A-Fa-f]/:/[^0-7]/).test(e)?A:parseInt(e,a)}function b(e,a){if("["===e[0])return"]"!==e[e.length-1]?A:(e=>{const a=[0,0,0,0,0,0,0,0];let t=0,i=null,r=0;if(58===(e=u.ucs2.decode(e))[r]){if(58!==e[r+1])return A;r+=2,++t,i=t}for(;e.length>r;){if(8===t)return A;if(58===e[r]){if(null!==i)return A;++r,++t,i=t;continue}let p=0,d=0;for(;4>d&&n(e[r]);)p=16*p+parseInt(o(e,r),16),++r,++d;if(46===e[r]){if(0===d)return A;if(r-=d,t>6)return A;let i=0;for(;void 0!==e[r];){let n=null;if(i>0){if(46!==e[r]||i>=4)return A;++r}if(!s(e[r]))return A;for(;s(e[r]);){const a=parseInt(o(e,r));if(null===n)n=a;else{if(0===n)return A;n=10*n+a}if(n>255)return A;++r}a[t]=256*a[t]+n,++i,2!==i&&4!==i||++t}if(4!==i)return A;break}if(58===e[r]){if(++r,void 0===e[r])return A}else if(void 0!==e[r])return A;a[t]=p,++t}if(null!==i){let e=t-i;for(t=7;0!==t&&e>0;){const o=a[i+e-1];a[i+e-1]=a[t],a[t]=o,--t,--e}}else if(null===i&&8!==t)return A;return a})(e.substring(1,e.length-1));if(!a)return(e=>{if(-1!==e.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|\/|:|\?|@|\[|\\|\]/))return A;let a="";const t=u.ucs2.decode(e);for(let e=0;t.length>e;++e)a+=y(t[e],h);return a})(e);const t=(e=>{const a=new Buffer(e),t=[];for(let e=0;a.length>e;++e)37!==a[e]?t.push(a[e]):37===a[e]&&n(a[e+1])&&n(a[e+2])?(t.push(parseInt(""+a.slice(e+1,e+3),16)),e+=2):t.push(a[e]);return""+new Buffer(t)})(e),i=D.toASCII(t,!1,D.PROCESSING_OPTIONS.NONTRANSITIONAL,!1);if(null===i)return A;if(-1!==i.search(/\u0000|\u0009|\u000A|\u000D|\u0020|#|%|\/|:|\?|@|\[|\\|\]/))return A;const r=(e=>{const a=e.split(".");if(""===a[a.length-1]&&a.length>1&&a.pop(),a.length>4)return e;const t=[];for(const i of a){if(""===i)return e;const a=v(i);if(a===A)return e;t.push(a)}for(let e=0;t.length-1>e;++e)if(t[e]>255)return A;if(t[t.length-1]>=Math.pow(256,5-t.length))return A;let i=t.pop(),o=0;for(const e of t)i+=e*Math.pow(256,3-o),++o;return i})(i);return"number"==typeof r||r===A?r:i}function w(e){return"number"==typeof e?(e=>{let a="",t=e;for(let e=1;4>=e;++e)a=t%256+""+a,4!==e&&(a="."+a),t=Math.floor(t/256);return a})(e):e instanceof Array?"["+(e=>{let a="";const t=(e=>{let a=null,t=1,i=null,o=0;for(let s=0;e.length>s;++s)0!==e[s]?(o>t&&(a=i,t=o),i=null,o=0):(null===i&&(i=s),++o);return o>t&&(a=i,t=o),{idx:a,len:t}})(e).idx;let i=!1;for(let o=0;7>=o;++o)i&&0===e[o]||(i&&(i=!1),t!==o?(a+=e[o].toString(16),7!==o&&(a+=":")):(a+=0===o?"::":":",i=!0));return a})(e)+"]":e}function N(e){const a=e.path;0!==a.length&&("file"===e.scheme&&1===a.length&&/^[A-Za-z]:$/.test(a[0])||a.pop())}function k(e){return""!==e.username||""!==e.password}function S(e,a,t,i,o){if(this.pointer=0,this.input=e,this.base=a||null,this.encodingOverride=t||"utf-8",this.stateOverride=o,this.url=i,this.failure=!1,this.parseError=!1,!this.url){this.url={scheme:"",username:"",password:"",host:null,port:null,path:[],query:null,fragment:null,cannotBeABaseURL:!1};const e=(e=>this.input.replace(/^[\u0000-\u001F\u0020]+|[\u0000-\u001F\u0020]+$/g,""))();e!==this.input&&(this.parseError=!0),this.input=e}const s=(e=>this.input.replace(/\u0009|\u000A|\u000D/g,""))();for(s!==this.input&&(this.parseError=!0),this.input=s,this.state=o||"scheme start",this.buffer="",this.atFlag=!1,this.arrFlag=!1,this.passwordTokenSeenFlag=!1,this.input=u.ucs2.decode(this.input);this.input.length>=this.pointer;++this.pointer){const e=this.input[this.pointer],a=isNaN(e)?void 0:String.fromCodePoint(e),t=this["parse "+this.state](e,a);if(!t)break;if(t===A){this.failure=!0;break}}}var j,C,T,P,E,z,_,O,R;a(e.exports,"serializeURL",(()=>j),(e=>j=e)),a(e.exports,"serializeURLOrigin",(()=>C),(e=>C=e)),a(e.exports,"parseURL",(()=>R),(e=>R=e)),a(e.exports,"basicURLParse",(()=>T),(e=>T=e)),a(e.exports,"setTheUsername",(()=>P),(e=>P=e)),a(e.exports,"setThePassword",(()=>E),(e=>E=e)),a(e.exports,"serializeHost",(()=>z),(e=>z=e)),a(e.exports,"cannotHaveAUsernamePasswordPort",(()=>_),(e=>_=e)),a(e.exports,"serializeInteger",(()=>O),(e=>O=e));var D=x("7xQVY");const I={ftp:21,file:null,gopher:70,http:80,https:443,ws:80,wss:443},A=Symbol(),B=new Set([32,34,35,60,62,63,96,123,125]),q=new Set([47,58,59,61,64,91,92,93,94,124]);S.prototype["parse scheme start"]=function(e,a){if(r(e))this.buffer+=a.toLowerCase(),this.state="scheme";else{if(this.stateOverride)return this.parseError=!0,A;this.state="no scheme",--this.pointer}return!0},S.prototype["parse scheme"]=function(e,a){if((e=>r(e)||s(e))(e)||43===e||45===e||46===e)this.buffer+=a.toLowerCase();else if(58===e){if(this.stateOverride){if(m(this.url)&&!l(this.buffer))return!1;if(!m(this.url)&&l(this.buffer))return!1;if((k(this.url)||null!==this.url.port)&&"file"===this.buffer)return!1;if("file"===this.url.scheme&&(""===this.url.host||null===this.url.host))return!1}if(this.url.scheme=this.buffer,this.buffer="",this.stateOverride)return!1;"file"===this.url.scheme?(47===this.input[this.pointer+1]&&47===this.input[this.pointer+2]||(this.parseError=!0),this.state="file"):m(this.url)&&null!==this.base&&this.base.scheme===this.url.scheme?this.state="special relative or authority":m(this.url)?this.state="special authority slashes":47===this.input[this.pointer+1]?(this.state="path or authority",++this.pointer):(this.url.cannotBeABaseURL=!0,this.url.path.push(""),this.state="cannot-be-a-base-URL path")}else{if(this.stateOverride)return this.parseError=!0,A;this.buffer="",this.state="no scheme",this.pointer=-1}return!0},S.prototype["parse no scheme"]=function(e){return null===this.base||this.base.cannotBeABaseURL&&35!==e?A:(this.base.cannotBeABaseURL&&35===e?(this.url.scheme=this.base.scheme,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.url.cannotBeABaseURL=!0,this.state="fragment"):"file"===this.base.scheme?(this.state="file",--this.pointer):(this.state="relative",--this.pointer),!0)},S.prototype["parse special relative or authority"]=function(e){return 47===e&&47===this.input[this.pointer+1]?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="relative",--this.pointer),!0},S.prototype["parse path or authority"]=function(e){return 47===e?this.state="authority":(this.state="path",--this.pointer),!0},S.prototype["parse relative"]=function(e){return this.url.scheme=this.base.scheme,isNaN(e)?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query):47===e?this.state="relative slash":63===e?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):35===e?(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):m(this.url)&&92===e?(this.parseError=!0,this.state="relative slash"):(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.url.path=this.base.path.slice(0,this.base.path.length-1),this.state="path",--this.pointer),!0},S.prototype["parse relative slash"]=function(e){return!m(this.url)||47!==e&&92!==e?47===e?this.state="authority":(this.url.username=this.base.username,this.url.password=this.base.password,this.url.host=this.base.host,this.url.port=this.base.port,this.state="path",--this.pointer):(92===e&&(this.parseError=!0),this.state="special authority ignore slashes"),!0},S.prototype["parse special authority slashes"]=function(e){return 47===e&&47===this.input[this.pointer+1]?(this.state="special authority ignore slashes",++this.pointer):(this.parseError=!0,this.state="special authority ignore slashes",--this.pointer),!0},S.prototype["parse special authority ignore slashes"]=function(e){return 47!==e&&92!==e?(this.state="authority",--this.pointer):this.parseError=!0,!0},S.prototype["parse authority"]=function(e,a){if(64===e){this.parseError=!0,this.atFlag&&(this.buffer="%40"+this.buffer),this.atFlag=!0;const e=i(this.buffer);for(let a=0;e>a;++a){const e=this.buffer.codePointAt(a);if(58===e&&!this.passwordTokenSeenFlag){this.passwordTokenSeenFlag=!0;continue}const t=y(e,f);this.passwordTokenSeenFlag?this.url.password+=t:this.url.username+=t}this.buffer=""}else if(isNaN(e)||47===e||63===e||35===e||m(this.url)&&92===e){if(this.atFlag&&""===this.buffer)return this.parseError=!0,A;this.pointer-=i(this.buffer)+1,this.buffer="",this.state="host"}else this.buffer+=a;return!0},S.prototype["parse hostname"]=S.prototype["parse host"]=function(e,a){if(this.stateOverride&&"file"===this.url.scheme)--this.pointer,this.state="file host";else if(58!==e||this.arrFlag)if(isNaN(e)||47===e||63===e||35===e||m(this.url)&&92===e){if(--this.pointer,m(this.url)&&""===this.buffer)return this.parseError=!0,A;if(this.stateOverride&&""===this.buffer&&(k(this.url)||null!==this.url.port))return this.parseError=!0,!1;const e=b(this.buffer,m(this.url));if(e===A)return A;if(this.url.host=e,this.buffer="",this.state="path start",this.stateOverride)return!1}else 91===e?this.arrFlag=!0:93===e&&(this.arrFlag=!1),this.buffer+=a;else{if(""===this.buffer)return this.parseError=!0,A;const e=b(this.buffer,m(this.url));if(e===A)return A;if(this.url.host=e,this.buffer="",this.state="port","hostname"===this.stateOverride)return!1}return!0},S.prototype["parse port"]=function(e,a){if(s(e))this.buffer+=a;else{if(!(isNaN(e)||47===e||63===e||35===e||m(this.url)&&92===e||this.stateOverride))return this.parseError=!0,A;if(""!==this.buffer){const e=parseInt(this.buffer);if(e>65535)return this.parseError=!0,A;this.url.port=e===I[this.url.scheme]?null:e,this.buffer=""}if(this.stateOverride)return!1;this.state="path start",--this.pointer}return!0};const M=new Set([47,92,63,35]);S.prototype["parse file"]=function(e){var a;return this.url.scheme="file",47===e||92===e?(92===e&&(this.parseError=!0),this.state="file slash"):null!==this.base&&"file"===this.base.scheme?isNaN(e)?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query):63===e?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query="",this.state="query"):35===e?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),this.url.query=this.base.query,this.url.fragment="",this.state="fragment"):(this.input.length-this.pointer-1==0||(a=this.input[this.pointer+1],!r(e)||58!==a&&124!==a)||this.input.length-this.pointer-1>=2&&!M.has(this.input[this.pointer+2])?(this.url.host=this.base.host,this.url.path=this.base.path.slice(),N(this.url)):this.parseError=!0,this.state="path",--this.pointer):(this.state="path",--this.pointer),!0},S.prototype["parse file slash"]=function(e){var a;return 47===e||92===e?(92===e&&(this.parseError=!0),this.state="file host"):(null!==this.base&&"file"===this.base.scheme&&(2===(a=this.base.path[0]).length&&r(a.codePointAt(0))&&":"===a[1]?this.url.path.push(this.base.path[0]):this.url.host=this.base.host),this.state="path",--this.pointer),!0},S.prototype["parse file host"]=function(e,a){if(isNaN(e)||47===e||92===e||63===e||35===e)if(--this.pointer,!this.stateOverride&&d(this.buffer))this.parseError=!0,this.state="path";else if(""===this.buffer){if(this.url.host="",this.stateOverride)return!1;this.state="path start"}else{let e=b(this.buffer,m(this.url));if(e===A)return A;if("localhost"===e&&(e=""),this.url.host=e,this.stateOverride)return!1;this.buffer="",this.state="path start"}else this.buffer+=a;return!0},S.prototype["parse path start"]=function(e){return m(this.url)?(92===e&&(this.parseError=!0),this.state="path",47!==e&&92!==e&&--this.pointer):this.stateOverride||63!==e?this.stateOverride||35!==e?void 0!==e&&(this.state="path",47!==e&&--this.pointer):(this.url.fragment="",this.state="fragment"):(this.url.query="",this.state="query"),!0},S.prototype["parse path"]=function(e){if(isNaN(e)||47===e||m(this.url)&&92===e||!this.stateOverride&&(63===e||35===e)){if(m(this.url)&&92===e&&(this.parseError=!0),".."===(a=(a=this.buffer).toLowerCase())||"%2e."===a||".%2e"===a||"%2e%2e"===a?(N(this.url),47===e||m(this.url)&&92===e||this.url.path.push("")):!p(this.buffer)||47===e||m(this.url)&&92===e?p(this.buffer)||("file"===this.url.scheme&&0===this.url.path.length&&d(this.buffer)&&(""!==this.url.host&&null!==this.url.host&&(this.parseError=!0,this.url.host=""),this.buffer=this.buffer[0]+":"),this.url.path.push(this.buffer)):this.url.path.push(""),this.buffer="","file"===this.url.scheme&&(void 0===e||63===e||35===e))for(;this.url.path.length>1&&""===this.url.path[0];)this.parseError=!0,this.url.path.shift();63===e&&(this.url.query="",this.state="query"),35===e&&(this.url.fragment="",this.state="fragment")}else 37!==e||n(this.input[this.pointer+1])&&n(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=y(e,g);var a;return!0},S.prototype["parse cannot-be-a-base-URL path"]=function(e){return 63===e?(this.url.query="",this.state="query"):35===e?(this.url.fragment="",this.state="fragment"):(isNaN(e)||37===e||(this.parseError=!0),37!==e||n(this.input[this.pointer+1])&&n(this.input[this.pointer+2])||(this.parseError=!0),isNaN(e)||(this.url.path[0]=this.url.path[0]+y(e,h))),!0},S.prototype["parse query"]=function(e,a){if(isNaN(e)||!this.stateOverride&&35===e){m(this.url)&&"ws"!==this.url.scheme&&"wss"!==this.url.scheme||(this.encodingOverride="utf-8");const a=new Buffer(this.buffer);for(let e=0;a.length>e;++e)this.url.query+=33>a[e]||a[e]>126||34===a[e]||35===a[e]||60===a[e]||62===a[e]?c(a[e]):String.fromCodePoint(a[e]);this.buffer="",35===e&&(this.url.fragment="",this.state="fragment")}else 37!==e||n(this.input[this.pointer+1])&&n(this.input[this.pointer+2])||(this.parseError=!0),this.buffer+=a;return!0},S.prototype["parse fragment"]=function(e){return isNaN(e)||(0===e?this.parseError=!0:(37!==e||n(this.input[this.pointer+1])&&n(this.input[this.pointer+2])||(this.parseError=!0),this.url.fragment+=y(e,h))),!0},j=(e,a)=>{let t=e.scheme+":";if(null!==e.host?(t+="//",""===e.username&&""===e.password||(t+=e.username,""!==e.password&&(t+=":"+e.password),t+="@"),t+=w(e.host),null!==e.port&&(t+=":"+e.port)):null===e.host&&"file"===e.scheme&&(t+="//"),e.cannotBeABaseURL)t+=e.path[0];else for(const a of e.path)t+="/"+a;return null!==e.query&&(t+="?"+e.query),a||null===e.fragment||(t+="#"+e.fragment),t},C=e=>{switch(e.scheme){case"blob":try{return C(R(e.path[0]))}catch(e){return"null"}case"ftp":case"gopher":case"http":case"https":case"ws":case"wss":return(e=>{let a=e.scheme+"://";return a+=w(e.host),null!==e.port&&(a+=":"+e.port),a})({scheme:e.scheme,host:e.host,port:e.port});case"file":return"file://";default:return"null"}},T=(e,a)=>{void 0===a&&(a={});const t=new S(e,a.baseURL,a.encodingOverride,a.url,a.stateOverride);return t.failure?"failure":t.url},P=(e,a)=>{e.username="";const t=u.ucs2.decode(a);for(let a=0;t.length>a;++a)e.username+=y(t[a],f)},E=(e,a)=>{e.password="";const t=u.ucs2.decode(a);for(let a=0;t.length>a;++a)e.password+=y(t[a],f)},z=w,_=e=>null===e.host||""===e.host||e.cannotBeABaseURL||"file"===e.scheme,O=e=>e+"",R=(e,a)=>(void 0===a&&(a={}),T(e,{baseURL:a.baseURL,encodingOverride:a.encodingOverride}))})),x.register("7xQVY",((e,t)=>{function i(e){return e.split("\0").map((e=>e.normalize("NFC"))).join("\0")}function o(e){for(var a=0,t=l.length-1;t>=a;){var i=Math.floor((a+t)/2),o=l[i];if(e>=o[0][0]&&o[0][1]>=e)return o;o[0][0]>e?t=i-1:a=i+1}return null}function s(e){return e.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"_").length}function r(e,a){"xn--"===e.substr(0,4)&&(e=u.toUnicode(e));var t=!1;(i(e)!==e||"-"===e[3]&&"-"===e[4]||"-"===e[0]||"-"===e[e.length-1]||-1!==e.indexOf(".")||0===e.search(/[\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08E4-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D01-\u0D03\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D82\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u18A9\u1920-\u192B\u1930-\u193B\u19B0-\u19C0\u19C8\u19C9\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1ABE\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF2-\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF5\u1DFC-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA880\uA881\uA8B4-\uA8C4\uA8E0-\uA8F1\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2D]|\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDE2C-\uDE37\uDEDF-\uDEEA\uDF01-\uDF03\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDE30-\uDE40\uDEAB-\uDEB7]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF51-\uDF7E\uDF8F-\uDF92]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD83A[\uDCD0-\uDCD6]|\uDB40[\uDD00-\uDDEF]/))&&(t=!0);for(var r=s(e),p=0;r>p;++p){var d=o(e.codePointAt(p));if(n===m.TRANSITIONAL&&"valid"!==d[1]||n===m.NONTRANSITIONAL&&"valid"!==d[1]&&"deviation"!==d[1]){t=!0;break}}return{label:e,error:t}}function n(e,a,t){var n=((e,a,t)=>{for(var i=!1,r="",n=s(e),p=0;n>p;++p){var d=e.codePointAt(p),l=o(d);switch(l[1]){case"disallowed":i=!0,r+=String.fromCodePoint(d);break;case"ignored":break;case"mapped":r+=String.fromCodePoint.apply(String,l[2]);break;case"deviation":r+=t===m.TRANSITIONAL?String.fromCodePoint.apply(String,l[2]):String.fromCodePoint(d);break;case"valid":r+=String.fromCodePoint(d);break;case"disallowed_STD3_mapped":a?(i=!0,r+=String.fromCodePoint(d)):r+=String.fromCodePoint.apply(String,l[2]);break;case"disallowed_STD3_valid":a&&(i=!0),r+=String.fromCodePoint(d)}}return{string:r,error:i}})(e,a,t);n.string=i(n.string);for(var p=n.string.split("."),d=0;p.length>d;++d)try{var l=r(p[d]);p[d]=l.label,n.error=n.error||l.error}catch(e){n.error=!0}return{string:p.join("."),error:n.error}}var p,d;a(e.exports,"toASCII",(()=>p),(e=>p=e)),a(e.exports,"PROCESSING_OPTIONS",(()=>d),(e=>d=e));var l=x("6UzDB"),m={TRANSITIONAL:0,NONTRANSITIONAL:1};p=(e,a,t,i)=>{var o=n(e,a,t),s=o.string.split(".");if(s=s.map((e=>{try{return u.toASCII(e)}catch(a){return o.error=!0,e}})),i){var r=s.slice(0,s.length-1).join(".").length;(r.length>253||0===r.length)&&(o.error=!0);for(var p=0;s.length>p;++p)if(s.length>63||0===s.length){o.error=!0;break}}return o.error?null:s.join(".")},d=m})),x.register("6UzDB",((e,a)=>{e.exports=JSON.parse('[[[0,44],"disallowed_STD3_valid"],[[45,46],"valid"],[[47,47],"disallowed_STD3_valid"],[[48,57],"valid"],[[58,64],"disallowed_STD3_valid"],[[65,65],"mapped",[97]],[[66,66],"mapped",[98]],[[67,67],"mapped",[99]],[[68,68],"mapped",[100]],[[69,69],"mapped",[101]],[[70,70],"mapped",[102]],[[71,71],"mapped",[103]],[[72,72],"mapped",[104]],[[73,73],"mapped",[105]],[[74,74],"mapped",[106]],[[75,75],"mapped",[107]],[[76,76],"mapped",[108]],[[77,77],"mapped",[109]],[[78,78],"mapped",[110]],[[79,79],"mapped",[111]],[[80,80],"mapped",[112]],[[81,81],"mapped",[113]],[[82,82],"mapped",[114]],[[83,83],"mapped",[115]],[[84,84],"mapped",[116]],[[85,85],"mapped",[117]],[[86,86],"mapped",[118]],[[87,87],"mapped",[119]],[[88,88],"mapped",[120]],[[89,89],"mapped",[121]],[[90,90],"mapped",[122]],[[91,96],"disallowed_STD3_valid"],[[97,122],"valid"],[[123,127],"disallowed_STD3_valid"],[[128,159],"disallowed"],[[160,160],"disallowed_STD3_mapped",[32]],[[161,167],"valid",[],"NV8"],[[168,168],"disallowed_STD3_mapped",[32,776]],[[169,169],"valid",[],"NV8"],[[170,170],"mapped",[97]],[[171,172],"valid",[],"NV8"],[[173,173],"ignored"],[[174,174],"valid",[],"NV8"],[[175,175],"disallowed_STD3_mapped",[32,772]],[[176,177],"valid",[],"NV8"],[[178,178],"mapped",[50]],[[179,179],"mapped",[51]],[[180,180],"disallowed_STD3_mapped",[32,769]],[[181,181],"mapped",[956]],[[182,182],"valid",[],"NV8"],[[183,183],"valid"],[[184,184],"disallowed_STD3_mapped",[32,807]],[[185,185],"mapped",[49]],[[186,186],"mapped",[111]],[[187,187],"valid",[],"NV8"],[[188,188],"mapped",[49,8260,52]],[[189,189],"mapped",[49,8260,50]],[[190,190],"mapped",[51,8260,52]],[[191,191],"valid",[],"NV8"],[[192,192],"mapped",[224]],[[193,193],"mapped",[225]],[[194,194],"mapped",[226]],[[195,195],"mapped",[227]],[[196,196],"mapped",[228]],[[197,197],"mapped",[229]],[[198,198],"mapped",[230]],[[199,199],"mapped",[231]],[[200,200],"mapped",[232]],[[201,201],"mapped",[233]],[[202,202],"mapped",[234]],[[203,203],"mapped",[235]],[[204,204],"mapped",[236]],[[205,205],"mapped",[237]],[[206,206],"mapped",[238]],[[207,207],"mapped",[239]],[[208,208],"mapped",[240]],[[209,209],"mapped",[241]],[[210,210],"mapped",[242]],[[211,211],"mapped",[243]],[[212,212],"mapped",[244]],[[213,213],"mapped",[245]],[[214,214],"mapped",[246]],[[215,215],"valid",[],"NV8"],[[216,216],"mapped",[248]],[[217,217],"mapped",[249]],[[218,218],"mapped",[250]],[[219,219],"mapped",[251]],[[220,220],"mapped",[252]],[[221,221],"mapped",[253]],[[222,222],"mapped",[254]],[[223,223],"deviation",[115,115]],[[224,246],"valid"],[[247,247],"valid",[],"NV8"],[[248,255],"valid"],[[256,256],"mapped",[257]],[[257,257],"valid"],[[258,258],"mapped",[259]],[[259,259],"valid"],[[260,260],"mapped",[261]],[[261,261],"valid"],[[262,262],"mapped",[263]],[[263,263],"valid"],[[264,264],"mapped",[265]],[[265,265],"valid"],[[266,266],"mapped",[267]],[[267,267],"valid"],[[268,268],"mapped",[269]],[[269,269],"valid"],[[270,270],"mapped",[271]],[[271,271],"valid"],[[272,272],"mapped",[273]],[[273,273],"valid"],[[274,274],"mapped",[275]],[[275,275],"valid"],[[276,276],"mapped",[277]],[[277,277],"valid"],[[278,278],"mapped",[279]],[[279,279],"valid"],[[280,280],"mapped",[281]],[[281,281],"valid"],[[282,282],"mapped",[283]],[[283,283],"valid"],[[284,284],"mapped",[285]],[[285,285],"valid"],[[286,286],"mapped",[287]],[[287,287],"valid"],[[288,288],"mapped",[289]],[[289,289],"valid"],[[290,290],"mapped",[291]],[[291,291],"valid"],[[292,292],"mapped",[293]],[[293,293],"valid"],[[294,294],"mapped",[295]],[[295,295],"valid"],[[296,296],"mapped",[297]],[[297,297],"valid"],[[298,298],"mapped",[299]],[[299,299],"valid"],[[300,300],"mapped",[301]],[[301,301],"valid"],[[302,302],"mapped",[303]],[[303,303],"valid"],[[304,304],"mapped",[105,775]],[[305,305],"valid"],[[306,307],"mapped",[105,106]],[[308,308],"mapped",[309]],[[309,309],"valid"],[[310,310],"mapped",[311]],[[311,312],"valid"],[[313,313],"mapped",[314]],[[314,314],"valid"],[[315,315],"mapped",[316]],[[316,316],"valid"],[[317,317],"mapped",[318]],[[318,318],"valid"],[[319,320],"mapped",[108,183]],[[321,321],"mapped",[322]],[[322,322],"valid"],[[323,323],"mapped",[324]],[[324,324],"valid"],[[325,325],"mapped",[326]],[[326,326],"valid"],[[327,327],"mapped",[328]],[[328,328],"valid"],[[329,329],"mapped",[700,110]],[[330,330],"mapped",[331]],[[331,331],"valid"],[[332,332],"mapped",[333]],[[333,333],"valid"],[[334,334],"mapped",[335]],[[335,335],"valid"],[[336,336],"mapped",[337]],[[337,337],"valid"],[[338,338],"mapped",[339]],[[339,339],"valid"],[[340,340],"mapped",[341]],[[341,341],"valid"],[[342,342],"mapped",[343]],[[343,343],"valid"],[[344,344],"mapped",[345]],[[345,345],"valid"],[[346,346],"mapped",[347]],[[347,347],"valid"],[[348,348],"mapped",[349]],[[349,349],"valid"],[[350,350],"mapped",[351]],[[351,351],"valid"],[[352,352],"mapped",[353]],[[353,353],"valid"],[[354,354],"mapped",[355]],[[355,355],"valid"],[[356,356],"mapped",[357]],[[357,357],"valid"],[[358,358],"mapped",[359]],[[359,359],"valid"],[[360,360],"mapped",[361]],[[361,361],"valid"],[[362,362],"mapped",[363]],[[363,363],"valid"],[[364,364],"mapped",[365]],[[365,365],"valid"],[[366,366],"mapped",[367]],[[367,367],"valid"],[[368,368],"mapped",[369]],[[369,369],"valid"],[[370,370],"mapped",[371]],[[371,371],"valid"],[[372,372],"mapped",[373]],[[373,373],"valid"],[[374,374],"mapped",[375]],[[375,375],"valid"],[[376,376],"mapped",[255]],[[377,377],"mapped",[378]],[[378,378],"valid"],[[379,379],"mapped",[380]],[[380,380],"valid"],[[381,381],"mapped",[382]],[[382,382],"valid"],[[383,383],"mapped",[115]],[[384,384],"valid"],[[385,385],"mapped",[595]],[[386,386],"mapped",[387]],[[387,387],"valid"],[[388,388],"mapped",[389]],[[389,389],"valid"],[[390,390],"mapped",[596]],[[391,391],"mapped",[392]],[[392,392],"valid"],[[393,393],"mapped",[598]],[[394,394],"mapped",[599]],[[395,395],"mapped",[396]],[[396,397],"valid"],[[398,398],"mapped",[477]],[[399,399],"mapped",[601]],[[400,400],"mapped",[603]],[[401,401],"mapped",[402]],[[402,402],"valid"],[[403,403],"mapped",[608]],[[404,404],"mapped",[611]],[[405,405],"valid"],[[406,406],"mapped",[617]],[[407,407],"mapped",[616]],[[408,408],"mapped",[409]],[[409,411],"valid"],[[412,412],"mapped",[623]],[[413,413],"mapped",[626]],[[414,414],"valid"],[[415,415],"mapped",[629]],[[416,416],"mapped",[417]],[[417,417],"valid"],[[418,418],"mapped",[419]],[[419,419],"valid"],[[420,420],"mapped",[421]],[[421,421],"valid"],[[422,422],"mapped",[640]],[[423,423],"mapped",[424]],[[424,424],"valid"],[[425,425],"mapped",[643]],[[426,427],"valid"],[[428,428],"mapped",[429]],[[429,429],"valid"],[[430,430],"mapped",[648]],[[431,431],"mapped",[432]],[[432,432],"valid"],[[433,433],"mapped",[650]],[[434,434],"mapped",[651]],[[435,435],"mapped",[436]],[[436,436],"valid"],[[437,437],"mapped",[438]],[[438,438],"valid"],[[439,439],"mapped",[658]],[[440,440],"mapped",[441]],[[441,443],"valid"],[[444,444],"mapped",[445]],[[445,451],"valid"],[[452,454],"mapped",[100,382]],[[455,457],"mapped",[108,106]],[[458,460],"mapped",[110,106]],[[461,461],"mapped",[462]],[[462,462],"valid"],[[463,463],"mapped",[464]],[[464,464],"valid"],[[465,465],"mapped",[466]],[[466,466],"valid"],[[467,467],"mapped",[468]],[[468,468],"valid"],[[469,469],"mapped",[470]],[[470,470],"valid"],[[471,471],"mapped",[472]],[[472,472],"valid"],[[473,473],"mapped",[474]],[[474,474],"valid"],[[475,475],"mapped",[476]],[[476,477],"valid"],[[478,478],"mapped",[479]],[[479,479],"valid"],[[480,480],"mapped",[481]],[[481,481],"valid"],[[482,482],"mapped",[483]],[[483,483],"valid"],[[484,484],"mapped",[485]],[[485,485],"valid"],[[486,486],"mapped",[487]],[[487,487],"valid"],[[488,488],"mapped",[489]],[[489,489],"valid"],[[490,490],"mapped",[491]],[[491,491],"valid"],[[492,492],"mapped",[493]],[[493,493],"valid"],[[494,494],"mapped",[495]],[[495,496],"valid"],[[497,499],"mapped",[100,122]],[[500,500],"mapped",[501]],[[501,501],"valid"],[[502,502],"mapped",[405]],[[503,503],"mapped",[447]],[[504,504],"mapped",[505]],[[505,505],"valid"],[[506,506],"mapped",[507]],[[507,507],"valid"],[[508,508],"mapped",[509]],[[509,509],"valid"],[[510,510],"mapped",[511]],[[511,511],"valid"],[[512,512],"mapped",[513]],[[513,513],"valid"],[[514,514],"mapped",[515]],[[515,515],"valid"],[[516,516],"mapped",[517]],[[517,517],"valid"],[[518,518],"mapped",[519]],[[519,519],"valid"],[[520,520],"mapped",[521]],[[521,521],"valid"],[[522,522],"mapped",[523]],[[523,523],"valid"],[[524,524],"mapped",[525]],[[525,525],"valid"],[[526,526],"mapped",[527]],[[527,527],"valid"],[[528,528],"mapped",[529]],[[529,529],"valid"],[[530,530],"mapped",[531]],[[531,531],"valid"],[[532,532],"mapped",[533]],[[533,533],"valid"],[[534,534],"mapped",[535]],[[535,535],"valid"],[[536,536],"mapped",[537]],[[537,537],"valid"],[[538,538],"mapped",[539]],[[539,539],"valid"],[[540,540],"mapped",[541]],[[541,541],"valid"],[[542,542],"mapped",[543]],[[543,543],"valid"],[[544,544],"mapped",[414]],[[545,545],"valid"],[[546,546],"mapped",[547]],[[547,547],"valid"],[[548,548],"mapped",[549]],[[549,549],"valid"],[[550,550],"mapped",[551]],[[551,551],"valid"],[[552,552],"mapped",[553]],[[553,553],"valid"],[[554,554],"mapped",[555]],[[555,555],"valid"],[[556,556],"mapped",[557]],[[557,557],"valid"],[[558,558],"mapped",[559]],[[559,559],"valid"],[[560,560],"mapped",[561]],[[561,561],"valid"],[[562,562],"mapped",[563]],[[563,563],"valid"],[[564,566],"valid"],[[567,569],"valid"],[[570,570],"mapped",[11365]],[[571,571],"mapped",[572]],[[572,572],"valid"],[[573,573],"mapped",[410]],[[574,574],"mapped",[11366]],[[575,576],"valid"],[[577,577],"mapped",[578]],[[578,578],"valid"],[[579,579],"mapped",[384]],[[580,580],"mapped",[649]],[[581,581],"mapped",[652]],[[582,582],"mapped",[583]],[[583,583],"valid"],[[584,584],"mapped",[585]],[[585,585],"valid"],[[586,586],"mapped",[587]],[[587,587],"valid"],[[588,588],"mapped",[589]],[[589,589],"valid"],[[590,590],"mapped",[591]],[[591,591],"valid"],[[592,680],"valid"],[[681,685],"valid"],[[686,687],"valid"],[[688,688],"mapped",[104]],[[689,689],"mapped",[614]],[[690,690],"mapped",[106]],[[691,691],"mapped",[114]],[[692,692],"mapped",[633]],[[693,693],"mapped",[635]],[[694,694],"mapped",[641]],[[695,695],"mapped",[119]],[[696,696],"mapped",[121]],[[697,705],"valid"],[[706,709],"valid",[],"NV8"],[[710,721],"valid"],[[722,727],"valid",[],"NV8"],[[728,728],"disallowed_STD3_mapped",[32,774]],[[729,729],"disallowed_STD3_mapped",[32,775]],[[730,730],"disallowed_STD3_mapped",[32,778]],[[731,731],"disallowed_STD3_mapped",[32,808]],[[732,732],"disallowed_STD3_mapped",[32,771]],[[733,733],"disallowed_STD3_mapped",[32,779]],[[734,734],"valid",[],"NV8"],[[735,735],"valid",[],"NV8"],[[736,736],"mapped",[611]],[[737,737],"mapped",[108]],[[738,738],"mapped",[115]],[[739,739],"mapped",[120]],[[740,740],"mapped",[661]],[[741,745],"valid",[],"NV8"],[[746,747],"valid",[],"NV8"],[[748,748],"valid"],[[749,749],"valid",[],"NV8"],[[750,750],"valid"],[[751,767],"valid",[],"NV8"],[[768,831],"valid"],[[832,832],"mapped",[768]],[[833,833],"mapped",[769]],[[834,834],"valid"],[[835,835],"mapped",[787]],[[836,836],"mapped",[776,769]],[[837,837],"mapped",[953]],[[838,846],"valid"],[[847,847],"ignored"],[[848,855],"valid"],[[856,860],"valid"],[[861,863],"valid"],[[864,865],"valid"],[[866,866],"valid"],[[867,879],"valid"],[[880,880],"mapped",[881]],[[881,881],"valid"],[[882,882],"mapped",[883]],[[883,883],"valid"],[[884,884],"mapped",[697]],[[885,885],"valid"],[[886,886],"mapped",[887]],[[887,887],"valid"],[[888,889],"disallowed"],[[890,890],"disallowed_STD3_mapped",[32,953]],[[891,893],"valid"],[[894,894],"disallowed_STD3_mapped",[59]],[[895,895],"mapped",[1011]],[[896,899],"disallowed"],[[900,900],"disallowed_STD3_mapped",[32,769]],[[901,901],"disallowed_STD3_mapped",[32,776,769]],[[902,902],"mapped",[940]],[[903,903],"mapped",[183]],[[904,904],"mapped",[941]],[[905,905],"mapped",[942]],[[906,906],"mapped",[943]],[[907,907],"disallowed"],[[908,908],"mapped",[972]],[[909,909],"disallowed"],[[910,910],"mapped",[973]],[[911,911],"mapped",[974]],[[912,912],"valid"],[[913,913],"mapped",[945]],[[914,914],"mapped",[946]],[[915,915],"mapped",[947]],[[916,916],"mapped",[948]],[[917,917],"mapped",[949]],[[918,918],"mapped",[950]],[[919,919],"mapped",[951]],[[920,920],"mapped",[952]],[[921,921],"mapped",[953]],[[922,922],"mapped",[954]],[[923,923],"mapped",[955]],[[924,924],"mapped",[956]],[[925,925],"mapped",[957]],[[926,926],"mapped",[958]],[[927,927],"mapped",[959]],[[928,928],"mapped",[960]],[[929,929],"mapped",[961]],[[930,930],"disallowed"],[[931,931],"mapped",[963]],[[932,932],"mapped",[964]],[[933,933],"mapped",[965]],[[934,934],"mapped",[966]],[[935,935],"mapped",[967]],[[936,936],"mapped",[968]],[[937,937],"mapped",[969]],[[938,938],"mapped",[970]],[[939,939],"mapped",[971]],[[940,961],"valid"],[[962,962],"deviation",[963]],[[963,974],"valid"],[[975,975],"mapped",[983]],[[976,976],"mapped",[946]],[[977,977],"mapped",[952]],[[978,978],"mapped",[965]],[[979,979],"mapped",[973]],[[980,980],"mapped",[971]],[[981,981],"mapped",[966]],[[982,982],"mapped",[960]],[[983,983],"valid"],[[984,984],"mapped",[985]],[[985,985],"valid"],[[986,986],"mapped",[987]],[[987,987],"valid"],[[988,988],"mapped",[989]],[[989,989],"valid"],[[990,990],"mapped",[991]],[[991,991],"valid"],[[992,992],"mapped",[993]],[[993,993],"valid"],[[994,994],"mapped",[995]],[[995,995],"valid"],[[996,996],"mapped",[997]],[[997,997],"valid"],[[998,998],"mapped",[999]],[[999,999],"valid"],[[1000,1000],"mapped",[1001]],[[1001,1001],"valid"],[[1002,1002],"mapped",[1003]],[[1003,1003],"valid"],[[1004,1004],"mapped",[1005]],[[1005,1005],"valid"],[[1006,1006],"mapped",[1007]],[[1007,1007],"valid"],[[1008,1008],"mapped",[954]],[[1009,1009],"mapped",[961]],[[1010,1010],"mapped",[963]],[[1011,1011],"valid"],[[1012,1012],"mapped",[952]],[[1013,1013],"mapped",[949]],[[1014,1014],"valid",[],"NV8"],[[1015,1015],"mapped",[1016]],[[1016,1016],"valid"],[[1017,1017],"mapped",[963]],[[1018,1018],"mapped",[1019]],[[1019,1019],"valid"],[[1020,1020],"valid"],[[1021,1021],"mapped",[891]],[[1022,1022],"mapped",[892]],[[1023,1023],"mapped",[893]],[[1024,1024],"mapped",[1104]],[[1025,1025],"mapped",[1105]],[[1026,1026],"mapped",[1106]],[[1027,1027],"mapped",[1107]],[[1028,1028],"mapped",[1108]],[[1029,1029],"mapped",[1109]],[[1030,1030],"mapped",[1110]],[[1031,1031],"mapped",[1111]],[[1032,1032],"mapped",[1112]],[[1033,1033],"mapped",[1113]],[[1034,1034],"mapped",[1114]],[[1035,1035],"mapped",[1115]],[[1036,1036],"mapped",[1116]],[[1037,1037],"mapped",[1117]],[[1038,1038],"mapped",[1118]],[[1039,1039],"mapped",[1119]],[[1040,1040],"mapped",[1072]],[[1041,1041],"mapped",[1073]],[[1042,1042],"mapped",[1074]],[[1043,1043],"mapped",[1075]],[[1044,1044],"mapped",[1076]],[[1045,1045],"mapped",[1077]],[[1046,1046],"mapped",[1078]],[[1047,1047],"mapped",[1079]],[[1048,1048],"mapped",[1080]],[[1049,1049],"mapped",[1081]],[[1050,1050],"mapped",[1082]],[[1051,1051],"mapped",[1083]],[[1052,1052],"mapped",[1084]],[[1053,1053],"mapped",[1085]],[[1054,1054],"mapped",[1086]],[[1055,1055],"mapped",[1087]],[[1056,1056],"mapped",[1088]],[[1057,1057],"mapped",[1089]],[[1058,1058],"mapped",[1090]],[[1059,1059],"mapped",[1091]],[[1060,1060],"mapped",[1092]],[[1061,1061],"mapped",[1093]],[[1062,1062],"mapped",[1094]],[[1063,1063],"mapped",[1095]],[[1064,1064],"mapped",[1096]],[[1065,1065],"mapped",[1097]],[[1066,1066],"mapped",[1098]],[[1067,1067],"mapped",[1099]],[[1068,1068],"mapped",[1100]],[[1069,1069],"mapped",[1101]],[[1070,1070],"mapped",[1102]],[[1071,1071],"mapped",[1103]],[[1072,1103],"valid"],[[1104,1104],"valid"],[[1105,1116],"valid"],[[1117,1117],"valid"],[[1118,1119],"valid"],[[1120,1120],"mapped",[1121]],[[1121,1121],"valid"],[[1122,1122],"mapped",[1123]],[[1123,1123],"valid"],[[1124,1124],"mapped",[1125]],[[1125,1125],"valid"],[[1126,1126],"mapped",[1127]],[[1127,1127],"valid"],[[1128,1128],"mapped",[1129]],[[1129,1129],"valid"],[[1130,1130],"mapped",[1131]],[[1131,1131],"valid"],[[1132,1132],"mapped",[1133]],[[1133,1133],"valid"],[[1134,1134],"mapped",[1135]],[[1135,1135],"valid"],[[1136,1136],"mapped",[1137]],[[1137,1137],"valid"],[[1138,1138],"mapped",[1139]],[[1139,1139],"valid"],[[1140,1140],"mapped",[1141]],[[1141,1141],"valid"],[[1142,1142],"mapped",[1143]],[[1143,1143],"valid"],[[1144,1144],"mapped",[1145]],[[1145,1145],"valid"],[[1146,1146],"mapped",[1147]],[[1147,1147],"valid"],[[1148,1148],"mapped",[1149]],[[1149,1149],"valid"],[[1150,1150],"mapped",[1151]],[[1151,1151],"valid"],[[1152,1152],"mapped",[1153]],[[1153,1153],"valid"],[[1154,1154],"valid",[],"NV8"],[[1155,1158],"valid"],[[1159,1159],"valid"],[[1160,1161],"valid",[],"NV8"],[[1162,1162],"mapped",[1163]],[[1163,1163],"valid"],[[1164,1164],"mapped",[1165]],[[1165,1165],"valid"],[[1166,1166],"mapped",[1167]],[[1167,1167],"valid"],[[1168,1168],"mapped",[1169]],[[1169,1169],"valid"],[[1170,1170],"mapped",[1171]],[[1171,1171],"valid"],[[1172,1172],"mapped",[1173]],[[1173,1173],"valid"],[[1174,1174],"mapped",[1175]],[[1175,1175],"valid"],[[1176,1176],"mapped",[1177]],[[1177,1177],"valid"],[[1178,1178],"mapped",[1179]],[[1179,1179],"valid"],[[1180,1180],"mapped",[1181]],[[1181,1181],"valid"],[[1182,1182],"mapped",[1183]],[[1183,1183],"valid"],[[1184,1184],"mapped",[1185]],[[1185,1185],"valid"],[[1186,1186],"mapped",[1187]],[[1187,1187],"valid"],[[1188,1188],"mapped",[1189]],[[1189,1189],"valid"],[[1190,1190],"mapped",[1191]],[[1191,1191],"valid"],[[1192,1192],"mapped",[1193]],[[1193,1193],"valid"],[[1194,1194],"mapped",[1195]],[[1195,1195],"valid"],[[1196,1196],"mapped",[1197]],[[1197,1197],"valid"],[[1198,1198],"mapped",[1199]],[[1199,1199],"valid"],[[1200,1200],"mapped",[1201]],[[1201,1201],"valid"],[[1202,1202],"mapped",[1203]],[[1203,1203],"valid"],[[1204,1204],"mapped",[1205]],[[1205,1205],"valid"],[[1206,1206],"mapped",[1207]],[[1207,1207],"valid"],[[1208,1208],"mapped",[1209]],[[1209,1209],"valid"],[[1210,1210],"mapped",[1211]],[[1211,1211],"valid"],[[1212,1212],"mapped",[1213]],[[1213,1213],"valid"],[[1214,1214],"mapped",[1215]],[[1215,1215],"valid"],[[1216,1216],"disallowed"],[[1217,1217],"mapped",[1218]],[[1218,1218],"valid"],[[1219,1219],"mapped",[1220]],[[1220,1220],"valid"],[[1221,1221],"mapped",[1222]],[[1222,1222],"valid"],[[1223,1223],"mapped",[1224]],[[1224,1224],"valid"],[[1225,1225],"mapped",[1226]],[[1226,1226],"valid"],[[1227,1227],"mapped",[1228]],[[1228,1228],"valid"],[[1229,1229],"mapped",[1230]],[[1230,1230],"valid"],[[1231,1231],"valid"],[[1232,1232],"mapped",[1233]],[[1233,1233],"valid"],[[1234,1234],"mapped",[1235]],[[1235,1235],"valid"],[[1236,1236],"mapped",[1237]],[[1237,1237],"valid"],[[1238,1238],"mapped",[1239]],[[1239,1239],"valid"],[[1240,1240],"mapped",[1241]],[[1241,1241],"valid"],[[1242,1242],"mapped",[1243]],[[1243,1243],"valid"],[[1244,1244],"mapped",[1245]],[[1245,1245],"valid"],[[1246,1246],"mapped",[1247]],[[1247,1247],"valid"],[[1248,1248],"mapped",[1249]],[[1249,1249],"valid"],[[1250,1250],"mapped",[1251]],[[1251,1251],"valid"],[[1252,1252],"mapped",[1253]],[[1253,1253],"valid"],[[1254,1254],"mapped",[1255]],[[1255,1255],"valid"],[[1256,1256],"mapped",[1257]],[[1257,1257],"valid"],[[1258,1258],"mapped",[1259]],[[1259,1259],"valid"],[[1260,1260],"mapped",[1261]],[[1261,1261],"valid"],[[1262,1262],"mapped",[1263]],[[1263,1263],"valid"],[[1264,1264],"mapped",[1265]],[[1265,1265],"valid"],[[1266,1266],"mapped",[1267]],[[1267,1267],"valid"],[[1268,1268],"mapped",[1269]],[[1269,1269],"valid"],[[1270,1270],"mapped",[1271]],[[1271,1271],"valid"],[[1272,1272],"mapped",[1273]],[[1273,1273],"valid"],[[1274,1274],"mapped",[1275]],[[1275,1275],"valid"],[[1276,1276],"mapped",[1277]],[[1277,1277],"valid"],[[1278,1278],"mapped",[1279]],[[1279,1279],"valid"],[[1280,1280],"mapped",[1281]],[[1281,1281],"valid"],[[1282,1282],"mapped",[1283]],[[1283,1283],"valid"],[[1284,1284],"mapped",[1285]],[[1285,1285],"valid"],[[1286,1286],"mapped",[1287]],[[1287,1287],"valid"],[[1288,1288],"mapped",[1289]],[[1289,1289],"valid"],[[1290,1290],"mapped",[1291]],[[1291,1291],"valid"],[[1292,1292],"mapped",[1293]],[[1293,1293],"valid"],[[1294,1294],"mapped",[1295]],[[1295,1295],"valid"],[[1296,1296],"mapped",[1297]],[[1297,1297],"valid"],[[1298,1298],"mapped",[1299]],[[1299,1299],"valid"],[[1300,1300],"mapped",[1301]],[[1301,1301],"valid"],[[1302,1302],"mapped",[1303]],[[1303,1303],"valid"],[[1304,1304],"mapped",[1305]],[[1305,1305],"valid"],[[1306,1306],"mapped",[1307]],[[1307,1307],"valid"],[[1308,1308],"mapped",[1309]],[[1309,1309],"valid"],[[1310,1310],"mapped",[1311]],[[1311,1311],"valid"],[[1312,1312],"mapped",[1313]],[[1313,1313],"valid"],[[1314,1314],"mapped",[1315]],[[1315,1315],"valid"],[[1316,1316],"mapped",[1317]],[[1317,1317],"valid"],[[1318,1318],"mapped",[1319]],[[1319,1319],"valid"],[[1320,1320],"mapped",[1321]],[[1321,1321],"valid"],[[1322,1322],"mapped",[1323]],[[1323,1323],"valid"],[[1324,1324],"mapped",[1325]],[[1325,1325],"valid"],[[1326,1326],"mapped",[1327]],[[1327,1327],"valid"],[[1328,1328],"disallowed"],[[1329,1329],"mapped",[1377]],[[1330,1330],"mapped",[1378]],[[1331,1331],"mapped",[1379]],[[1332,1332],"mapped",[1380]],[[1333,1333],"mapped",[1381]],[[1334,1334],"mapped",[1382]],[[1335,1335],"mapped",[1383]],[[1336,1336],"mapped",[1384]],[[1337,1337],"mapped",[1385]],[[1338,1338],"mapped",[1386]],[[1339,1339],"mapped",[1387]],[[1340,1340],"mapped",[1388]],[[1341,1341],"mapped",[1389]],[[1342,1342],"mapped",[1390]],[[1343,1343],"mapped",[1391]],[[1344,1344],"mapped",[1392]],[[1345,1345],"mapped",[1393]],[[1346,1346],"mapped",[1394]],[[1347,1347],"mapped",[1395]],[[1348,1348],"mapped",[1396]],[[1349,1349],"mapped",[1397]],[[1350,1350],"mapped",[1398]],[[1351,1351],"mapped",[1399]],[[1352,1352],"mapped",[1400]],[[1353,1353],"mapped",[1401]],[[1354,1354],"mapped",[1402]],[[1355,1355],"mapped",[1403]],[[1356,1356],"mapped",[1404]],[[1357,1357],"mapped",[1405]],[[1358,1358],"mapped",[1406]],[[1359,1359],"mapped",[1407]],[[1360,1360],"mapped",[1408]],[[1361,1361],"mapped",[1409]],[[1362,1362],"mapped",[1410]],[[1363,1363],"mapped",[1411]],[[1364,1364],"mapped",[1412]],[[1365,1365],"mapped",[1413]],[[1366,1366],"mapped",[1414]],[[1367,1368],"disallowed"],[[1369,1369],"valid"],[[1370,1375],"valid",[],"NV8"],[[1376,1376],"disallowed"],[[1377,1414],"valid"],[[1415,1415],"mapped",[1381,1410]],[[1416,1416],"disallowed"],[[1417,1417],"valid",[],"NV8"],[[1418,1418],"valid",[],"NV8"],[[1419,1420],"disallowed"],[[1421,1422],"valid",[],"NV8"],[[1423,1423],"valid",[],"NV8"],[[1424,1424],"disallowed"],[[1425,1441],"valid"],[[1442,1442],"valid"],[[1443,1455],"valid"],[[1456,1465],"valid"],[[1466,1466],"valid"],[[1467,1469],"valid"],[[1470,1470],"valid",[],"NV8"],[[1471,1471],"valid"],[[1472,1472],"valid",[],"NV8"],[[1473,1474],"valid"],[[1475,1475],"valid",[],"NV8"],[[1476,1476],"valid"],[[1477,1477],"valid"],[[1478,1478],"valid",[],"NV8"],[[1479,1479],"valid"],[[1480,1487],"disallowed"],[[1488,1514],"valid"],[[1515,1519],"disallowed"],[[1520,1524],"valid"],[[1525,1535],"disallowed"],[[1536,1539],"disallowed"],[[1540,1540],"disallowed"],[[1541,1541],"disallowed"],[[1542,1546],"valid",[],"NV8"],[[1547,1547],"valid",[],"NV8"],[[1548,1548],"valid",[],"NV8"],[[1549,1551],"valid",[],"NV8"],[[1552,1557],"valid"],[[1558,1562],"valid"],[[1563,1563],"valid",[],"NV8"],[[1564,1564],"disallowed"],[[1565,1565],"disallowed"],[[1566,1566],"valid",[],"NV8"],[[1567,1567],"valid",[],"NV8"],[[1568,1568],"valid"],[[1569,1594],"valid"],[[1595,1599],"valid"],[[1600,1600],"valid",[],"NV8"],[[1601,1618],"valid"],[[1619,1621],"valid"],[[1622,1624],"valid"],[[1625,1630],"valid"],[[1631,1631],"valid"],[[1632,1641],"valid"],[[1642,1645],"valid",[],"NV8"],[[1646,1647],"valid"],[[1648,1652],"valid"],[[1653,1653],"mapped",[1575,1652]],[[1654,1654],"mapped",[1608,1652]],[[1655,1655],"mapped",[1735,1652]],[[1656,1656],"mapped",[1610,1652]],[[1657,1719],"valid"],[[1720,1721],"valid"],[[1722,1726],"valid"],[[1727,1727],"valid"],[[1728,1742],"valid"],[[1743,1743],"valid"],[[1744,1747],"valid"],[[1748,1748],"valid",[],"NV8"],[[1749,1756],"valid"],[[1757,1757],"disallowed"],[[1758,1758],"valid",[],"NV8"],[[1759,1768],"valid"],[[1769,1769],"valid",[],"NV8"],[[1770,1773],"valid"],[[1774,1775],"valid"],[[1776,1785],"valid"],[[1786,1790],"valid"],[[1791,1791],"valid"],[[1792,1805],"valid",[],"NV8"],[[1806,1806],"disallowed"],[[1807,1807],"disallowed"],[[1808,1836],"valid"],[[1837,1839],"valid"],[[1840,1866],"valid"],[[1867,1868],"disallowed"],[[1869,1871],"valid"],[[1872,1901],"valid"],[[1902,1919],"valid"],[[1920,1968],"valid"],[[1969,1969],"valid"],[[1970,1983],"disallowed"],[[1984,2037],"valid"],[[2038,2042],"valid",[],"NV8"],[[2043,2047],"disallowed"],[[2048,2093],"valid"],[[2094,2095],"disallowed"],[[2096,2110],"valid",[],"NV8"],[[2111,2111],"disallowed"],[[2112,2139],"valid"],[[2140,2141],"disallowed"],[[2142,2142],"valid",[],"NV8"],[[2143,2207],"disallowed"],[[2208,2208],"valid"],[[2209,2209],"valid"],[[2210,2220],"valid"],[[2221,2226],"valid"],[[2227,2228],"valid"],[[2229,2274],"disallowed"],[[2275,2275],"valid"],[[2276,2302],"valid"],[[2303,2303],"valid"],[[2304,2304],"valid"],[[2305,2307],"valid"],[[2308,2308],"valid"],[[2309,2361],"valid"],[[2362,2363],"valid"],[[2364,2381],"valid"],[[2382,2382],"valid"],[[2383,2383],"valid"],[[2384,2388],"valid"],[[2389,2389],"valid"],[[2390,2391],"valid"],[[2392,2392],"mapped",[2325,2364]],[[2393,2393],"mapped",[2326,2364]],[[2394,2394],"mapped",[2327,2364]],[[2395,2395],"mapped",[2332,2364]],[[2396,2396],"mapped",[2337,2364]],[[2397,2397],"mapped",[2338,2364]],[[2398,2398],"mapped",[2347,2364]],[[2399,2399],"mapped",[2351,2364]],[[2400,2403],"valid"],[[2404,2405],"valid",[],"NV8"],[[2406,2415],"valid"],[[2416,2416],"valid",[],"NV8"],[[2417,2418],"valid"],[[2419,2423],"valid"],[[2424,2424],"valid"],[[2425,2426],"valid"],[[2427,2428],"valid"],[[2429,2429],"valid"],[[2430,2431],"valid"],[[2432,2432],"valid"],[[2433,2435],"valid"],[[2436,2436],"disallowed"],[[2437,2444],"valid"],[[2445,2446],"disallowed"],[[2447,2448],"valid"],[[2449,2450],"disallowed"],[[2451,2472],"valid"],[[2473,2473],"disallowed"],[[2474,2480],"valid"],[[2481,2481],"disallowed"],[[2482,2482],"valid"],[[2483,2485],"disallowed"],[[2486,2489],"valid"],[[2490,2491],"disallowed"],[[2492,2492],"valid"],[[2493,2493],"valid"],[[2494,2500],"valid"],[[2501,2502],"disallowed"],[[2503,2504],"valid"],[[2505,2506],"disallowed"],[[2507,2509],"valid"],[[2510,2510],"valid"],[[2511,2518],"disallowed"],[[2519,2519],"valid"],[[2520,2523],"disallowed"],[[2524,2524],"mapped",[2465,2492]],[[2525,2525],"mapped",[2466,2492]],[[2526,2526],"disallowed"],[[2527,2527],"mapped",[2479,2492]],[[2528,2531],"valid"],[[2532,2533],"disallowed"],[[2534,2545],"valid"],[[2546,2554],"valid",[],"NV8"],[[2555,2555],"valid",[],"NV8"],[[2556,2560],"disallowed"],[[2561,2561],"valid"],[[2562,2562],"valid"],[[2563,2563],"valid"],[[2564,2564],"disallowed"],[[2565,2570],"valid"],[[2571,2574],"disallowed"],[[2575,2576],"valid"],[[2577,2578],"disallowed"],[[2579,2600],"valid"],[[2601,2601],"disallowed"],[[2602,2608],"valid"],[[2609,2609],"disallowed"],[[2610,2610],"valid"],[[2611,2611],"mapped",[2610,2620]],[[2612,2612],"disallowed"],[[2613,2613],"valid"],[[2614,2614],"mapped",[2616,2620]],[[2615,2615],"disallowed"],[[2616,2617],"valid"],[[2618,2619],"disallowed"],[[2620,2620],"valid"],[[2621,2621],"disallowed"],[[2622,2626],"valid"],[[2627,2630],"disallowed"],[[2631,2632],"valid"],[[2633,2634],"disallowed"],[[2635,2637],"valid"],[[2638,2640],"disallowed"],[[2641,2641],"valid"],[[2642,2648],"disallowed"],[[2649,2649],"mapped",[2582,2620]],[[2650,2650],"mapped",[2583,2620]],[[2651,2651],"mapped",[2588,2620]],[[2652,2652],"valid"],[[2653,2653],"disallowed"],[[2654,2654],"mapped",[2603,2620]],[[2655,2661],"disallowed"],[[2662,2676],"valid"],[[2677,2677],"valid"],[[2678,2688],"disallowed"],[[2689,2691],"valid"],[[2692,2692],"disallowed"],[[2693,2699],"valid"],[[2700,2700],"valid"],[[2701,2701],"valid"],[[2702,2702],"disallowed"],[[2703,2705],"valid"],[[2706,2706],"disallowed"],[[2707,2728],"valid"],[[2729,2729],"disallowed"],[[2730,2736],"valid"],[[2737,2737],"disallowed"],[[2738,2739],"valid"],[[2740,2740],"disallowed"],[[2741,2745],"valid"],[[2746,2747],"disallowed"],[[2748,2757],"valid"],[[2758,2758],"disallowed"],[[2759,2761],"valid"],[[2762,2762],"disallowed"],[[2763,2765],"valid"],[[2766,2767],"disallowed"],[[2768,2768],"valid"],[[2769,2783],"disallowed"],[[2784,2784],"valid"],[[2785,2787],"valid"],[[2788,2789],"disallowed"],[[2790,2799],"valid"],[[2800,2800],"valid",[],"NV8"],[[2801,2801],"valid",[],"NV8"],[[2802,2808],"disallowed"],[[2809,2809],"valid"],[[2810,2816],"disallowed"],[[2817,2819],"valid"],[[2820,2820],"disallowed"],[[2821,2828],"valid"],[[2829,2830],"disallowed"],[[2831,2832],"valid"],[[2833,2834],"disallowed"],[[2835,2856],"valid"],[[2857,2857],"disallowed"],[[2858,2864],"valid"],[[2865,2865],"disallowed"],[[2866,2867],"valid"],[[2868,2868],"disallowed"],[[2869,2869],"valid"],[[2870,2873],"valid"],[[2874,2875],"disallowed"],[[2876,2883],"valid"],[[2884,2884],"valid"],[[2885,2886],"disallowed"],[[2887,2888],"valid"],[[2889,2890],"disallowed"],[[2891,2893],"valid"],[[2894,2901],"disallowed"],[[2902,2903],"valid"],[[2904,2907],"disallowed"],[[2908,2908],"mapped",[2849,2876]],[[2909,2909],"mapped",[2850,2876]],[[2910,2910],"disallowed"],[[2911,2913],"valid"],[[2914,2915],"valid"],[[2916,2917],"disallowed"],[[2918,2927],"valid"],[[2928,2928],"valid",[],"NV8"],[[2929,2929],"valid"],[[2930,2935],"valid",[],"NV8"],[[2936,2945],"disallowed"],[[2946,2947],"valid"],[[2948,2948],"disallowed"],[[2949,2954],"valid"],[[2955,2957],"disallowed"],[[2958,2960],"valid"],[[2961,2961],"disallowed"],[[2962,2965],"valid"],[[2966,2968],"disallowed"],[[2969,2970],"valid"],[[2971,2971],"disallowed"],[[2972,2972],"valid"],[[2973,2973],"disallowed"],[[2974,2975],"valid"],[[2976,2978],"disallowed"],[[2979,2980],"valid"],[[2981,2983],"disallowed"],[[2984,2986],"valid"],[[2987,2989],"disallowed"],[[2990,2997],"valid"],[[2998,2998],"valid"],[[2999,3001],"valid"],[[3002,3005],"disallowed"],[[3006,3010],"valid"],[[3011,3013],"disallowed"],[[3014,3016],"valid"],[[3017,3017],"disallowed"],[[3018,3021],"valid"],[[3022,3023],"disallowed"],[[3024,3024],"valid"],[[3025,3030],"disallowed"],[[3031,3031],"valid"],[[3032,3045],"disallowed"],[[3046,3046],"valid"],[[3047,3055],"valid"],[[3056,3058],"valid",[],"NV8"],[[3059,3066],"valid",[],"NV8"],[[3067,3071],"disallowed"],[[3072,3072],"valid"],[[3073,3075],"valid"],[[3076,3076],"disallowed"],[[3077,3084],"valid"],[[3085,3085],"disallowed"],[[3086,3088],"valid"],[[3089,3089],"disallowed"],[[3090,3112],"valid"],[[3113,3113],"disallowed"],[[3114,3123],"valid"],[[3124,3124],"valid"],[[3125,3129],"valid"],[[3130,3132],"disallowed"],[[3133,3133],"valid"],[[3134,3140],"valid"],[[3141,3141],"disallowed"],[[3142,3144],"valid"],[[3145,3145],"disallowed"],[[3146,3149],"valid"],[[3150,3156],"disallowed"],[[3157,3158],"valid"],[[3159,3159],"disallowed"],[[3160,3161],"valid"],[[3162,3162],"valid"],[[3163,3167],"disallowed"],[[3168,3169],"valid"],[[3170,3171],"valid"],[[3172,3173],"disallowed"],[[3174,3183],"valid"],[[3184,3191],"disallowed"],[[3192,3199],"valid",[],"NV8"],[[3200,3200],"disallowed"],[[3201,3201],"valid"],[[3202,3203],"valid"],[[3204,3204],"disallowed"],[[3205,3212],"valid"],[[3213,3213],"disallowed"],[[3214,3216],"valid"],[[3217,3217],"disallowed"],[[3218,3240],"valid"],[[3241,3241],"disallowed"],[[3242,3251],"valid"],[[3252,3252],"disallowed"],[[3253,3257],"valid"],[[3258,3259],"disallowed"],[[3260,3261],"valid"],[[3262,3268],"valid"],[[3269,3269],"disallowed"],[[3270,3272],"valid"],[[3273,3273],"disallowed"],[[3274,3277],"valid"],[[3278,3284],"disallowed"],[[3285,3286],"valid"],[[3287,3293],"disallowed"],[[3294,3294],"valid"],[[3295,3295],"disallowed"],[[3296,3297],"valid"],[[3298,3299],"valid"],[[3300,3301],"disallowed"],[[3302,3311],"valid"],[[3312,3312],"disallowed"],[[3313,3314],"valid"],[[3315,3328],"disallowed"],[[3329,3329],"valid"],[[3330,3331],"valid"],[[3332,3332],"disallowed"],[[3333,3340],"valid"],[[3341,3341],"disallowed"],[[3342,3344],"valid"],[[3345,3345],"disallowed"],[[3346,3368],"valid"],[[3369,3369],"valid"],[[3370,3385],"valid"],[[3386,3386],"valid"],[[3387,3388],"disallowed"],[[3389,3389],"valid"],[[3390,3395],"valid"],[[3396,3396],"valid"],[[3397,3397],"disallowed"],[[3398,3400],"valid"],[[3401,3401],"disallowed"],[[3402,3405],"valid"],[[3406,3406],"valid"],[[3407,3414],"disallowed"],[[3415,3415],"valid"],[[3416,3422],"disallowed"],[[3423,3423],"valid"],[[3424,3425],"valid"],[[3426,3427],"valid"],[[3428,3429],"disallowed"],[[3430,3439],"valid"],[[3440,3445],"valid",[],"NV8"],[[3446,3448],"disallowed"],[[3449,3449],"valid",[],"NV8"],[[3450,3455],"valid"],[[3456,3457],"disallowed"],[[3458,3459],"valid"],[[3460,3460],"disallowed"],[[3461,3478],"valid"],[[3479,3481],"disallowed"],[[3482,3505],"valid"],[[3506,3506],"disallowed"],[[3507,3515],"valid"],[[3516,3516],"disallowed"],[[3517,3517],"valid"],[[3518,3519],"disallowed"],[[3520,3526],"valid"],[[3527,3529],"disallowed"],[[3530,3530],"valid"],[[3531,3534],"disallowed"],[[3535,3540],"valid"],[[3541,3541],"disallowed"],[[3542,3542],"valid"],[[3543,3543],"disallowed"],[[3544,3551],"valid"],[[3552,3557],"disallowed"],[[3558,3567],"valid"],[[3568,3569],"disallowed"],[[3570,3571],"valid"],[[3572,3572],"valid",[],"NV8"],[[3573,3584],"disallowed"],[[3585,3634],"valid"],[[3635,3635],"mapped",[3661,3634]],[[3636,3642],"valid"],[[3643,3646],"disallowed"],[[3647,3647],"valid",[],"NV8"],[[3648,3662],"valid"],[[3663,3663],"valid",[],"NV8"],[[3664,3673],"valid"],[[3674,3675],"valid",[],"NV8"],[[3676,3712],"disallowed"],[[3713,3714],"valid"],[[3715,3715],"disallowed"],[[3716,3716],"valid"],[[3717,3718],"disallowed"],[[3719,3720],"valid"],[[3721,3721],"disallowed"],[[3722,3722],"valid"],[[3723,3724],"disallowed"],[[3725,3725],"valid"],[[3726,3731],"disallowed"],[[3732,3735],"valid"],[[3736,3736],"disallowed"],[[3737,3743],"valid"],[[3744,3744],"disallowed"],[[3745,3747],"valid"],[[3748,3748],"disallowed"],[[3749,3749],"valid"],[[3750,3750],"disallowed"],[[3751,3751],"valid"],[[3752,3753],"disallowed"],[[3754,3755],"valid"],[[3756,3756],"disallowed"],[[3757,3762],"valid"],[[3763,3763],"mapped",[3789,3762]],[[3764,3769],"valid"],[[3770,3770],"disallowed"],[[3771,3773],"valid"],[[3774,3775],"disallowed"],[[3776,3780],"valid"],[[3781,3781],"disallowed"],[[3782,3782],"valid"],[[3783,3783],"disallowed"],[[3784,3789],"valid"],[[3790,3791],"disallowed"],[[3792,3801],"valid"],[[3802,3803],"disallowed"],[[3804,3804],"mapped",[3755,3737]],[[3805,3805],"mapped",[3755,3745]],[[3806,3807],"valid"],[[3808,3839],"disallowed"],[[3840,3840],"valid"],[[3841,3850],"valid",[],"NV8"],[[3851,3851],"valid"],[[3852,3852],"mapped",[3851]],[[3853,3863],"valid",[],"NV8"],[[3864,3865],"valid"],[[3866,3871],"valid",[],"NV8"],[[3872,3881],"valid"],[[3882,3892],"valid",[],"NV8"],[[3893,3893],"valid"],[[3894,3894],"valid",[],"NV8"],[[3895,3895],"valid"],[[3896,3896],"valid",[],"NV8"],[[3897,3897],"valid"],[[3898,3901],"valid",[],"NV8"],[[3902,3906],"valid"],[[3907,3907],"mapped",[3906,4023]],[[3908,3911],"valid"],[[3912,3912],"disallowed"],[[3913,3916],"valid"],[[3917,3917],"mapped",[3916,4023]],[[3918,3921],"valid"],[[3922,3922],"mapped",[3921,4023]],[[3923,3926],"valid"],[[3927,3927],"mapped",[3926,4023]],[[3928,3931],"valid"],[[3932,3932],"mapped",[3931,4023]],[[3933,3944],"valid"],[[3945,3945],"mapped",[3904,4021]],[[3946,3946],"valid"],[[3947,3948],"valid"],[[3949,3952],"disallowed"],[[3953,3954],"valid"],[[3955,3955],"mapped",[3953,3954]],[[3956,3956],"valid"],[[3957,3957],"mapped",[3953,3956]],[[3958,3958],"mapped",[4018,3968]],[[3959,3959],"mapped",[4018,3953,3968]],[[3960,3960],"mapped",[4019,3968]],[[3961,3961],"mapped",[4019,3953,3968]],[[3962,3968],"valid"],[[3969,3969],"mapped",[3953,3968]],[[3970,3972],"valid"],[[3973,3973],"valid",[],"NV8"],[[3974,3979],"valid"],[[3980,3983],"valid"],[[3984,3986],"valid"],[[3987,3987],"mapped",[3986,4023]],[[3988,3989],"valid"],[[3990,3990],"valid"],[[3991,3991],"valid"],[[3992,3992],"disallowed"],[[3993,3996],"valid"],[[3997,3997],"mapped",[3996,4023]],[[3998,4001],"valid"],[[4002,4002],"mapped",[4001,4023]],[[4003,4006],"valid"],[[4007,4007],"mapped",[4006,4023]],[[4008,4011],"valid"],[[4012,4012],"mapped",[4011,4023]],[[4013,4013],"valid"],[[4014,4016],"valid"],[[4017,4023],"valid"],[[4024,4024],"valid"],[[4025,4025],"mapped",[3984,4021]],[[4026,4028],"valid"],[[4029,4029],"disallowed"],[[4030,4037],"valid",[],"NV8"],[[4038,4038],"valid"],[[4039,4044],"valid",[],"NV8"],[[4045,4045],"disallowed"],[[4046,4046],"valid",[],"NV8"],[[4047,4047],"valid",[],"NV8"],[[4048,4049],"valid",[],"NV8"],[[4050,4052],"valid",[],"NV8"],[[4053,4056],"valid",[],"NV8"],[[4057,4058],"valid",[],"NV8"],[[4059,4095],"disallowed"],[[4096,4129],"valid"],[[4130,4130],"valid"],[[4131,4135],"valid"],[[4136,4136],"valid"],[[4137,4138],"valid"],[[4139,4139],"valid"],[[4140,4146],"valid"],[[4147,4149],"valid"],[[4150,4153],"valid"],[[4154,4159],"valid"],[[4160,4169],"valid"],[[4170,4175],"valid",[],"NV8"],[[4176,4185],"valid"],[[4186,4249],"valid"],[[4250,4253],"valid"],[[4254,4255],"valid",[],"NV8"],[[4256,4293],"disallowed"],[[4294,4294],"disallowed"],[[4295,4295],"mapped",[11559]],[[4296,4300],"disallowed"],[[4301,4301],"mapped",[11565]],[[4302,4303],"disallowed"],[[4304,4342],"valid"],[[4343,4344],"valid"],[[4345,4346],"valid"],[[4347,4347],"valid",[],"NV8"],[[4348,4348],"mapped",[4316]],[[4349,4351],"valid"],[[4352,4441],"valid",[],"NV8"],[[4442,4446],"valid",[],"NV8"],[[4447,4448],"disallowed"],[[4449,4514],"valid",[],"NV8"],[[4515,4519],"valid",[],"NV8"],[[4520,4601],"valid",[],"NV8"],[[4602,4607],"valid",[],"NV8"],[[4608,4614],"valid"],[[4615,4615],"valid"],[[4616,4678],"valid"],[[4679,4679],"valid"],[[4680,4680],"valid"],[[4681,4681],"disallowed"],[[4682,4685],"valid"],[[4686,4687],"disallowed"],[[4688,4694],"valid"],[[4695,4695],"disallowed"],[[4696,4696],"valid"],[[4697,4697],"disallowed"],[[4698,4701],"valid"],[[4702,4703],"disallowed"],[[4704,4742],"valid"],[[4743,4743],"valid"],[[4744,4744],"valid"],[[4745,4745],"disallowed"],[[4746,4749],"valid"],[[4750,4751],"disallowed"],[[4752,4782],"valid"],[[4783,4783],"valid"],[[4784,4784],"valid"],[[4785,4785],"disallowed"],[[4786,4789],"valid"],[[4790,4791],"disallowed"],[[4792,4798],"valid"],[[4799,4799],"disallowed"],[[4800,4800],"valid"],[[4801,4801],"disallowed"],[[4802,4805],"valid"],[[4806,4807],"disallowed"],[[4808,4814],"valid"],[[4815,4815],"valid"],[[4816,4822],"valid"],[[4823,4823],"disallowed"],[[4824,4846],"valid"],[[4847,4847],"valid"],[[4848,4878],"valid"],[[4879,4879],"valid"],[[4880,4880],"valid"],[[4881,4881],"disallowed"],[[4882,4885],"valid"],[[4886,4887],"disallowed"],[[4888,4894],"valid"],[[4895,4895],"valid"],[[4896,4934],"valid"],[[4935,4935],"valid"],[[4936,4954],"valid"],[[4955,4956],"disallowed"],[[4957,4958],"valid"],[[4959,4959],"valid"],[[4960,4960],"valid",[],"NV8"],[[4961,4988],"valid",[],"NV8"],[[4989,4991],"disallowed"],[[4992,5007],"valid"],[[5008,5017],"valid",[],"NV8"],[[5018,5023],"disallowed"],[[5024,5108],"valid"],[[5109,5109],"valid"],[[5110,5111],"disallowed"],[[5112,5112],"mapped",[5104]],[[5113,5113],"mapped",[5105]],[[5114,5114],"mapped",[5106]],[[5115,5115],"mapped",[5107]],[[5116,5116],"mapped",[5108]],[[5117,5117],"mapped",[5109]],[[5118,5119],"disallowed"],[[5120,5120],"valid",[],"NV8"],[[5121,5740],"valid"],[[5741,5742],"valid",[],"NV8"],[[5743,5750],"valid"],[[5751,5759],"valid"],[[5760,5760],"disallowed"],[[5761,5786],"valid"],[[5787,5788],"valid",[],"NV8"],[[5789,5791],"disallowed"],[[5792,5866],"valid"],[[5867,5872],"valid",[],"NV8"],[[5873,5880],"valid"],[[5881,5887],"disallowed"],[[5888,5900],"valid"],[[5901,5901],"disallowed"],[[5902,5908],"valid"],[[5909,5919],"disallowed"],[[5920,5940],"valid"],[[5941,5942],"valid",[],"NV8"],[[5943,5951],"disallowed"],[[5952,5971],"valid"],[[5972,5983],"disallowed"],[[5984,5996],"valid"],[[5997,5997],"disallowed"],[[5998,6000],"valid"],[[6001,6001],"disallowed"],[[6002,6003],"valid"],[[6004,6015],"disallowed"],[[6016,6067],"valid"],[[6068,6069],"disallowed"],[[6070,6099],"valid"],[[6100,6102],"valid",[],"NV8"],[[6103,6103],"valid"],[[6104,6107],"valid",[],"NV8"],[[6108,6108],"valid"],[[6109,6109],"valid"],[[6110,6111],"disallowed"],[[6112,6121],"valid"],[[6122,6127],"disallowed"],[[6128,6137],"valid",[],"NV8"],[[6138,6143],"disallowed"],[[6144,6149],"valid",[],"NV8"],[[6150,6150],"disallowed"],[[6151,6154],"valid",[],"NV8"],[[6155,6157],"ignored"],[[6158,6158],"disallowed"],[[6159,6159],"disallowed"],[[6160,6169],"valid"],[[6170,6175],"disallowed"],[[6176,6263],"valid"],[[6264,6271],"disallowed"],[[6272,6313],"valid"],[[6314,6314],"valid"],[[6315,6319],"disallowed"],[[6320,6389],"valid"],[[6390,6399],"disallowed"],[[6400,6428],"valid"],[[6429,6430],"valid"],[[6431,6431],"disallowed"],[[6432,6443],"valid"],[[6444,6447],"disallowed"],[[6448,6459],"valid"],[[6460,6463],"disallowed"],[[6464,6464],"valid",[],"NV8"],[[6465,6467],"disallowed"],[[6468,6469],"valid",[],"NV8"],[[6470,6509],"valid"],[[6510,6511],"disallowed"],[[6512,6516],"valid"],[[6517,6527],"disallowed"],[[6528,6569],"valid"],[[6570,6571],"valid"],[[6572,6575],"disallowed"],[[6576,6601],"valid"],[[6602,6607],"disallowed"],[[6608,6617],"valid"],[[6618,6618],"valid",[],"XV8"],[[6619,6621],"disallowed"],[[6622,6623],"valid",[],"NV8"],[[6624,6655],"valid",[],"NV8"],[[6656,6683],"valid"],[[6684,6685],"disallowed"],[[6686,6687],"valid",[],"NV8"],[[6688,6750],"valid"],[[6751,6751],"disallowed"],[[6752,6780],"valid"],[[6781,6782],"disallowed"],[[6783,6793],"valid"],[[6794,6799],"disallowed"],[[6800,6809],"valid"],[[6810,6815],"disallowed"],[[6816,6822],"valid",[],"NV8"],[[6823,6823],"valid"],[[6824,6829],"valid",[],"NV8"],[[6830,6831],"disallowed"],[[6832,6845],"valid"],[[6846,6846],"valid",[],"NV8"],[[6847,6911],"disallowed"],[[6912,6987],"valid"],[[6988,6991],"disallowed"],[[6992,7001],"valid"],[[7002,7018],"valid",[],"NV8"],[[7019,7027],"valid"],[[7028,7036],"valid",[],"NV8"],[[7037,7039],"disallowed"],[[7040,7082],"valid"],[[7083,7085],"valid"],[[7086,7097],"valid"],[[7098,7103],"valid"],[[7104,7155],"valid"],[[7156,7163],"disallowed"],[[7164,7167],"valid",[],"NV8"],[[7168,7223],"valid"],[[7224,7226],"disallowed"],[[7227,7231],"valid",[],"NV8"],[[7232,7241],"valid"],[[7242,7244],"disallowed"],[[7245,7293],"valid"],[[7294,7295],"valid",[],"NV8"],[[7296,7359],"disallowed"],[[7360,7367],"valid",[],"NV8"],[[7368,7375],"disallowed"],[[7376,7378],"valid"],[[7379,7379],"valid",[],"NV8"],[[7380,7410],"valid"],[[7411,7414],"valid"],[[7415,7415],"disallowed"],[[7416,7417],"valid"],[[7418,7423],"disallowed"],[[7424,7467],"valid"],[[7468,7468],"mapped",[97]],[[7469,7469],"mapped",[230]],[[7470,7470],"mapped",[98]],[[7471,7471],"valid"],[[7472,7472],"mapped",[100]],[[7473,7473],"mapped",[101]],[[7474,7474],"mapped",[477]],[[7475,7475],"mapped",[103]],[[7476,7476],"mapped",[104]],[[7477,7477],"mapped",[105]],[[7478,7478],"mapped",[106]],[[7479,7479],"mapped",[107]],[[7480,7480],"mapped",[108]],[[7481,7481],"mapped",[109]],[[7482,7482],"mapped",[110]],[[7483,7483],"valid"],[[7484,7484],"mapped",[111]],[[7485,7485],"mapped",[547]],[[7486,7486],"mapped",[112]],[[7487,7487],"mapped",[114]],[[7488,7488],"mapped",[116]],[[7489,7489],"mapped",[117]],[[7490,7490],"mapped",[119]],[[7491,7491],"mapped",[97]],[[7492,7492],"mapped",[592]],[[7493,7493],"mapped",[593]],[[7494,7494],"mapped",[7426]],[[7495,7495],"mapped",[98]],[[7496,7496],"mapped",[100]],[[7497,7497],"mapped",[101]],[[7498,7498],"mapped",[601]],[[7499,7499],"mapped",[603]],[[7500,7500],"mapped",[604]],[[7501,7501],"mapped",[103]],[[7502,7502],"valid"],[[7503,7503],"mapped",[107]],[[7504,7504],"mapped",[109]],[[7505,7505],"mapped",[331]],[[7506,7506],"mapped",[111]],[[7507,7507],"mapped",[596]],[[7508,7508],"mapped",[7446]],[[7509,7509],"mapped",[7447]],[[7510,7510],"mapped",[112]],[[7511,7511],"mapped",[116]],[[7512,7512],"mapped",[117]],[[7513,7513],"mapped",[7453]],[[7514,7514],"mapped",[623]],[[7515,7515],"mapped",[118]],[[7516,7516],"mapped",[7461]],[[7517,7517],"mapped",[946]],[[7518,7518],"mapped",[947]],[[7519,7519],"mapped",[948]],[[7520,7520],"mapped",[966]],[[7521,7521],"mapped",[967]],[[7522,7522],"mapped",[105]],[[7523,7523],"mapped",[114]],[[7524,7524],"mapped",[117]],[[7525,7525],"mapped",[118]],[[7526,7526],"mapped",[946]],[[7527,7527],"mapped",[947]],[[7528,7528],"mapped",[961]],[[7529,7529],"mapped",[966]],[[7530,7530],"mapped",[967]],[[7531,7531],"valid"],[[7532,7543],"valid"],[[7544,7544],"mapped",[1085]],[[7545,7578],"valid"],[[7579,7579],"mapped",[594]],[[7580,7580],"mapped",[99]],[[7581,7581],"mapped",[597]],[[7582,7582],"mapped",[240]],[[7583,7583],"mapped",[604]],[[7584,7584],"mapped",[102]],[[7585,7585],"mapped",[607]],[[7586,7586],"mapped",[609]],[[7587,7587],"mapped",[613]],[[7588,7588],"mapped",[616]],[[7589,7589],"mapped",[617]],[[7590,7590],"mapped",[618]],[[7591,7591],"mapped",[7547]],[[7592,7592],"mapped",[669]],[[7593,7593],"mapped",[621]],[[7594,7594],"mapped",[7557]],[[7595,7595],"mapped",[671]],[[7596,7596],"mapped",[625]],[[7597,7597],"mapped",[624]],[[7598,7598],"mapped",[626]],[[7599,7599],"mapped",[627]],[[7600,7600],"mapped",[628]],[[7601,7601],"mapped",[629]],[[7602,7602],"mapped",[632]],[[7603,7603],"mapped",[642]],[[7604,7604],"mapped",[643]],[[7605,7605],"mapped",[427]],[[7606,7606],"mapped",[649]],[[7607,7607],"mapped",[650]],[[7608,7608],"mapped",[7452]],[[7609,7609],"mapped",[651]],[[7610,7610],"mapped",[652]],[[7611,7611],"mapped",[122]],[[7612,7612],"mapped",[656]],[[7613,7613],"mapped",[657]],[[7614,7614],"mapped",[658]],[[7615,7615],"mapped",[952]],[[7616,7619],"valid"],[[7620,7626],"valid"],[[7627,7654],"valid"],[[7655,7669],"valid"],[[7670,7675],"disallowed"],[[7676,7676],"valid"],[[7677,7677],"valid"],[[7678,7679],"valid"],[[7680,7680],"mapped",[7681]],[[7681,7681],"valid"],[[7682,7682],"mapped",[7683]],[[7683,7683],"valid"],[[7684,7684],"mapped",[7685]],[[7685,7685],"valid"],[[7686,7686],"mapped",[7687]],[[7687,7687],"valid"],[[7688,7688],"mapped",[7689]],[[7689,7689],"valid"],[[7690,7690],"mapped",[7691]],[[7691,7691],"valid"],[[7692,7692],"mapped",[7693]],[[7693,7693],"valid"],[[7694,7694],"mapped",[7695]],[[7695,7695],"valid"],[[7696,7696],"mapped",[7697]],[[7697,7697],"valid"],[[7698,7698],"mapped",[7699]],[[7699,7699],"valid"],[[7700,7700],"mapped",[7701]],[[7701,7701],"valid"],[[7702,7702],"mapped",[7703]],[[7703,7703],"valid"],[[7704,7704],"mapped",[7705]],[[7705,7705],"valid"],[[7706,7706],"mapped",[7707]],[[7707,7707],"valid"],[[7708,7708],"mapped",[7709]],[[7709,7709],"valid"],[[7710,7710],"mapped",[7711]],[[7711,7711],"valid"],[[7712,7712],"mapped",[7713]],[[7713,7713],"valid"],[[7714,7714],"mapped",[7715]],[[7715,7715],"valid"],[[7716,7716],"mapped",[7717]],[[7717,7717],"valid"],[[7718,7718],"mapped",[7719]],[[7719,7719],"valid"],[[7720,7720],"mapped",[7721]],[[7721,7721],"valid"],[[7722,7722],"mapped",[7723]],[[7723,7723],"valid"],[[7724,7724],"mapped",[7725]],[[7725,7725],"valid"],[[7726,7726],"mapped",[7727]],[[7727,7727],"valid"],[[7728,7728],"mapped",[7729]],[[7729,7729],"valid"],[[7730,7730],"mapped",[7731]],[[7731,7731],"valid"],[[7732,7732],"mapped",[7733]],[[7733,7733],"valid"],[[7734,7734],"mapped",[7735]],[[7735,7735],"valid"],[[7736,7736],"mapped",[7737]],[[7737,7737],"valid"],[[7738,7738],"mapped",[7739]],[[7739,7739],"valid"],[[7740,7740],"mapped",[7741]],[[7741,7741],"valid"],[[7742,7742],"mapped",[7743]],[[7743,7743],"valid"],[[7744,7744],"mapped",[7745]],[[7745,7745],"valid"],[[7746,7746],"mapped",[7747]],[[7747,7747],"valid"],[[7748,7748],"mapped",[7749]],[[7749,7749],"valid"],[[7750,7750],"mapped",[7751]],[[7751,7751],"valid"],[[7752,7752],"mapped",[7753]],[[7753,7753],"valid"],[[7754,7754],"mapped",[7755]],[[7755,7755],"valid"],[[7756,7756],"mapped",[7757]],[[7757,7757],"valid"],[[7758,7758],"mapped",[7759]],[[7759,7759],"valid"],[[7760,7760],"mapped",[7761]],[[7761,7761],"valid"],[[7762,7762],"mapped",[7763]],[[7763,7763],"valid"],[[7764,7764],"mapped",[7765]],[[7765,7765],"valid"],[[7766,7766],"mapped",[7767]],[[7767,7767],"valid"],[[7768,7768],"mapped",[7769]],[[7769,7769],"valid"],[[7770,7770],"mapped",[7771]],[[7771,7771],"valid"],[[7772,7772],"mapped",[7773]],[[7773,7773],"valid"],[[7774,7774],"mapped",[7775]],[[7775,7775],"valid"],[[7776,7776],"mapped",[7777]],[[7777,7777],"valid"],[[7778,7778],"mapped",[7779]],[[7779,7779],"valid"],[[7780,7780],"mapped",[7781]],[[7781,7781],"valid"],[[7782,7782],"mapped",[7783]],[[7783,7783],"valid"],[[7784,7784],"mapped",[7785]],[[7785,7785],"valid"],[[7786,7786],"mapped",[7787]],[[7787,7787],"valid"],[[7788,7788],"mapped",[7789]],[[7789,7789],"valid"],[[7790,7790],"mapped",[7791]],[[7791,7791],"valid"],[[7792,7792],"mapped",[7793]],[[7793,7793],"valid"],[[7794,7794],"mapped",[7795]],[[7795,7795],"valid"],[[7796,7796],"mapped",[7797]],[[7797,7797],"valid"],[[7798,7798],"mapped",[7799]],[[7799,7799],"valid"],[[7800,7800],"mapped",[7801]],[[7801,7801],"valid"],[[7802,7802],"mapped",[7803]],[[7803,7803],"valid"],[[7804,7804],"mapped",[7805]],[[7805,7805],"valid"],[[7806,7806],"mapped",[7807]],[[7807,7807],"valid"],[[7808,7808],"mapped",[7809]],[[7809,7809],"valid"],[[7810,7810],"mapped",[7811]],[[7811,7811],"valid"],[[7812,7812],"mapped",[7813]],[[7813,7813],"valid"],[[7814,7814],"mapped",[7815]],[[7815,7815],"valid"],[[7816,7816],"mapped",[7817]],[[7817,7817],"valid"],[[7818,7818],"mapped",[7819]],[[7819,7819],"valid"],[[7820,7820],"mapped",[7821]],[[7821,7821],"valid"],[[7822,7822],"mapped",[7823]],[[7823,7823],"valid"],[[7824,7824],"mapped",[7825]],[[7825,7825],"valid"],[[7826,7826],"mapped",[7827]],[[7827,7827],"valid"],[[7828,7828],"mapped",[7829]],[[7829,7833],"valid"],[[7834,7834],"mapped",[97,702]],[[7835,7835],"mapped",[7777]],[[7836,7837],"valid"],[[7838,7838],"mapped",[115,115]],[[7839,7839],"valid"],[[7840,7840],"mapped",[7841]],[[7841,7841],"valid"],[[7842,7842],"mapped",[7843]],[[7843,7843],"valid"],[[7844,7844],"mapped",[7845]],[[7845,7845],"valid"],[[7846,7846],"mapped",[7847]],[[7847,7847],"valid"],[[7848,7848],"mapped",[7849]],[[7849,7849],"valid"],[[7850,7850],"mapped",[7851]],[[7851,7851],"valid"],[[7852,7852],"mapped",[7853]],[[7853,7853],"valid"],[[7854,7854],"mapped",[7855]],[[7855,7855],"valid"],[[7856,7856],"mapped",[7857]],[[7857,7857],"valid"],[[7858,7858],"mapped",[7859]],[[7859,7859],"valid"],[[7860,7860],"mapped",[7861]],[[7861,7861],"valid"],[[7862,7862],"mapped",[7863]],[[7863,7863],"valid"],[[7864,7864],"mapped",[7865]],[[7865,7865],"valid"],[[7866,7866],"mapped",[7867]],[[7867,7867],"valid"],[[7868,7868],"mapped",[7869]],[[7869,7869],"valid"],[[7870,7870],"mapped",[7871]],[[7871,7871],"valid"],[[7872,7872],"mapped",[7873]],[[7873,7873],"valid"],[[7874,7874],"mapped",[7875]],[[7875,7875],"valid"],[[7876,7876],"mapped",[7877]],[[7877,7877],"valid"],[[7878,7878],"mapped",[7879]],[[7879,7879],"valid"],[[7880,7880],"mapped",[7881]],[[7881,7881],"valid"],[[7882,7882],"mapped",[7883]],[[7883,7883],"valid"],[[7884,7884],"mapped",[7885]],[[7885,7885],"valid"],[[7886,7886],"mapped",[7887]],[[7887,7887],"valid"],[[7888,7888],"mapped",[7889]],[[7889,7889],"valid"],[[7890,7890],"mapped",[7891]],[[7891,7891],"valid"],[[7892,7892],"mapped",[7893]],[[7893,7893],"valid"],[[7894,7894],"mapped",[7895]],[[7895,7895],"valid"],[[7896,7896],"mapped",[7897]],[[7897,7897],"valid"],[[7898,7898],"mapped",[7899]],[[7899,7899],"valid"],[[7900,7900],"mapped",[7901]],[[7901,7901],"valid"],[[7902,7902],"mapped",[7903]],[[7903,7903],"valid"],[[7904,7904],"mapped",[7905]],[[7905,7905],"valid"],[[7906,7906],"mapped",[7907]],[[7907,7907],"valid"],[[7908,7908],"mapped",[7909]],[[7909,7909],"valid"],[[7910,7910],"mapped",[7911]],[[7911,7911],"valid"],[[7912,7912],"mapped",[7913]],[[7913,7913],"valid"],[[7914,7914],"mapped",[7915]],[[7915,7915],"valid"],[[7916,7916],"mapped",[7917]],[[7917,7917],"valid"],[[7918,7918],"mapped",[7919]],[[7919,7919],"valid"],[[7920,7920],"mapped",[7921]],[[7921,7921],"valid"],[[7922,7922],"mapped",[7923]],[[7923,7923],"valid"],[[7924,7924],"mapped",[7925]],[[7925,7925],"valid"],[[7926,7926],"mapped",[7927]],[[7927,7927],"valid"],[[7928,7928],"mapped",[7929]],[[7929,7929],"valid"],[[7930,7930],"mapped",[7931]],[[7931,7931],"valid"],[[7932,7932],"mapped",[7933]],[[7933,7933],"valid"],[[7934,7934],"mapped",[7935]],[[7935,7935],"valid"],[[7936,7943],"valid"],[[7944,7944],"mapped",[7936]],[[7945,7945],"mapped",[7937]],[[7946,7946],"mapped",[7938]],[[7947,7947],"mapped",[7939]],[[7948,7948],"mapped",[7940]],[[7949,7949],"mapped",[7941]],[[7950,7950],"mapped",[7942]],[[7951,7951],"mapped",[7943]],[[7952,7957],"valid"],[[7958,7959],"disallowed"],[[7960,7960],"mapped",[7952]],[[7961,7961],"mapped",[7953]],[[7962,7962],"mapped",[7954]],[[7963,7963],"mapped",[7955]],[[7964,7964],"mapped",[7956]],[[7965,7965],"mapped",[7957]],[[7966,7967],"disallowed"],[[7968,7975],"valid"],[[7976,7976],"mapped",[7968]],[[7977,7977],"mapped",[7969]],[[7978,7978],"mapped",[7970]],[[7979,7979],"mapped",[7971]],[[7980,7980],"mapped",[7972]],[[7981,7981],"mapped",[7973]],[[7982,7982],"mapped",[7974]],[[7983,7983],"mapped",[7975]],[[7984,7991],"valid"],[[7992,7992],"mapped",[7984]],[[7993,7993],"mapped",[7985]],[[7994,7994],"mapped",[7986]],[[7995,7995],"mapped",[7987]],[[7996,7996],"mapped",[7988]],[[7997,7997],"mapped",[7989]],[[7998,7998],"mapped",[7990]],[[7999,7999],"mapped",[7991]],[[8000,8005],"valid"],[[8006,8007],"disallowed"],[[8008,8008],"mapped",[8000]],[[8009,8009],"mapped",[8001]],[[8010,8010],"mapped",[8002]],[[8011,8011],"mapped",[8003]],[[8012,8012],"mapped",[8004]],[[8013,8013],"mapped",[8005]],[[8014,8015],"disallowed"],[[8016,8023],"valid"],[[8024,8024],"disallowed"],[[8025,8025],"mapped",[8017]],[[8026,8026],"disallowed"],[[8027,8027],"mapped",[8019]],[[8028,8028],"disallowed"],[[8029,8029],"mapped",[8021]],[[8030,8030],"disallowed"],[[8031,8031],"mapped",[8023]],[[8032,8039],"valid"],[[8040,8040],"mapped",[8032]],[[8041,8041],"mapped",[8033]],[[8042,8042],"mapped",[8034]],[[8043,8043],"mapped",[8035]],[[8044,8044],"mapped",[8036]],[[8045,8045],"mapped",[8037]],[[8046,8046],"mapped",[8038]],[[8047,8047],"mapped",[8039]],[[8048,8048],"valid"],[[8049,8049],"mapped",[940]],[[8050,8050],"valid"],[[8051,8051],"mapped",[941]],[[8052,8052],"valid"],[[8053,8053],"mapped",[942]],[[8054,8054],"valid"],[[8055,8055],"mapped",[943]],[[8056,8056],"valid"],[[8057,8057],"mapped",[972]],[[8058,8058],"valid"],[[8059,8059],"mapped",[973]],[[8060,8060],"valid"],[[8061,8061],"mapped",[974]],[[8062,8063],"disallowed"],[[8064,8064],"mapped",[7936,953]],[[8065,8065],"mapped",[7937,953]],[[8066,8066],"mapped",[7938,953]],[[8067,8067],"mapped",[7939,953]],[[8068,8068],"mapped",[7940,953]],[[8069,8069],"mapped",[7941,953]],[[8070,8070],"mapped",[7942,953]],[[8071,8071],"mapped",[7943,953]],[[8072,8072],"mapped",[7936,953]],[[8073,8073],"mapped",[7937,953]],[[8074,8074],"mapped",[7938,953]],[[8075,8075],"mapped",[7939,953]],[[8076,8076],"mapped",[7940,953]],[[8077,8077],"mapped",[7941,953]],[[8078,8078],"mapped",[7942,953]],[[8079,8079],"mapped",[7943,953]],[[8080,8080],"mapped",[7968,953]],[[8081,8081],"mapped",[7969,953]],[[8082,8082],"mapped",[7970,953]],[[8083,8083],"mapped",[7971,953]],[[8084,8084],"mapped",[7972,953]],[[8085,8085],"mapped",[7973,953]],[[8086,8086],"mapped",[7974,953]],[[8087,8087],"mapped",[7975,953]],[[8088,8088],"mapped",[7968,953]],[[8089,8089],"mapped",[7969,953]],[[8090,8090],"mapped",[7970,953]],[[8091,8091],"mapped",[7971,953]],[[8092,8092],"mapped",[7972,953]],[[8093,8093],"mapped",[7973,953]],[[8094,8094],"mapped",[7974,953]],[[8095,8095],"mapped",[7975,953]],[[8096,8096],"mapped",[8032,953]],[[8097,8097],"mapped",[8033,953]],[[8098,8098],"mapped",[8034,953]],[[8099,8099],"mapped",[8035,953]],[[8100,8100],"mapped",[8036,953]],[[8101,8101],"mapped",[8037,953]],[[8102,8102],"mapped",[8038,953]],[[8103,8103],"mapped",[8039,953]],[[8104,8104],"mapped",[8032,953]],[[8105,8105],"mapped",[8033,953]],[[8106,8106],"mapped",[8034,953]],[[8107,8107],"mapped",[8035,953]],[[8108,8108],"mapped",[8036,953]],[[8109,8109],"mapped",[8037,953]],[[8110,8110],"mapped",[8038,953]],[[8111,8111],"mapped",[8039,953]],[[8112,8113],"valid"],[[8114,8114],"mapped",[8048,953]],[[8115,8115],"mapped",[945,953]],[[8116,8116],"mapped",[940,953]],[[8117,8117],"disallowed"],[[8118,8118],"valid"],[[8119,8119],"mapped",[8118,953]],[[8120,8120],"mapped",[8112]],[[8121,8121],"mapped",[8113]],[[8122,8122],"mapped",[8048]],[[8123,8123],"mapped",[940]],[[8124,8124],"mapped",[945,953]],[[8125,8125],"disallowed_STD3_mapped",[32,787]],[[8126,8126],"mapped",[953]],[[8127,8127],"disallowed_STD3_mapped",[32,787]],[[8128,8128],"disallowed_STD3_mapped",[32,834]],[[8129,8129],"disallowed_STD3_mapped",[32,776,834]],[[8130,8130],"mapped",[8052,953]],[[8131,8131],"mapped",[951,953]],[[8132,8132],"mapped",[942,953]],[[8133,8133],"disallowed"],[[8134,8134],"valid"],[[8135,8135],"mapped",[8134,953]],[[8136,8136],"mapped",[8050]],[[8137,8137],"mapped",[941]],[[8138,8138],"mapped",[8052]],[[8139,8139],"mapped",[942]],[[8140,8140],"mapped",[951,953]],[[8141,8141],"disallowed_STD3_mapped",[32,787,768]],[[8142,8142],"disallowed_STD3_mapped",[32,787,769]],[[8143,8143],"disallowed_STD3_mapped",[32,787,834]],[[8144,8146],"valid"],[[8147,8147],"mapped",[912]],[[8148,8149],"disallowed"],[[8150,8151],"valid"],[[8152,8152],"mapped",[8144]],[[8153,8153],"mapped",[8145]],[[8154,8154],"mapped",[8054]],[[8155,8155],"mapped",[943]],[[8156,8156],"disallowed"],[[8157,8157],"disallowed_STD3_mapped",[32,788,768]],[[8158,8158],"disallowed_STD3_mapped",[32,788,769]],[[8159,8159],"disallowed_STD3_mapped",[32,788,834]],[[8160,8162],"valid"],[[8163,8163],"mapped",[944]],[[8164,8167],"valid"],[[8168,8168],"mapped",[8160]],[[8169,8169],"mapped",[8161]],[[8170,8170],"mapped",[8058]],[[8171,8171],"mapped",[973]],[[8172,8172],"mapped",[8165]],[[8173,8173],"disallowed_STD3_mapped",[32,776,768]],[[8174,8174],"disallowed_STD3_mapped",[32,776,769]],[[8175,8175],"disallowed_STD3_mapped",[96]],[[8176,8177],"disallowed"],[[8178,8178],"mapped",[8060,953]],[[8179,8179],"mapped",[969,953]],[[8180,8180],"mapped",[974,953]],[[8181,8181],"disallowed"],[[8182,8182],"valid"],[[8183,8183],"mapped",[8182,953]],[[8184,8184],"mapped",[8056]],[[8185,8185],"mapped",[972]],[[8186,8186],"mapped",[8060]],[[8187,8187],"mapped",[974]],[[8188,8188],"mapped",[969,953]],[[8189,8189],"disallowed_STD3_mapped",[32,769]],[[8190,8190],"disallowed_STD3_mapped",[32,788]],[[8191,8191],"disallowed"],[[8192,8202],"disallowed_STD3_mapped",[32]],[[8203,8203],"ignored"],[[8204,8205],"deviation",[]],[[8206,8207],"disallowed"],[[8208,8208],"valid",[],"NV8"],[[8209,8209],"mapped",[8208]],[[8210,8214],"valid",[],"NV8"],[[8215,8215],"disallowed_STD3_mapped",[32,819]],[[8216,8227],"valid",[],"NV8"],[[8228,8230],"disallowed"],[[8231,8231],"valid",[],"NV8"],[[8232,8238],"disallowed"],[[8239,8239],"disallowed_STD3_mapped",[32]],[[8240,8242],"valid",[],"NV8"],[[8243,8243],"mapped",[8242,8242]],[[8244,8244],"mapped",[8242,8242,8242]],[[8245,8245],"valid",[],"NV8"],[[8246,8246],"mapped",[8245,8245]],[[8247,8247],"mapped",[8245,8245,8245]],[[8248,8251],"valid",[],"NV8"],[[8252,8252],"disallowed_STD3_mapped",[33,33]],[[8253,8253],"valid",[],"NV8"],[[8254,8254],"disallowed_STD3_mapped",[32,773]],[[8255,8262],"valid",[],"NV8"],[[8263,8263],"disallowed_STD3_mapped",[63,63]],[[8264,8264],"disallowed_STD3_mapped",[63,33]],[[8265,8265],"disallowed_STD3_mapped",[33,63]],[[8266,8269],"valid",[],"NV8"],[[8270,8274],"valid",[],"NV8"],[[8275,8276],"valid",[],"NV8"],[[8277,8278],"valid",[],"NV8"],[[8279,8279],"mapped",[8242,8242,8242,8242]],[[8280,8286],"valid",[],"NV8"],[[8287,8287],"disallowed_STD3_mapped",[32]],[[8288,8288],"ignored"],[[8289,8291],"disallowed"],[[8292,8292],"ignored"],[[8293,8293],"disallowed"],[[8294,8297],"disallowed"],[[8298,8303],"disallowed"],[[8304,8304],"mapped",[48]],[[8305,8305],"mapped",[105]],[[8306,8307],"disallowed"],[[8308,8308],"mapped",[52]],[[8309,8309],"mapped",[53]],[[8310,8310],"mapped",[54]],[[8311,8311],"mapped",[55]],[[8312,8312],"mapped",[56]],[[8313,8313],"mapped",[57]],[[8314,8314],"disallowed_STD3_mapped",[43]],[[8315,8315],"mapped",[8722]],[[8316,8316],"disallowed_STD3_mapped",[61]],[[8317,8317],"disallowed_STD3_mapped",[40]],[[8318,8318],"disallowed_STD3_mapped",[41]],[[8319,8319],"mapped",[110]],[[8320,8320],"mapped",[48]],[[8321,8321],"mapped",[49]],[[8322,8322],"mapped",[50]],[[8323,8323],"mapped",[51]],[[8324,8324],"mapped",[52]],[[8325,8325],"mapped",[53]],[[8326,8326],"mapped",[54]],[[8327,8327],"mapped",[55]],[[8328,8328],"mapped",[56]],[[8329,8329],"mapped",[57]],[[8330,8330],"disallowed_STD3_mapped",[43]],[[8331,8331],"mapped",[8722]],[[8332,8332],"disallowed_STD3_mapped",[61]],[[8333,8333],"disallowed_STD3_mapped",[40]],[[8334,8334],"disallowed_STD3_mapped",[41]],[[8335,8335],"disallowed"],[[8336,8336],"mapped",[97]],[[8337,8337],"mapped",[101]],[[8338,8338],"mapped",[111]],[[8339,8339],"mapped",[120]],[[8340,8340],"mapped",[601]],[[8341,8341],"mapped",[104]],[[8342,8342],"mapped",[107]],[[8343,8343],"mapped",[108]],[[8344,8344],"mapped",[109]],[[8345,8345],"mapped",[110]],[[8346,8346],"mapped",[112]],[[8347,8347],"mapped",[115]],[[8348,8348],"mapped",[116]],[[8349,8351],"disallowed"],[[8352,8359],"valid",[],"NV8"],[[8360,8360],"mapped",[114,115]],[[8361,8362],"valid",[],"NV8"],[[8363,8363],"valid",[],"NV8"],[[8364,8364],"valid",[],"NV8"],[[8365,8367],"valid",[],"NV8"],[[8368,8369],"valid",[],"NV8"],[[8370,8373],"valid",[],"NV8"],[[8374,8376],"valid",[],"NV8"],[[8377,8377],"valid",[],"NV8"],[[8378,8378],"valid",[],"NV8"],[[8379,8381],"valid",[],"NV8"],[[8382,8382],"valid",[],"NV8"],[[8383,8399],"disallowed"],[[8400,8417],"valid",[],"NV8"],[[8418,8419],"valid",[],"NV8"],[[8420,8426],"valid",[],"NV8"],[[8427,8427],"valid",[],"NV8"],[[8428,8431],"valid",[],"NV8"],[[8432,8432],"valid",[],"NV8"],[[8433,8447],"disallowed"],[[8448,8448],"disallowed_STD3_mapped",[97,47,99]],[[8449,8449],"disallowed_STD3_mapped",[97,47,115]],[[8450,8450],"mapped",[99]],[[8451,8451],"mapped",[176,99]],[[8452,8452],"valid",[],"NV8"],[[8453,8453],"disallowed_STD3_mapped",[99,47,111]],[[8454,8454],"disallowed_STD3_mapped",[99,47,117]],[[8455,8455],"mapped",[603]],[[8456,8456],"valid",[],"NV8"],[[8457,8457],"mapped",[176,102]],[[8458,8458],"mapped",[103]],[[8459,8462],"mapped",[104]],[[8463,8463],"mapped",[295]],[[8464,8465],"mapped",[105]],[[8466,8467],"mapped",[108]],[[8468,8468],"valid",[],"NV8"],[[8469,8469],"mapped",[110]],[[8470,8470],"mapped",[110,111]],[[8471,8472],"valid",[],"NV8"],[[8473,8473],"mapped",[112]],[[8474,8474],"mapped",[113]],[[8475,8477],"mapped",[114]],[[8478,8479],"valid",[],"NV8"],[[8480,8480],"mapped",[115,109]],[[8481,8481],"mapped",[116,101,108]],[[8482,8482],"mapped",[116,109]],[[8483,8483],"valid",[],"NV8"],[[8484,8484],"mapped",[122]],[[8485,8485],"valid",[],"NV8"],[[8486,8486],"mapped",[969]],[[8487,8487],"valid",[],"NV8"],[[8488,8488],"mapped",[122]],[[8489,8489],"valid",[],"NV8"],[[8490,8490],"mapped",[107]],[[8491,8491],"mapped",[229]],[[8492,8492],"mapped",[98]],[[8493,8493],"mapped",[99]],[[8494,8494],"valid",[],"NV8"],[[8495,8496],"mapped",[101]],[[8497,8497],"mapped",[102]],[[8498,8498],"disallowed"],[[8499,8499],"mapped",[109]],[[8500,8500],"mapped",[111]],[[8501,8501],"mapped",[1488]],[[8502,8502],"mapped",[1489]],[[8503,8503],"mapped",[1490]],[[8504,8504],"mapped",[1491]],[[8505,8505],"mapped",[105]],[[8506,8506],"valid",[],"NV8"],[[8507,8507],"mapped",[102,97,120]],[[8508,8508],"mapped",[960]],[[8509,8510],"mapped",[947]],[[8511,8511],"mapped",[960]],[[8512,8512],"mapped",[8721]],[[8513,8516],"valid",[],"NV8"],[[8517,8518],"mapped",[100]],[[8519,8519],"mapped",[101]],[[8520,8520],"mapped",[105]],[[8521,8521],"mapped",[106]],[[8522,8523],"valid",[],"NV8"],[[8524,8524],"valid",[],"NV8"],[[8525,8525],"valid",[],"NV8"],[[8526,8526],"valid"],[[8527,8527],"valid",[],"NV8"],[[8528,8528],"mapped",[49,8260,55]],[[8529,8529],"mapped",[49,8260,57]],[[8530,8530],"mapped",[49,8260,49,48]],[[8531,8531],"mapped",[49,8260,51]],[[8532,8532],"mapped",[50,8260,51]],[[8533,8533],"mapped",[49,8260,53]],[[8534,8534],"mapped",[50,8260,53]],[[8535,8535],"mapped",[51,8260,53]],[[8536,8536],"mapped",[52,8260,53]],[[8537,8537],"mapped",[49,8260,54]],[[8538,8538],"mapped",[53,8260,54]],[[8539,8539],"mapped",[49,8260,56]],[[8540,8540],"mapped",[51,8260,56]],[[8541,8541],"mapped",[53,8260,56]],[[8542,8542],"mapped",[55,8260,56]],[[8543,8543],"mapped",[49,8260]],[[8544,8544],"mapped",[105]],[[8545,8545],"mapped",[105,105]],[[8546,8546],"mapped",[105,105,105]],[[8547,8547],"mapped",[105,118]],[[8548,8548],"mapped",[118]],[[8549,8549],"mapped",[118,105]],[[8550,8550],"mapped",[118,105,105]],[[8551,8551],"mapped",[118,105,105,105]],[[8552,8552],"mapped",[105,120]],[[8553,8553],"mapped",[120]],[[8554,8554],"mapped",[120,105]],[[8555,8555],"mapped",[120,105,105]],[[8556,8556],"mapped",[108]],[[8557,8557],"mapped",[99]],[[8558,8558],"mapped",[100]],[[8559,8559],"mapped",[109]],[[8560,8560],"mapped",[105]],[[8561,8561],"mapped",[105,105]],[[8562,8562],"mapped",[105,105,105]],[[8563,8563],"mapped",[105,118]],[[8564,8564],"mapped",[118]],[[8565,8565],"mapped",[118,105]],[[8566,8566],"mapped",[118,105,105]],[[8567,8567],"mapped",[118,105,105,105]],[[8568,8568],"mapped",[105,120]],[[8569,8569],"mapped",[120]],[[8570,8570],"mapped",[120,105]],[[8571,8571],"mapped",[120,105,105]],[[8572,8572],"mapped",[108]],[[8573,8573],"mapped",[99]],[[8574,8574],"mapped",[100]],[[8575,8575],"mapped",[109]],[[8576,8578],"valid",[],"NV8"],[[8579,8579],"disallowed"],[[8580,8580],"valid"],[[8581,8584],"valid",[],"NV8"],[[8585,8585],"mapped",[48,8260,51]],[[8586,8587],"valid",[],"NV8"],[[8588,8591],"disallowed"],[[8592,8682],"valid",[],"NV8"],[[8683,8691],"valid",[],"NV8"],[[8692,8703],"valid",[],"NV8"],[[8704,8747],"valid",[],"NV8"],[[8748,8748],"mapped",[8747,8747]],[[8749,8749],"mapped",[8747,8747,8747]],[[8750,8750],"valid",[],"NV8"],[[8751,8751],"mapped",[8750,8750]],[[8752,8752],"mapped",[8750,8750,8750]],[[8753,8799],"valid",[],"NV8"],[[8800,8800],"disallowed_STD3_valid"],[[8801,8813],"valid",[],"NV8"],[[8814,8815],"disallowed_STD3_valid"],[[8816,8945],"valid",[],"NV8"],[[8946,8959],"valid",[],"NV8"],[[8960,8960],"valid",[],"NV8"],[[8961,8961],"valid",[],"NV8"],[[8962,9000],"valid",[],"NV8"],[[9001,9001],"mapped",[12296]],[[9002,9002],"mapped",[12297]],[[9003,9082],"valid",[],"NV8"],[[9083,9083],"valid",[],"NV8"],[[9084,9084],"valid",[],"NV8"],[[9085,9114],"valid",[],"NV8"],[[9115,9166],"valid",[],"NV8"],[[9167,9168],"valid",[],"NV8"],[[9169,9179],"valid",[],"NV8"],[[9180,9191],"valid",[],"NV8"],[[9192,9192],"valid",[],"NV8"],[[9193,9203],"valid",[],"NV8"],[[9204,9210],"valid",[],"NV8"],[[9211,9215],"disallowed"],[[9216,9252],"valid",[],"NV8"],[[9253,9254],"valid",[],"NV8"],[[9255,9279],"disallowed"],[[9280,9290],"valid",[],"NV8"],[[9291,9311],"disallowed"],[[9312,9312],"mapped",[49]],[[9313,9313],"mapped",[50]],[[9314,9314],"mapped",[51]],[[9315,9315],"mapped",[52]],[[9316,9316],"mapped",[53]],[[9317,9317],"mapped",[54]],[[9318,9318],"mapped",[55]],[[9319,9319],"mapped",[56]],[[9320,9320],"mapped",[57]],[[9321,9321],"mapped",[49,48]],[[9322,9322],"mapped",[49,49]],[[9323,9323],"mapped",[49,50]],[[9324,9324],"mapped",[49,51]],[[9325,9325],"mapped",[49,52]],[[9326,9326],"mapped",[49,53]],[[9327,9327],"mapped",[49,54]],[[9328,9328],"mapped",[49,55]],[[9329,9329],"mapped",[49,56]],[[9330,9330],"mapped",[49,57]],[[9331,9331],"mapped",[50,48]],[[9332,9332],"disallowed_STD3_mapped",[40,49,41]],[[9333,9333],"disallowed_STD3_mapped",[40,50,41]],[[9334,9334],"disallowed_STD3_mapped",[40,51,41]],[[9335,9335],"disallowed_STD3_mapped",[40,52,41]],[[9336,9336],"disallowed_STD3_mapped",[40,53,41]],[[9337,9337],"disallowed_STD3_mapped",[40,54,41]],[[9338,9338],"disallowed_STD3_mapped",[40,55,41]],[[9339,9339],"disallowed_STD3_mapped",[40,56,41]],[[9340,9340],"disallowed_STD3_mapped",[40,57,41]],[[9341,9341],"disallowed_STD3_mapped",[40,49,48,41]],[[9342,9342],"disallowed_STD3_mapped",[40,49,49,41]],[[9343,9343],"disallowed_STD3_mapped",[40,49,50,41]],[[9344,9344],"disallowed_STD3_mapped",[40,49,51,41]],[[9345,9345],"disallowed_STD3_mapped",[40,49,52,41]],[[9346,9346],"disallowed_STD3_mapped",[40,49,53,41]],[[9347,9347],"disallowed_STD3_mapped",[40,49,54,41]],[[9348,9348],"disallowed_STD3_mapped",[40,49,55,41]],[[9349,9349],"disallowed_STD3_mapped",[40,49,56,41]],[[9350,9350],"disallowed_STD3_mapped",[40,49,57,41]],[[9351,9351],"disallowed_STD3_mapped",[40,50,48,41]],[[9352,9371],"disallowed"],[[9372,9372],"disallowed_STD3_mapped",[40,97,41]],[[9373,9373],"disallowed_STD3_mapped",[40,98,41]],[[9374,9374],"disallowed_STD3_mapped",[40,99,41]],[[9375,9375],"disallowed_STD3_mapped",[40,100,41]],[[9376,9376],"disallowed_STD3_mapped",[40,101,41]],[[9377,9377],"disallowed_STD3_mapped",[40,102,41]],[[9378,9378],"disallowed_STD3_mapped",[40,103,41]],[[9379,9379],"disallowed_STD3_mapped",[40,104,41]],[[9380,9380],"disallowed_STD3_mapped",[40,105,41]],[[9381,9381],"disallowed_STD3_mapped",[40,106,41]],[[9382,9382],"disallowed_STD3_mapped",[40,107,41]],[[9383,9383],"disallowed_STD3_mapped",[40,108,41]],[[9384,9384],"disallowed_STD3_mapped",[40,109,41]],[[9385,9385],"disallowed_STD3_mapped",[40,110,41]],[[9386,9386],"disallowed_STD3_mapped",[40,111,41]],[[9387,9387],"disallowed_STD3_mapped",[40,112,41]],[[9388,9388],"disallowed_STD3_mapped",[40,113,41]],[[9389,9389],"disallowed_STD3_mapped",[40,114,41]],[[9390,9390],"disallowed_STD3_mapped",[40,115,41]],[[9391,9391],"disallowed_STD3_mapped",[40,116,41]],[[9392,9392],"disallowed_STD3_mapped",[40,117,41]],[[9393,9393],"disallowed_STD3_mapped",[40,118,41]],[[9394,9394],"disallowed_STD3_mapped",[40,119,41]],[[9395,9395],"disallowed_STD3_mapped",[40,120,41]],[[9396,9396],"disallowed_STD3_mapped",[40,121,41]],[[9397,9397],"disallowed_STD3_mapped",[40,122,41]],[[9398,9398],"mapped",[97]],[[9399,9399],"mapped",[98]],[[9400,9400],"mapped",[99]],[[9401,9401],"mapped",[100]],[[9402,9402],"mapped",[101]],[[9403,9403],"mapped",[102]],[[9404,9404],"mapped",[103]],[[9405,9405],"mapped",[104]],[[9406,9406],"mapped",[105]],[[9407,9407],"mapped",[106]],[[9408,9408],"mapped",[107]],[[9409,9409],"mapped",[108]],[[9410,9410],"mapped",[109]],[[9411,9411],"mapped",[110]],[[9412,9412],"mapped",[111]],[[9413,9413],"mapped",[112]],[[9414,9414],"mapped",[113]],[[9415,9415],"mapped",[114]],[[9416,9416],"mapped",[115]],[[9417,9417],"mapped",[116]],[[9418,9418],"mapped",[117]],[[9419,9419],"mapped",[118]],[[9420,9420],"mapped",[119]],[[9421,9421],"mapped",[120]],[[9422,9422],"mapped",[121]],[[9423,9423],"mapped",[122]],[[9424,9424],"mapped",[97]],[[9425,9425],"mapped",[98]],[[9426,9426],"mapped",[99]],[[9427,9427],"mapped",[100]],[[9428,9428],"mapped",[101]],[[9429,9429],"mapped",[102]],[[9430,9430],"mapped",[103]],[[9431,9431],"mapped",[104]],[[9432,9432],"mapped",[105]],[[9433,9433],"mapped",[106]],[[9434,9434],"mapped",[107]],[[9435,9435],"mapped",[108]],[[9436,9436],"mapped",[109]],[[9437,9437],"mapped",[110]],[[9438,9438],"mapped",[111]],[[9439,9439],"mapped",[112]],[[9440,9440],"mapped",[113]],[[9441,9441],"mapped",[114]],[[9442,9442],"mapped",[115]],[[9443,9443],"mapped",[116]],[[9444,9444],"mapped",[117]],[[9445,9445],"mapped",[118]],[[9446,9446],"mapped",[119]],[[9447,9447],"mapped",[120]],[[9448,9448],"mapped",[121]],[[9449,9449],"mapped",[122]],[[9450,9450],"mapped",[48]],[[9451,9470],"valid",[],"NV8"],[[9471,9471],"valid",[],"NV8"],[[9472,9621],"valid",[],"NV8"],[[9622,9631],"valid",[],"NV8"],[[9632,9711],"valid",[],"NV8"],[[9712,9719],"valid",[],"NV8"],[[9720,9727],"valid",[],"NV8"],[[9728,9747],"valid",[],"NV8"],[[9748,9749],"valid",[],"NV8"],[[9750,9751],"valid",[],"NV8"],[[9752,9752],"valid",[],"NV8"],[[9753,9753],"valid",[],"NV8"],[[9754,9839],"valid",[],"NV8"],[[9840,9841],"valid",[],"NV8"],[[9842,9853],"valid",[],"NV8"],[[9854,9855],"valid",[],"NV8"],[[9856,9865],"valid",[],"NV8"],[[9866,9873],"valid",[],"NV8"],[[9874,9884],"valid",[],"NV8"],[[9885,9885],"valid",[],"NV8"],[[9886,9887],"valid",[],"NV8"],[[9888,9889],"valid",[],"NV8"],[[9890,9905],"valid",[],"NV8"],[[9906,9906],"valid",[],"NV8"],[[9907,9916],"valid",[],"NV8"],[[9917,9919],"valid",[],"NV8"],[[9920,9923],"valid",[],"NV8"],[[9924,9933],"valid",[],"NV8"],[[9934,9934],"valid",[],"NV8"],[[9935,9953],"valid",[],"NV8"],[[9954,9954],"valid",[],"NV8"],[[9955,9955],"valid",[],"NV8"],[[9956,9959],"valid",[],"NV8"],[[9960,9983],"valid",[],"NV8"],[[9984,9984],"valid",[],"NV8"],[[9985,9988],"valid",[],"NV8"],[[9989,9989],"valid",[],"NV8"],[[9990,9993],"valid",[],"NV8"],[[9994,9995],"valid",[],"NV8"],[[9996,10023],"valid",[],"NV8"],[[10024,10024],"valid",[],"NV8"],[[10025,10059],"valid",[],"NV8"],[[10060,10060],"valid",[],"NV8"],[[10061,10061],"valid",[],"NV8"],[[10062,10062],"valid",[],"NV8"],[[10063,10066],"valid",[],"NV8"],[[10067,10069],"valid",[],"NV8"],[[10070,10070],"valid",[],"NV8"],[[10071,10071],"valid",[],"NV8"],[[10072,10078],"valid",[],"NV8"],[[10079,10080],"valid",[],"NV8"],[[10081,10087],"valid",[],"NV8"],[[10088,10101],"valid",[],"NV8"],[[10102,10132],"valid",[],"NV8"],[[10133,10135],"valid",[],"NV8"],[[10136,10159],"valid",[],"NV8"],[[10160,10160],"valid",[],"NV8"],[[10161,10174],"valid",[],"NV8"],[[10175,10175],"valid",[],"NV8"],[[10176,10182],"valid",[],"NV8"],[[10183,10186],"valid",[],"NV8"],[[10187,10187],"valid",[],"NV8"],[[10188,10188],"valid",[],"NV8"],[[10189,10189],"valid",[],"NV8"],[[10190,10191],"valid",[],"NV8"],[[10192,10219],"valid",[],"NV8"],[[10220,10223],"valid",[],"NV8"],[[10224,10239],"valid",[],"NV8"],[[10240,10495],"valid",[],"NV8"],[[10496,10763],"valid",[],"NV8"],[[10764,10764],"mapped",[8747,8747,8747,8747]],[[10765,10867],"valid",[],"NV8"],[[10868,10868],"disallowed_STD3_mapped",[58,58,61]],[[10869,10869],"disallowed_STD3_mapped",[61,61]],[[10870,10870],"disallowed_STD3_mapped",[61,61,61]],[[10871,10971],"valid",[],"NV8"],[[10972,10972],"mapped",[10973,824]],[[10973,11007],"valid",[],"NV8"],[[11008,11021],"valid",[],"NV8"],[[11022,11027],"valid",[],"NV8"],[[11028,11034],"valid",[],"NV8"],[[11035,11039],"valid",[],"NV8"],[[11040,11043],"valid",[],"NV8"],[[11044,11084],"valid",[],"NV8"],[[11085,11087],"valid",[],"NV8"],[[11088,11092],"valid",[],"NV8"],[[11093,11097],"valid",[],"NV8"],[[11098,11123],"valid",[],"NV8"],[[11124,11125],"disallowed"],[[11126,11157],"valid",[],"NV8"],[[11158,11159],"disallowed"],[[11160,11193],"valid",[],"NV8"],[[11194,11196],"disallowed"],[[11197,11208],"valid",[],"NV8"],[[11209,11209],"disallowed"],[[11210,11217],"valid",[],"NV8"],[[11218,11243],"disallowed"],[[11244,11247],"valid",[],"NV8"],[[11248,11263],"disallowed"],[[11264,11264],"mapped",[11312]],[[11265,11265],"mapped",[11313]],[[11266,11266],"mapped",[11314]],[[11267,11267],"mapped",[11315]],[[11268,11268],"mapped",[11316]],[[11269,11269],"mapped",[11317]],[[11270,11270],"mapped",[11318]],[[11271,11271],"mapped",[11319]],[[11272,11272],"mapped",[11320]],[[11273,11273],"mapped",[11321]],[[11274,11274],"mapped",[11322]],[[11275,11275],"mapped",[11323]],[[11276,11276],"mapped",[11324]],[[11277,11277],"mapped",[11325]],[[11278,11278],"mapped",[11326]],[[11279,11279],"mapped",[11327]],[[11280,11280],"mapped",[11328]],[[11281,11281],"mapped",[11329]],[[11282,11282],"mapped",[11330]],[[11283,11283],"mapped",[11331]],[[11284,11284],"mapped",[11332]],[[11285,11285],"mapped",[11333]],[[11286,11286],"mapped",[11334]],[[11287,11287],"mapped",[11335]],[[11288,11288],"mapped",[11336]],[[11289,11289],"mapped",[11337]],[[11290,11290],"mapped",[11338]],[[11291,11291],"mapped",[11339]],[[11292,11292],"mapped",[11340]],[[11293,11293],"mapped",[11341]],[[11294,11294],"mapped",[11342]],[[11295,11295],"mapped",[11343]],[[11296,11296],"mapped",[11344]],[[11297,11297],"mapped",[11345]],[[11298,11298],"mapped",[11346]],[[11299,11299],"mapped",[11347]],[[11300,11300],"mapped",[11348]],[[11301,11301],"mapped",[11349]],[[11302,11302],"mapped",[11350]],[[11303,11303],"mapped",[11351]],[[11304,11304],"mapped",[11352]],[[11305,11305],"mapped",[11353]],[[11306,11306],"mapped",[11354]],[[11307,11307],"mapped",[11355]],[[11308,11308],"mapped",[11356]],[[11309,11309],"mapped",[11357]],[[11310,11310],"mapped",[11358]],[[11311,11311],"disallowed"],[[11312,11358],"valid"],[[11359,11359],"disallowed"],[[11360,11360],"mapped",[11361]],[[11361,11361],"valid"],[[11362,11362],"mapped",[619]],[[11363,11363],"mapped",[7549]],[[11364,11364],"mapped",[637]],[[11365,11366],"valid"],[[11367,11367],"mapped",[11368]],[[11368,11368],"valid"],[[11369,11369],"mapped",[11370]],[[11370,11370],"valid"],[[11371,11371],"mapped",[11372]],[[11372,11372],"valid"],[[11373,11373],"mapped",[593]],[[11374,11374],"mapped",[625]],[[11375,11375],"mapped",[592]],[[11376,11376],"mapped",[594]],[[11377,11377],"valid"],[[11378,11378],"mapped",[11379]],[[11379,11379],"valid"],[[11380,11380],"valid"],[[11381,11381],"mapped",[11382]],[[11382,11383],"valid"],[[11384,11387],"valid"],[[11388,11388],"mapped",[106]],[[11389,11389],"mapped",[118]],[[11390,11390],"mapped",[575]],[[11391,11391],"mapped",[576]],[[11392,11392],"mapped",[11393]],[[11393,11393],"valid"],[[11394,11394],"mapped",[11395]],[[11395,11395],"valid"],[[11396,11396],"mapped",[11397]],[[11397,11397],"valid"],[[11398,11398],"mapped",[11399]],[[11399,11399],"valid"],[[11400,11400],"mapped",[11401]],[[11401,11401],"valid"],[[11402,11402],"mapped",[11403]],[[11403,11403],"valid"],[[11404,11404],"mapped",[11405]],[[11405,11405],"valid"],[[11406,11406],"mapped",[11407]],[[11407,11407],"valid"],[[11408,11408],"mapped",[11409]],[[11409,11409],"valid"],[[11410,11410],"mapped",[11411]],[[11411,11411],"valid"],[[11412,11412],"mapped",[11413]],[[11413,11413],"valid"],[[11414,11414],"mapped",[11415]],[[11415,11415],"valid"],[[11416,11416],"mapped",[11417]],[[11417,11417],"valid"],[[11418,11418],"mapped",[11419]],[[11419,11419],"valid"],[[11420,11420],"mapped",[11421]],[[11421,11421],"valid"],[[11422,11422],"mapped",[11423]],[[11423,11423],"valid"],[[11424,11424],"mapped",[11425]],[[11425,11425],"valid"],[[11426,11426],"mapped",[11427]],[[11427,11427],"valid"],[[11428,11428],"mapped",[11429]],[[11429,11429],"valid"],[[11430,11430],"mapped",[11431]],[[11431,11431],"valid"],[[11432,11432],"mapped",[11433]],[[11433,11433],"valid"],[[11434,11434],"mapped",[11435]],[[11435,11435],"valid"],[[11436,11436],"mapped",[11437]],[[11437,11437],"valid"],[[11438,11438],"mapped",[11439]],[[11439,11439],"valid"],[[11440,11440],"mapped",[11441]],[[11441,11441],"valid"],[[11442,11442],"mapped",[11443]],[[11443,11443],"valid"],[[11444,11444],"mapped",[11445]],[[11445,11445],"valid"],[[11446,11446],"mapped",[11447]],[[11447,11447],"valid"],[[11448,11448],"mapped",[11449]],[[11449,11449],"valid"],[[11450,11450],"mapped",[11451]],[[11451,11451],"valid"],[[11452,11452],"mapped",[11453]],[[11453,11453],"valid"],[[11454,11454],"mapped",[11455]],[[11455,11455],"valid"],[[11456,11456],"mapped",[11457]],[[11457,11457],"valid"],[[11458,11458],"mapped",[11459]],[[11459,11459],"valid"],[[11460,11460],"mapped",[11461]],[[11461,11461],"valid"],[[11462,11462],"mapped",[11463]],[[11463,11463],"valid"],[[11464,11464],"mapped",[11465]],[[11465,11465],"valid"],[[11466,11466],"mapped",[11467]],[[11467,11467],"valid"],[[11468,11468],"mapped",[11469]],[[11469,11469],"valid"],[[11470,11470],"mapped",[11471]],[[11471,11471],"valid"],[[11472,11472],"mapped",[11473]],[[11473,11473],"valid"],[[11474,11474],"mapped",[11475]],[[11475,11475],"valid"],[[11476,11476],"mapped",[11477]],[[11477,11477],"valid"],[[11478,11478],"mapped",[11479]],[[11479,11479],"valid"],[[11480,11480],"mapped",[11481]],[[11481,11481],"valid"],[[11482,11482],"mapped",[11483]],[[11483,11483],"valid"],[[11484,11484],"mapped",[11485]],[[11485,11485],"valid"],[[11486,11486],"mapped",[11487]],[[11487,11487],"valid"],[[11488,11488],"mapped",[11489]],[[11489,11489],"valid"],[[11490,11490],"mapped",[11491]],[[11491,11492],"valid"],[[11493,11498],"valid",[],"NV8"],[[11499,11499],"mapped",[11500]],[[11500,11500],"valid"],[[11501,11501],"mapped",[11502]],[[11502,11505],"valid"],[[11506,11506],"mapped",[11507]],[[11507,11507],"valid"],[[11508,11512],"disallowed"],[[11513,11519],"valid",[],"NV8"],[[11520,11557],"valid"],[[11558,11558],"disallowed"],[[11559,11559],"valid"],[[11560,11564],"disallowed"],[[11565,11565],"valid"],[[11566,11567],"disallowed"],[[11568,11621],"valid"],[[11622,11623],"valid"],[[11624,11630],"disallowed"],[[11631,11631],"mapped",[11617]],[[11632,11632],"valid",[],"NV8"],[[11633,11646],"disallowed"],[[11647,11647],"valid"],[[11648,11670],"valid"],[[11671,11679],"disallowed"],[[11680,11686],"valid"],[[11687,11687],"disallowed"],[[11688,11694],"valid"],[[11695,11695],"disallowed"],[[11696,11702],"valid"],[[11703,11703],"disallowed"],[[11704,11710],"valid"],[[11711,11711],"disallowed"],[[11712,11718],"valid"],[[11719,11719],"disallowed"],[[11720,11726],"valid"],[[11727,11727],"disallowed"],[[11728,11734],"valid"],[[11735,11735],"disallowed"],[[11736,11742],"valid"],[[11743,11743],"disallowed"],[[11744,11775],"valid"],[[11776,11799],"valid",[],"NV8"],[[11800,11803],"valid",[],"NV8"],[[11804,11805],"valid",[],"NV8"],[[11806,11822],"valid",[],"NV8"],[[11823,11823],"valid"],[[11824,11824],"valid",[],"NV8"],[[11825,11825],"valid",[],"NV8"],[[11826,11835],"valid",[],"NV8"],[[11836,11842],"valid",[],"NV8"],[[11843,11903],"disallowed"],[[11904,11929],"valid",[],"NV8"],[[11930,11930],"disallowed"],[[11931,11934],"valid",[],"NV8"],[[11935,11935],"mapped",[27597]],[[11936,12018],"valid",[],"NV8"],[[12019,12019],"mapped",[40863]],[[12020,12031],"disallowed"],[[12032,12032],"mapped",[19968]],[[12033,12033],"mapped",[20008]],[[12034,12034],"mapped",[20022]],[[12035,12035],"mapped",[20031]],[[12036,12036],"mapped",[20057]],[[12037,12037],"mapped",[20101]],[[12038,12038],"mapped",[20108]],[[12039,12039],"mapped",[20128]],[[12040,12040],"mapped",[20154]],[[12041,12041],"mapped",[20799]],[[12042,12042],"mapped",[20837]],[[12043,12043],"mapped",[20843]],[[12044,12044],"mapped",[20866]],[[12045,12045],"mapped",[20886]],[[12046,12046],"mapped",[20907]],[[12047,12047],"mapped",[20960]],[[12048,12048],"mapped",[20981]],[[12049,12049],"mapped",[20992]],[[12050,12050],"mapped",[21147]],[[12051,12051],"mapped",[21241]],[[12052,12052],"mapped",[21269]],[[12053,12053],"mapped",[21274]],[[12054,12054],"mapped",[21304]],[[12055,12055],"mapped",[21313]],[[12056,12056],"mapped",[21340]],[[12057,12057],"mapped",[21353]],[[12058,12058],"mapped",[21378]],[[12059,12059],"mapped",[21430]],[[12060,12060],"mapped",[21448]],[[12061,12061],"mapped",[21475]],[[12062,12062],"mapped",[22231]],[[12063,12063],"mapped",[22303]],[[12064,12064],"mapped",[22763]],[[12065,12065],"mapped",[22786]],[[12066,12066],"mapped",[22794]],[[12067,12067],"mapped",[22805]],[[12068,12068],"mapped",[22823]],[[12069,12069],"mapped",[22899]],[[12070,12070],"mapped",[23376]],[[12071,12071],"mapped",[23424]],[[12072,12072],"mapped",[23544]],[[12073,12073],"mapped",[23567]],[[12074,12074],"mapped",[23586]],[[12075,12075],"mapped",[23608]],[[12076,12076],"mapped",[23662]],[[12077,12077],"mapped",[23665]],[[12078,12078],"mapped",[24027]],[[12079,12079],"mapped",[24037]],[[12080,12080],"mapped",[24049]],[[12081,12081],"mapped",[24062]],[[12082,12082],"mapped",[24178]],[[12083,12083],"mapped",[24186]],[[12084,12084],"mapped",[24191]],[[12085,12085],"mapped",[24308]],[[12086,12086],"mapped",[24318]],[[12087,12087],"mapped",[24331]],[[12088,12088],"mapped",[24339]],[[12089,12089],"mapped",[24400]],[[12090,12090],"mapped",[24417]],[[12091,12091],"mapped",[24435]],[[12092,12092],"mapped",[24515]],[[12093,12093],"mapped",[25096]],[[12094,12094],"mapped",[25142]],[[12095,12095],"mapped",[25163]],[[12096,12096],"mapped",[25903]],[[12097,12097],"mapped",[25908]],[[12098,12098],"mapped",[25991]],[[12099,12099],"mapped",[26007]],[[12100,12100],"mapped",[26020]],[[12101,12101],"mapped",[26041]],[[12102,12102],"mapped",[26080]],[[12103,12103],"mapped",[26085]],[[12104,12104],"mapped",[26352]],[[12105,12105],"mapped",[26376]],[[12106,12106],"mapped",[26408]],[[12107,12107],"mapped",[27424]],[[12108,12108],"mapped",[27490]],[[12109,12109],"mapped",[27513]],[[12110,12110],"mapped",[27571]],[[12111,12111],"mapped",[27595]],[[12112,12112],"mapped",[27604]],[[12113,12113],"mapped",[27611]],[[12114,12114],"mapped",[27663]],[[12115,12115],"mapped",[27668]],[[12116,12116],"mapped",[27700]],[[12117,12117],"mapped",[28779]],[[12118,12118],"mapped",[29226]],[[12119,12119],"mapped",[29238]],[[12120,12120],"mapped",[29243]],[[12121,12121],"mapped",[29247]],[[12122,12122],"mapped",[29255]],[[12123,12123],"mapped",[29273]],[[12124,12124],"mapped",[29275]],[[12125,12125],"mapped",[29356]],[[12126,12126],"mapped",[29572]],[[12127,12127],"mapped",[29577]],[[12128,12128],"mapped",[29916]],[[12129,12129],"mapped",[29926]],[[12130,12130],"mapped",[29976]],[[12131,12131],"mapped",[29983]],[[12132,12132],"mapped",[29992]],[[12133,12133],"mapped",[30000]],[[12134,12134],"mapped",[30091]],[[12135,12135],"mapped",[30098]],[[12136,12136],"mapped",[30326]],[[12137,12137],"mapped",[30333]],[[12138,12138],"mapped",[30382]],[[12139,12139],"mapped",[30399]],[[12140,12140],"mapped",[30446]],[[12141,12141],"mapped",[30683]],[[12142,12142],"mapped",[30690]],[[12143,12143],"mapped",[30707]],[[12144,12144],"mapped",[31034]],[[12145,12145],"mapped",[31160]],[[12146,12146],"mapped",[31166]],[[12147,12147],"mapped",[31348]],[[12148,12148],"mapped",[31435]],[[12149,12149],"mapped",[31481]],[[12150,12150],"mapped",[31859]],[[12151,12151],"mapped",[31992]],[[12152,12152],"mapped",[32566]],[[12153,12153],"mapped",[32593]],[[12154,12154],"mapped",[32650]],[[12155,12155],"mapped",[32701]],[[12156,12156],"mapped",[32769]],[[12157,12157],"mapped",[32780]],[[12158,12158],"mapped",[32786]],[[12159,12159],"mapped",[32819]],[[12160,12160],"mapped",[32895]],[[12161,12161],"mapped",[32905]],[[12162,12162],"mapped",[33251]],[[12163,12163],"mapped",[33258]],[[12164,12164],"mapped",[33267]],[[12165,12165],"mapped",[33276]],[[12166,12166],"mapped",[33292]],[[12167,12167],"mapped",[33307]],[[12168,12168],"mapped",[33311]],[[12169,12169],"mapped",[33390]],[[12170,12170],"mapped",[33394]],[[12171,12171],"mapped",[33400]],[[12172,12172],"mapped",[34381]],[[12173,12173],"mapped",[34411]],[[12174,12174],"mapped",[34880]],[[12175,12175],"mapped",[34892]],[[12176,12176],"mapped",[34915]],[[12177,12177],"mapped",[35198]],[[12178,12178],"mapped",[35211]],[[12179,12179],"mapped",[35282]],[[12180,12180],"mapped",[35328]],[[12181,12181],"mapped",[35895]],[[12182,12182],"mapped",[35910]],[[12183,12183],"mapped",[35925]],[[12184,12184],"mapped",[35960]],[[12185,12185],"mapped",[35997]],[[12186,12186],"mapped",[36196]],[[12187,12187],"mapped",[36208]],[[12188,12188],"mapped",[36275]],[[12189,12189],"mapped",[36523]],[[12190,12190],"mapped",[36554]],[[12191,12191],"mapped",[36763]],[[12192,12192],"mapped",[36784]],[[12193,12193],"mapped",[36789]],[[12194,12194],"mapped",[37009]],[[12195,12195],"mapped",[37193]],[[12196,12196],"mapped",[37318]],[[12197,12197],"mapped",[37324]],[[12198,12198],"mapped",[37329]],[[12199,12199],"mapped",[38263]],[[12200,12200],"mapped",[38272]],[[12201,12201],"mapped",[38428]],[[12202,12202],"mapped",[38582]],[[12203,12203],"mapped",[38585]],[[12204,12204],"mapped",[38632]],[[12205,12205],"mapped",[38737]],[[12206,12206],"mapped",[38750]],[[12207,12207],"mapped",[38754]],[[12208,12208],"mapped",[38761]],[[12209,12209],"mapped",[38859]],[[12210,12210],"mapped",[38893]],[[12211,12211],"mapped",[38899]],[[12212,12212],"mapped",[38913]],[[12213,12213],"mapped",[39080]],[[12214,12214],"mapped",[39131]],[[12215,12215],"mapped",[39135]],[[12216,12216],"mapped",[39318]],[[12217,12217],"mapped",[39321]],[[12218,12218],"mapped",[39340]],[[12219,12219],"mapped",[39592]],[[12220,12220],"mapped",[39640]],[[12221,12221],"mapped",[39647]],[[12222,12222],"mapped",[39717]],[[12223,12223],"mapped",[39727]],[[12224,12224],"mapped",[39730]],[[12225,12225],"mapped",[39740]],[[12226,12226],"mapped",[39770]],[[12227,12227],"mapped",[40165]],[[12228,12228],"mapped",[40565]],[[12229,12229],"mapped",[40575]],[[12230,12230],"mapped",[40613]],[[12231,12231],"mapped",[40635]],[[12232,12232],"mapped",[40643]],[[12233,12233],"mapped",[40653]],[[12234,12234],"mapped",[40657]],[[12235,12235],"mapped",[40697]],[[12236,12236],"mapped",[40701]],[[12237,12237],"mapped",[40718]],[[12238,12238],"mapped",[40723]],[[12239,12239],"mapped",[40736]],[[12240,12240],"mapped",[40763]],[[12241,12241],"mapped",[40778]],[[12242,12242],"mapped",[40786]],[[12243,12243],"mapped",[40845]],[[12244,12244],"mapped",[40860]],[[12245,12245],"mapped",[40864]],[[12246,12271],"disallowed"],[[12272,12283],"disallowed"],[[12284,12287],"disallowed"],[[12288,12288],"disallowed_STD3_mapped",[32]],[[12289,12289],"valid",[],"NV8"],[[12290,12290],"mapped",[46]],[[12291,12292],"valid",[],"NV8"],[[12293,12295],"valid"],[[12296,12329],"valid",[],"NV8"],[[12330,12333],"valid"],[[12334,12341],"valid",[],"NV8"],[[12342,12342],"mapped",[12306]],[[12343,12343],"valid",[],"NV8"],[[12344,12344],"mapped",[21313]],[[12345,12345],"mapped",[21316]],[[12346,12346],"mapped",[21317]],[[12347,12347],"valid",[],"NV8"],[[12348,12348],"valid"],[[12349,12349],"valid",[],"NV8"],[[12350,12350],"valid",[],"NV8"],[[12351,12351],"valid",[],"NV8"],[[12352,12352],"disallowed"],[[12353,12436],"valid"],[[12437,12438],"valid"],[[12439,12440],"disallowed"],[[12441,12442],"valid"],[[12443,12443],"disallowed_STD3_mapped",[32,12441]],[[12444,12444],"disallowed_STD3_mapped",[32,12442]],[[12445,12446],"valid"],[[12447,12447],"mapped",[12424,12426]],[[12448,12448],"valid",[],"NV8"],[[12449,12542],"valid"],[[12543,12543],"mapped",[12467,12488]],[[12544,12548],"disallowed"],[[12549,12588],"valid"],[[12589,12589],"valid"],[[12590,12592],"disallowed"],[[12593,12593],"mapped",[4352]],[[12594,12594],"mapped",[4353]],[[12595,12595],"mapped",[4522]],[[12596,12596],"mapped",[4354]],[[12597,12597],"mapped",[4524]],[[12598,12598],"mapped",[4525]],[[12599,12599],"mapped",[4355]],[[12600,12600],"mapped",[4356]],[[12601,12601],"mapped",[4357]],[[12602,12602],"mapped",[4528]],[[12603,12603],"mapped",[4529]],[[12604,12604],"mapped",[4530]],[[12605,12605],"mapped",[4531]],[[12606,12606],"mapped",[4532]],[[12607,12607],"mapped",[4533]],[[12608,12608],"mapped",[4378]],[[12609,12609],"mapped",[4358]],[[12610,12610],"mapped",[4359]],[[12611,12611],"mapped",[4360]],[[12612,12612],"mapped",[4385]],[[12613,12613],"mapped",[4361]],[[12614,12614],"mapped",[4362]],[[12615,12615],"mapped",[4363]],[[12616,12616],"mapped",[4364]],[[12617,12617],"mapped",[4365]],[[12618,12618],"mapped",[4366]],[[12619,12619],"mapped",[4367]],[[12620,12620],"mapped",[4368]],[[12621,12621],"mapped",[4369]],[[12622,12622],"mapped",[4370]],[[12623,12623],"mapped",[4449]],[[12624,12624],"mapped",[4450]],[[12625,12625],"mapped",[4451]],[[12626,12626],"mapped",[4452]],[[12627,12627],"mapped",[4453]],[[12628,12628],"mapped",[4454]],[[12629,12629],"mapped",[4455]],[[12630,12630],"mapped",[4456]],[[12631,12631],"mapped",[4457]],[[12632,12632],"mapped",[4458]],[[12633,12633],"mapped",[4459]],[[12634,12634],"mapped",[4460]],[[12635,12635],"mapped",[4461]],[[12636,12636],"mapped",[4462]],[[12637,12637],"mapped",[4463]],[[12638,12638],"mapped",[4464]],[[12639,12639],"mapped",[4465]],[[12640,12640],"mapped",[4466]],[[12641,12641],"mapped",[4467]],[[12642,12642],"mapped",[4468]],[[12643,12643],"mapped",[4469]],[[12644,12644],"disallowed"],[[12645,12645],"mapped",[4372]],[[12646,12646],"mapped",[4373]],[[12647,12647],"mapped",[4551]],[[12648,12648],"mapped",[4552]],[[12649,12649],"mapped",[4556]],[[12650,12650],"mapped",[4558]],[[12651,12651],"mapped",[4563]],[[12652,12652],"mapped",[4567]],[[12653,12653],"mapped",[4569]],[[12654,12654],"mapped",[4380]],[[12655,12655],"mapped",[4573]],[[12656,12656],"mapped",[4575]],[[12657,12657],"mapped",[4381]],[[12658,12658],"mapped",[4382]],[[12659,12659],"mapped",[4384]],[[12660,12660],"mapped",[4386]],[[12661,12661],"mapped",[4387]],[[12662,12662],"mapped",[4391]],[[12663,12663],"mapped",[4393]],[[12664,12664],"mapped",[4395]],[[12665,12665],"mapped",[4396]],[[12666,12666],"mapped",[4397]],[[12667,12667],"mapped",[4398]],[[12668,12668],"mapped",[4399]],[[12669,12669],"mapped",[4402]],[[12670,12670],"mapped",[4406]],[[12671,12671],"mapped",[4416]],[[12672,12672],"mapped",[4423]],[[12673,12673],"mapped",[4428]],[[12674,12674],"mapped",[4593]],[[12675,12675],"mapped",[4594]],[[12676,12676],"mapped",[4439]],[[12677,12677],"mapped",[4440]],[[12678,12678],"mapped",[4441]],[[12679,12679],"mapped",[4484]],[[12680,12680],"mapped",[4485]],[[12681,12681],"mapped",[4488]],[[12682,12682],"mapped",[4497]],[[12683,12683],"mapped",[4498]],[[12684,12684],"mapped",[4500]],[[12685,12685],"mapped",[4510]],[[12686,12686],"mapped",[4513]],[[12687,12687],"disallowed"],[[12688,12689],"valid",[],"NV8"],[[12690,12690],"mapped",[19968]],[[12691,12691],"mapped",[20108]],[[12692,12692],"mapped",[19977]],[[12693,12693],"mapped",[22235]],[[12694,12694],"mapped",[19978]],[[12695,12695],"mapped",[20013]],[[12696,12696],"mapped",[19979]],[[12697,12697],"mapped",[30002]],[[12698,12698],"mapped",[20057]],[[12699,12699],"mapped",[19993]],[[12700,12700],"mapped",[19969]],[[12701,12701],"mapped",[22825]],[[12702,12702],"mapped",[22320]],[[12703,12703],"mapped",[20154]],[[12704,12727],"valid"],[[12728,12730],"valid"],[[12731,12735],"disallowed"],[[12736,12751],"valid",[],"NV8"],[[12752,12771],"valid",[],"NV8"],[[12772,12783],"disallowed"],[[12784,12799],"valid"],[[12800,12800],"disallowed_STD3_mapped",[40,4352,41]],[[12801,12801],"disallowed_STD3_mapped",[40,4354,41]],[[12802,12802],"disallowed_STD3_mapped",[40,4355,41]],[[12803,12803],"disallowed_STD3_mapped",[40,4357,41]],[[12804,12804],"disallowed_STD3_mapped",[40,4358,41]],[[12805,12805],"disallowed_STD3_mapped",[40,4359,41]],[[12806,12806],"disallowed_STD3_mapped",[40,4361,41]],[[12807,12807],"disallowed_STD3_mapped",[40,4363,41]],[[12808,12808],"disallowed_STD3_mapped",[40,4364,41]],[[12809,12809],"disallowed_STD3_mapped",[40,4366,41]],[[12810,12810],"disallowed_STD3_mapped",[40,4367,41]],[[12811,12811],"disallowed_STD3_mapped",[40,4368,41]],[[12812,12812],"disallowed_STD3_mapped",[40,4369,41]],[[12813,12813],"disallowed_STD3_mapped",[40,4370,41]],[[12814,12814],"disallowed_STD3_mapped",[40,44032,41]],[[12815,12815],"disallowed_STD3_mapped",[40,45208,41]],[[12816,12816],"disallowed_STD3_mapped",[40,45796,41]],[[12817,12817],"disallowed_STD3_mapped",[40,46972,41]],[[12818,12818],"disallowed_STD3_mapped",[40,47560,41]],[[12819,12819],"disallowed_STD3_mapped",[40,48148,41]],[[12820,12820],"disallowed_STD3_mapped",[40,49324,41]],[[12821,12821],"disallowed_STD3_mapped",[40,50500,41]],[[12822,12822],"disallowed_STD3_mapped",[40,51088,41]],[[12823,12823],"disallowed_STD3_mapped",[40,52264,41]],[[12824,12824],"disallowed_STD3_mapped",[40,52852,41]],[[12825,12825],"disallowed_STD3_mapped",[40,53440,41]],[[12826,12826],"disallowed_STD3_mapped",[40,54028,41]],[[12827,12827],"disallowed_STD3_mapped",[40,54616,41]],[[12828,12828],"disallowed_STD3_mapped",[40,51452,41]],[[12829,12829],"disallowed_STD3_mapped",[40,50724,51204,41]],[[12830,12830],"disallowed_STD3_mapped",[40,50724,54980,41]],[[12831,12831],"disallowed"],[[12832,12832],"disallowed_STD3_mapped",[40,19968,41]],[[12833,12833],"disallowed_STD3_mapped",[40,20108,41]],[[12834,12834],"disallowed_STD3_mapped",[40,19977,41]],[[12835,12835],"disallowed_STD3_mapped",[40,22235,41]],[[12836,12836],"disallowed_STD3_mapped",[40,20116,41]],[[12837,12837],"disallowed_STD3_mapped",[40,20845,41]],[[12838,12838],"disallowed_STD3_mapped",[40,19971,41]],[[12839,12839],"disallowed_STD3_mapped",[40,20843,41]],[[12840,12840],"disallowed_STD3_mapped",[40,20061,41]],[[12841,12841],"disallowed_STD3_mapped",[40,21313,41]],[[12842,12842],"disallowed_STD3_mapped",[40,26376,41]],[[12843,12843],"disallowed_STD3_mapped",[40,28779,41]],[[12844,12844],"disallowed_STD3_mapped",[40,27700,41]],[[12845,12845],"disallowed_STD3_mapped",[40,26408,41]],[[12846,12846],"disallowed_STD3_mapped",[40,37329,41]],[[12847,12847],"disallowed_STD3_mapped",[40,22303,41]],[[12848,12848],"disallowed_STD3_mapped",[40,26085,41]],[[12849,12849],"disallowed_STD3_mapped",[40,26666,41]],[[12850,12850],"disallowed_STD3_mapped",[40,26377,41]],[[12851,12851],"disallowed_STD3_mapped",[40,31038,41]],[[12852,12852],"disallowed_STD3_mapped",[40,21517,41]],[[12853,12853],"disallowed_STD3_mapped",[40,29305,41]],[[12854,12854],"disallowed_STD3_mapped",[40,36001,41]],[[12855,12855],"disallowed_STD3_mapped",[40,31069,41]],[[12856,12856],"disallowed_STD3_mapped",[40,21172,41]],[[12857,12857],"disallowed_STD3_mapped",[40,20195,41]],[[12858,12858],"disallowed_STD3_mapped",[40,21628,41]],[[12859,12859],"disallowed_STD3_mapped",[40,23398,41]],[[12860,12860],"disallowed_STD3_mapped",[40,30435,41]],[[12861,12861],"disallowed_STD3_mapped",[40,20225,41]],[[12862,12862],"disallowed_STD3_mapped",[40,36039,41]],[[12863,12863],"disallowed_STD3_mapped",[40,21332,41]],[[12864,12864],"disallowed_STD3_mapped",[40,31085,41]],[[12865,12865],"disallowed_STD3_mapped",[40,20241,41]],[[12866,12866],"disallowed_STD3_mapped",[40,33258,41]],[[12867,12867],"disallowed_STD3_mapped",[40,33267,41]],[[12868,12868],"mapped",[21839]],[[12869,12869],"mapped",[24188]],[[12870,12870],"mapped",[25991]],[[12871,12871],"mapped",[31631]],[[12872,12879],"valid",[],"NV8"],[[12880,12880],"mapped",[112,116,101]],[[12881,12881],"mapped",[50,49]],[[12882,12882],"mapped",[50,50]],[[12883,12883],"mapped",[50,51]],[[12884,12884],"mapped",[50,52]],[[12885,12885],"mapped",[50,53]],[[12886,12886],"mapped",[50,54]],[[12887,12887],"mapped",[50,55]],[[12888,12888],"mapped",[50,56]],[[12889,12889],"mapped",[50,57]],[[12890,12890],"mapped",[51,48]],[[12891,12891],"mapped",[51,49]],[[12892,12892],"mapped",[51,50]],[[12893,12893],"mapped",[51,51]],[[12894,12894],"mapped",[51,52]],[[12895,12895],"mapped",[51,53]],[[12896,12896],"mapped",[4352]],[[12897,12897],"mapped",[4354]],[[12898,12898],"mapped",[4355]],[[12899,12899],"mapped",[4357]],[[12900,12900],"mapped",[4358]],[[12901,12901],"mapped",[4359]],[[12902,12902],"mapped",[4361]],[[12903,12903],"mapped",[4363]],[[12904,12904],"mapped",[4364]],[[12905,12905],"mapped",[4366]],[[12906,12906],"mapped",[4367]],[[12907,12907],"mapped",[4368]],[[12908,12908],"mapped",[4369]],[[12909,12909],"mapped",[4370]],[[12910,12910],"mapped",[44032]],[[12911,12911],"mapped",[45208]],[[12912,12912],"mapped",[45796]],[[12913,12913],"mapped",[46972]],[[12914,12914],"mapped",[47560]],[[12915,12915],"mapped",[48148]],[[12916,12916],"mapped",[49324]],[[12917,12917],"mapped",[50500]],[[12918,12918],"mapped",[51088]],[[12919,12919],"mapped",[52264]],[[12920,12920],"mapped",[52852]],[[12921,12921],"mapped",[53440]],[[12922,12922],"mapped",[54028]],[[12923,12923],"mapped",[54616]],[[12924,12924],"mapped",[52280,44256]],[[12925,12925],"mapped",[51452,51032]],[[12926,12926],"mapped",[50864]],[[12927,12927],"valid",[],"NV8"],[[12928,12928],"mapped",[19968]],[[12929,12929],"mapped",[20108]],[[12930,12930],"mapped",[19977]],[[12931,12931],"mapped",[22235]],[[12932,12932],"mapped",[20116]],[[12933,12933],"mapped",[20845]],[[12934,12934],"mapped",[19971]],[[12935,12935],"mapped",[20843]],[[12936,12936],"mapped",[20061]],[[12937,12937],"mapped",[21313]],[[12938,12938],"mapped",[26376]],[[12939,12939],"mapped",[28779]],[[12940,12940],"mapped",[27700]],[[12941,12941],"mapped",[26408]],[[12942,12942],"mapped",[37329]],[[12943,12943],"mapped",[22303]],[[12944,12944],"mapped",[26085]],[[12945,12945],"mapped",[26666]],[[12946,12946],"mapped",[26377]],[[12947,12947],"mapped",[31038]],[[12948,12948],"mapped",[21517]],[[12949,12949],"mapped",[29305]],[[12950,12950],"mapped",[36001]],[[12951,12951],"mapped",[31069]],[[12952,12952],"mapped",[21172]],[[12953,12953],"mapped",[31192]],[[12954,12954],"mapped",[30007]],[[12955,12955],"mapped",[22899]],[[12956,12956],"mapped",[36969]],[[12957,12957],"mapped",[20778]],[[12958,12958],"mapped",[21360]],[[12959,12959],"mapped",[27880]],[[12960,12960],"mapped",[38917]],[[12961,12961],"mapped",[20241]],[[12962,12962],"mapped",[20889]],[[12963,12963],"mapped",[27491]],[[12964,12964],"mapped",[19978]],[[12965,12965],"mapped",[20013]],[[12966,12966],"mapped",[19979]],[[12967,12967],"mapped",[24038]],[[12968,12968],"mapped",[21491]],[[12969,12969],"mapped",[21307]],[[12970,12970],"mapped",[23447]],[[12971,12971],"mapped",[23398]],[[12972,12972],"mapped",[30435]],[[12973,12973],"mapped",[20225]],[[12974,12974],"mapped",[36039]],[[12975,12975],"mapped",[21332]],[[12976,12976],"mapped",[22812]],[[12977,12977],"mapped",[51,54]],[[12978,12978],"mapped",[51,55]],[[12979,12979],"mapped",[51,56]],[[12980,12980],"mapped",[51,57]],[[12981,12981],"mapped",[52,48]],[[12982,12982],"mapped",[52,49]],[[12983,12983],"mapped",[52,50]],[[12984,12984],"mapped",[52,51]],[[12985,12985],"mapped",[52,52]],[[12986,12986],"mapped",[52,53]],[[12987,12987],"mapped",[52,54]],[[12988,12988],"mapped",[52,55]],[[12989,12989],"mapped",[52,56]],[[12990,12990],"mapped",[52,57]],[[12991,12991],"mapped",[53,48]],[[12992,12992],"mapped",[49,26376]],[[12993,12993],"mapped",[50,26376]],[[12994,12994],"mapped",[51,26376]],[[12995,12995],"mapped",[52,26376]],[[12996,12996],"mapped",[53,26376]],[[12997,12997],"mapped",[54,26376]],[[12998,12998],"mapped",[55,26376]],[[12999,12999],"mapped",[56,26376]],[[13000,13000],"mapped",[57,26376]],[[13001,13001],"mapped",[49,48,26376]],[[13002,13002],"mapped",[49,49,26376]],[[13003,13003],"mapped",[49,50,26376]],[[13004,13004],"mapped",[104,103]],[[13005,13005],"mapped",[101,114,103]],[[13006,13006],"mapped",[101,118]],[[13007,13007],"mapped",[108,116,100]],[[13008,13008],"mapped",[12450]],[[13009,13009],"mapped",[12452]],[[13010,13010],"mapped",[12454]],[[13011,13011],"mapped",[12456]],[[13012,13012],"mapped",[12458]],[[13013,13013],"mapped",[12459]],[[13014,13014],"mapped",[12461]],[[13015,13015],"mapped",[12463]],[[13016,13016],"mapped",[12465]],[[13017,13017],"mapped",[12467]],[[13018,13018],"mapped",[12469]],[[13019,13019],"mapped",[12471]],[[13020,13020],"mapped",[12473]],[[13021,13021],"mapped",[12475]],[[13022,13022],"mapped",[12477]],[[13023,13023],"mapped",[12479]],[[13024,13024],"mapped",[12481]],[[13025,13025],"mapped",[12484]],[[13026,13026],"mapped",[12486]],[[13027,13027],"mapped",[12488]],[[13028,13028],"mapped",[12490]],[[13029,13029],"mapped",[12491]],[[13030,13030],"mapped",[12492]],[[13031,13031],"mapped",[12493]],[[13032,13032],"mapped",[12494]],[[13033,13033],"mapped",[12495]],[[13034,13034],"mapped",[12498]],[[13035,13035],"mapped",[12501]],[[13036,13036],"mapped",[12504]],[[13037,13037],"mapped",[12507]],[[13038,13038],"mapped",[12510]],[[13039,13039],"mapped",[12511]],[[13040,13040],"mapped",[12512]],[[13041,13041],"mapped",[12513]],[[13042,13042],"mapped",[12514]],[[13043,13043],"mapped",[12516]],[[13044,13044],"mapped",[12518]],[[13045,13045],"mapped",[12520]],[[13046,13046],"mapped",[12521]],[[13047,13047],"mapped",[12522]],[[13048,13048],"mapped",[12523]],[[13049,13049],"mapped",[12524]],[[13050,13050],"mapped",[12525]],[[13051,13051],"mapped",[12527]],[[13052,13052],"mapped",[12528]],[[13053,13053],"mapped",[12529]],[[13054,13054],"mapped",[12530]],[[13055,13055],"disallowed"],[[13056,13056],"mapped",[12450,12497,12540,12488]],[[13057,13057],"mapped",[12450,12523,12501,12449]],[[13058,13058],"mapped",[12450,12531,12506,12450]],[[13059,13059],"mapped",[12450,12540,12523]],[[13060,13060],"mapped",[12452,12491,12531,12464]],[[13061,13061],"mapped",[12452,12531,12481]],[[13062,13062],"mapped",[12454,12457,12531]],[[13063,13063],"mapped",[12456,12473,12463,12540,12489]],[[13064,13064],"mapped",[12456,12540,12459,12540]],[[13065,13065],"mapped",[12458,12531,12473]],[[13066,13066],"mapped",[12458,12540,12512]],[[13067,13067],"mapped",[12459,12452,12522]],[[13068,13068],"mapped",[12459,12521,12483,12488]],[[13069,13069],"mapped",[12459,12525,12522,12540]],[[13070,13070],"mapped",[12460,12525,12531]],[[13071,13071],"mapped",[12460,12531,12510]],[[13072,13072],"mapped",[12462,12460]],[[13073,13073],"mapped",[12462,12491,12540]],[[13074,13074],"mapped",[12461,12517,12522,12540]],[[13075,13075],"mapped",[12462,12523,12480,12540]],[[13076,13076],"mapped",[12461,12525]],[[13077,13077],"mapped",[12461,12525,12464,12521,12512]],[[13078,13078],"mapped",[12461,12525,12513,12540,12488,12523]],[[13079,13079],"mapped",[12461,12525,12527,12483,12488]],[[13080,13080],"mapped",[12464,12521,12512]],[[13081,13081],"mapped",[12464,12521,12512,12488,12531]],[[13082,13082],"mapped",[12463,12523,12476,12452,12525]],[[13083,13083],"mapped",[12463,12525,12540,12493]],[[13084,13084],"mapped",[12465,12540,12473]],[[13085,13085],"mapped",[12467,12523,12490]],[[13086,13086],"mapped",[12467,12540,12509]],[[13087,13087],"mapped",[12469,12452,12463,12523]],[[13088,13088],"mapped",[12469,12531,12481,12540,12512]],[[13089,13089],"mapped",[12471,12522,12531,12464]],[[13090,13090],"mapped",[12475,12531,12481]],[[13091,13091],"mapped",[12475,12531,12488]],[[13092,13092],"mapped",[12480,12540,12473]],[[13093,13093],"mapped",[12487,12471]],[[13094,13094],"mapped",[12489,12523]],[[13095,13095],"mapped",[12488,12531]],[[13096,13096],"mapped",[12490,12494]],[[13097,13097],"mapped",[12494,12483,12488]],[[13098,13098],"mapped",[12495,12452,12484]],[[13099,13099],"mapped",[12497,12540,12475,12531,12488]],[[13100,13100],"mapped",[12497,12540,12484]],[[13101,13101],"mapped",[12496,12540,12524,12523]],[[13102,13102],"mapped",[12500,12450,12473,12488,12523]],[[13103,13103],"mapped",[12500,12463,12523]],[[13104,13104],"mapped",[12500,12467]],[[13105,13105],"mapped",[12499,12523]],[[13106,13106],"mapped",[12501,12449,12521,12483,12489]],[[13107,13107],"mapped",[12501,12451,12540,12488]],[[13108,13108],"mapped",[12502,12483,12471,12455,12523]],[[13109,13109],"mapped",[12501,12521,12531]],[[13110,13110],"mapped",[12504,12463,12479,12540,12523]],[[13111,13111],"mapped",[12506,12477]],[[13112,13112],"mapped",[12506,12491,12498]],[[13113,13113],"mapped",[12504,12523,12484]],[[13114,13114],"mapped",[12506,12531,12473]],[[13115,13115],"mapped",[12506,12540,12472]],[[13116,13116],"mapped",[12505,12540,12479]],[[13117,13117],"mapped",[12509,12452,12531,12488]],[[13118,13118],"mapped",[12508,12523,12488]],[[13119,13119],"mapped",[12507,12531]],[[13120,13120],"mapped",[12509,12531,12489]],[[13121,13121],"mapped",[12507,12540,12523]],[[13122,13122],"mapped",[12507,12540,12531]],[[13123,13123],"mapped",[12510,12452,12463,12525]],[[13124,13124],"mapped",[12510,12452,12523]],[[13125,13125],"mapped",[12510,12483,12495]],[[13126,13126],"mapped",[12510,12523,12463]],[[13127,13127],"mapped",[12510,12531,12471,12519,12531]],[[13128,13128],"mapped",[12511,12463,12525,12531]],[[13129,13129],"mapped",[12511,12522]],[[13130,13130],"mapped",[12511,12522,12496,12540,12523]],[[13131,13131],"mapped",[12513,12460]],[[13132,13132],"mapped",[12513,12460,12488,12531]],[[13133,13133],"mapped",[12513,12540,12488,12523]],[[13134,13134],"mapped",[12516,12540,12489]],[[13135,13135],"mapped",[12516,12540,12523]],[[13136,13136],"mapped",[12518,12450,12531]],[[13137,13137],"mapped",[12522,12483,12488,12523]],[[13138,13138],"mapped",[12522,12521]],[[13139,13139],"mapped",[12523,12500,12540]],[[13140,13140],"mapped",[12523,12540,12502,12523]],[[13141,13141],"mapped",[12524,12512]],[[13142,13142],"mapped",[12524,12531,12488,12466,12531]],[[13143,13143],"mapped",[12527,12483,12488]],[[13144,13144],"mapped",[48,28857]],[[13145,13145],"mapped",[49,28857]],[[13146,13146],"mapped",[50,28857]],[[13147,13147],"mapped",[51,28857]],[[13148,13148],"mapped",[52,28857]],[[13149,13149],"mapped",[53,28857]],[[13150,13150],"mapped",[54,28857]],[[13151,13151],"mapped",[55,28857]],[[13152,13152],"mapped",[56,28857]],[[13153,13153],"mapped",[57,28857]],[[13154,13154],"mapped",[49,48,28857]],[[13155,13155],"mapped",[49,49,28857]],[[13156,13156],"mapped",[49,50,28857]],[[13157,13157],"mapped",[49,51,28857]],[[13158,13158],"mapped",[49,52,28857]],[[13159,13159],"mapped",[49,53,28857]],[[13160,13160],"mapped",[49,54,28857]],[[13161,13161],"mapped",[49,55,28857]],[[13162,13162],"mapped",[49,56,28857]],[[13163,13163],"mapped",[49,57,28857]],[[13164,13164],"mapped",[50,48,28857]],[[13165,13165],"mapped",[50,49,28857]],[[13166,13166],"mapped",[50,50,28857]],[[13167,13167],"mapped",[50,51,28857]],[[13168,13168],"mapped",[50,52,28857]],[[13169,13169],"mapped",[104,112,97]],[[13170,13170],"mapped",[100,97]],[[13171,13171],"mapped",[97,117]],[[13172,13172],"mapped",[98,97,114]],[[13173,13173],"mapped",[111,118]],[[13174,13174],"mapped",[112,99]],[[13175,13175],"mapped",[100,109]],[[13176,13176],"mapped",[100,109,50]],[[13177,13177],"mapped",[100,109,51]],[[13178,13178],"mapped",[105,117]],[[13179,13179],"mapped",[24179,25104]],[[13180,13180],"mapped",[26157,21644]],[[13181,13181],"mapped",[22823,27491]],[[13182,13182],"mapped",[26126,27835]],[[13183,13183],"mapped",[26666,24335,20250,31038]],[[13184,13184],"mapped",[112,97]],[[13185,13185],"mapped",[110,97]],[[13186,13186],"mapped",[956,97]],[[13187,13187],"mapped",[109,97]],[[13188,13188],"mapped",[107,97]],[[13189,13189],"mapped",[107,98]],[[13190,13190],"mapped",[109,98]],[[13191,13191],"mapped",[103,98]],[[13192,13192],"mapped",[99,97,108]],[[13193,13193],"mapped",[107,99,97,108]],[[13194,13194],"mapped",[112,102]],[[13195,13195],"mapped",[110,102]],[[13196,13196],"mapped",[956,102]],[[13197,13197],"mapped",[956,103]],[[13198,13198],"mapped",[109,103]],[[13199,13199],"mapped",[107,103]],[[13200,13200],"mapped",[104,122]],[[13201,13201],"mapped",[107,104,122]],[[13202,13202],"mapped",[109,104,122]],[[13203,13203],"mapped",[103,104,122]],[[13204,13204],"mapped",[116,104,122]],[[13205,13205],"mapped",[956,108]],[[13206,13206],"mapped",[109,108]],[[13207,13207],"mapped",[100,108]],[[13208,13208],"mapped",[107,108]],[[13209,13209],"mapped",[102,109]],[[13210,13210],"mapped",[110,109]],[[13211,13211],"mapped",[956,109]],[[13212,13212],"mapped",[109,109]],[[13213,13213],"mapped",[99,109]],[[13214,13214],"mapped",[107,109]],[[13215,13215],"mapped",[109,109,50]],[[13216,13216],"mapped",[99,109,50]],[[13217,13217],"mapped",[109,50]],[[13218,13218],"mapped",[107,109,50]],[[13219,13219],"mapped",[109,109,51]],[[13220,13220],"mapped",[99,109,51]],[[13221,13221],"mapped",[109,51]],[[13222,13222],"mapped",[107,109,51]],[[13223,13223],"mapped",[109,8725,115]],[[13224,13224],"mapped",[109,8725,115,50]],[[13225,13225],"mapped",[112,97]],[[13226,13226],"mapped",[107,112,97]],[[13227,13227],"mapped",[109,112,97]],[[13228,13228],"mapped",[103,112,97]],[[13229,13229],"mapped",[114,97,100]],[[13230,13230],"mapped",[114,97,100,8725,115]],[[13231,13231],"mapped",[114,97,100,8725,115,50]],[[13232,13232],"mapped",[112,115]],[[13233,13233],"mapped",[110,115]],[[13234,13234],"mapped",[956,115]],[[13235,13235],"mapped",[109,115]],[[13236,13236],"mapped",[112,118]],[[13237,13237],"mapped",[110,118]],[[13238,13238],"mapped",[956,118]],[[13239,13239],"mapped",[109,118]],[[13240,13240],"mapped",[107,118]],[[13241,13241],"mapped",[109,118]],[[13242,13242],"mapped",[112,119]],[[13243,13243],"mapped",[110,119]],[[13244,13244],"mapped",[956,119]],[[13245,13245],"mapped",[109,119]],[[13246,13246],"mapped",[107,119]],[[13247,13247],"mapped",[109,119]],[[13248,13248],"mapped",[107,969]],[[13249,13249],"mapped",[109,969]],[[13250,13250],"disallowed"],[[13251,13251],"mapped",[98,113]],[[13252,13252],"mapped",[99,99]],[[13253,13253],"mapped",[99,100]],[[13254,13254],"mapped",[99,8725,107,103]],[[13255,13255],"disallowed"],[[13256,13256],"mapped",[100,98]],[[13257,13257],"mapped",[103,121]],[[13258,13258],"mapped",[104,97]],[[13259,13259],"mapped",[104,112]],[[13260,13260],"mapped",[105,110]],[[13261,13261],"mapped",[107,107]],[[13262,13262],"mapped",[107,109]],[[13263,13263],"mapped",[107,116]],[[13264,13264],"mapped",[108,109]],[[13265,13265],"mapped",[108,110]],[[13266,13266],"mapped",[108,111,103]],[[13267,13267],"mapped",[108,120]],[[13268,13268],"mapped",[109,98]],[[13269,13269],"mapped",[109,105,108]],[[13270,13270],"mapped",[109,111,108]],[[13271,13271],"mapped",[112,104]],[[13272,13272],"disallowed"],[[13273,13273],"mapped",[112,112,109]],[[13274,13274],"mapped",[112,114]],[[13275,13275],"mapped",[115,114]],[[13276,13276],"mapped",[115,118]],[[13277,13277],"mapped",[119,98]],[[13278,13278],"mapped",[118,8725,109]],[[13279,13279],"mapped",[97,8725,109]],[[13280,13280],"mapped",[49,26085]],[[13281,13281],"mapped",[50,26085]],[[13282,13282],"mapped",[51,26085]],[[13283,13283],"mapped",[52,26085]],[[13284,13284],"mapped",[53,26085]],[[13285,13285],"mapped",[54,26085]],[[13286,13286],"mapped",[55,26085]],[[13287,13287],"mapped",[56,26085]],[[13288,13288],"mapped",[57,26085]],[[13289,13289],"mapped",[49,48,26085]],[[13290,13290],"mapped",[49,49,26085]],[[13291,13291],"mapped",[49,50,26085]],[[13292,13292],"mapped",[49,51,26085]],[[13293,13293],"mapped",[49,52,26085]],[[13294,13294],"mapped",[49,53,26085]],[[13295,13295],"mapped",[49,54,26085]],[[13296,13296],"mapped",[49,55,26085]],[[13297,13297],"mapped",[49,56,26085]],[[13298,13298],"mapped",[49,57,26085]],[[13299,13299],"mapped",[50,48,26085]],[[13300,13300],"mapped",[50,49,26085]],[[13301,13301],"mapped",[50,50,26085]],[[13302,13302],"mapped",[50,51,26085]],[[13303,13303],"mapped",[50,52,26085]],[[13304,13304],"mapped",[50,53,26085]],[[13305,13305],"mapped",[50,54,26085]],[[13306,13306],"mapped",[50,55,26085]],[[13307,13307],"mapped",[50,56,26085]],[[13308,13308],"mapped",[50,57,26085]],[[13309,13309],"mapped",[51,48,26085]],[[13310,13310],"mapped",[51,49,26085]],[[13311,13311],"mapped",[103,97,108]],[[13312,19893],"valid"],[[19894,19903],"disallowed"],[[19904,19967],"valid",[],"NV8"],[[19968,40869],"valid"],[[40870,40891],"valid"],[[40892,40899],"valid"],[[40900,40907],"valid"],[[40908,40908],"valid"],[[40909,40917],"valid"],[[40918,40959],"disallowed"],[[40960,42124],"valid"],[[42125,42127],"disallowed"],[[42128,42145],"valid",[],"NV8"],[[42146,42147],"valid",[],"NV8"],[[42148,42163],"valid",[],"NV8"],[[42164,42164],"valid",[],"NV8"],[[42165,42176],"valid",[],"NV8"],[[42177,42177],"valid",[],"NV8"],[[42178,42180],"valid",[],"NV8"],[[42181,42181],"valid",[],"NV8"],[[42182,42182],"valid",[],"NV8"],[[42183,42191],"disallowed"],[[42192,42237],"valid"],[[42238,42239],"valid",[],"NV8"],[[42240,42508],"valid"],[[42509,42511],"valid",[],"NV8"],[[42512,42539],"valid"],[[42540,42559],"disallowed"],[[42560,42560],"mapped",[42561]],[[42561,42561],"valid"],[[42562,42562],"mapped",[42563]],[[42563,42563],"valid"],[[42564,42564],"mapped",[42565]],[[42565,42565],"valid"],[[42566,42566],"mapped",[42567]],[[42567,42567],"valid"],[[42568,42568],"mapped",[42569]],[[42569,42569],"valid"],[[42570,42570],"mapped",[42571]],[[42571,42571],"valid"],[[42572,42572],"mapped",[42573]],[[42573,42573],"valid"],[[42574,42574],"mapped",[42575]],[[42575,42575],"valid"],[[42576,42576],"mapped",[42577]],[[42577,42577],"valid"],[[42578,42578],"mapped",[42579]],[[42579,42579],"valid"],[[42580,42580],"mapped",[42581]],[[42581,42581],"valid"],[[42582,42582],"mapped",[42583]],[[42583,42583],"valid"],[[42584,42584],"mapped",[42585]],[[42585,42585],"valid"],[[42586,42586],"mapped",[42587]],[[42587,42587],"valid"],[[42588,42588],"mapped",[42589]],[[42589,42589],"valid"],[[42590,42590],"mapped",[42591]],[[42591,42591],"valid"],[[42592,42592],"mapped",[42593]],[[42593,42593],"valid"],[[42594,42594],"mapped",[42595]],[[42595,42595],"valid"],[[42596,42596],"mapped",[42597]],[[42597,42597],"valid"],[[42598,42598],"mapped",[42599]],[[42599,42599],"valid"],[[42600,42600],"mapped",[42601]],[[42601,42601],"valid"],[[42602,42602],"mapped",[42603]],[[42603,42603],"valid"],[[42604,42604],"mapped",[42605]],[[42605,42607],"valid"],[[42608,42611],"valid",[],"NV8"],[[42612,42619],"valid"],[[42620,42621],"valid"],[[42622,42622],"valid",[],"NV8"],[[42623,42623],"valid"],[[42624,42624],"mapped",[42625]],[[42625,42625],"valid"],[[42626,42626],"mapped",[42627]],[[42627,42627],"valid"],[[42628,42628],"mapped",[42629]],[[42629,42629],"valid"],[[42630,42630],"mapped",[42631]],[[42631,42631],"valid"],[[42632,42632],"mapped",[42633]],[[42633,42633],"valid"],[[42634,42634],"mapped",[42635]],[[42635,42635],"valid"],[[42636,42636],"mapped",[42637]],[[42637,42637],"valid"],[[42638,42638],"mapped",[42639]],[[42639,42639],"valid"],[[42640,42640],"mapped",[42641]],[[42641,42641],"valid"],[[42642,42642],"mapped",[42643]],[[42643,42643],"valid"],[[42644,42644],"mapped",[42645]],[[42645,42645],"valid"],[[42646,42646],"mapped",[42647]],[[42647,42647],"valid"],[[42648,42648],"mapped",[42649]],[[42649,42649],"valid"],[[42650,42650],"mapped",[42651]],[[42651,42651],"valid"],[[42652,42652],"mapped",[1098]],[[42653,42653],"mapped",[1100]],[[42654,42654],"valid"],[[42655,42655],"valid"],[[42656,42725],"valid"],[[42726,42735],"valid",[],"NV8"],[[42736,42737],"valid"],[[42738,42743],"valid",[],"NV8"],[[42744,42751],"disallowed"],[[42752,42774],"valid",[],"NV8"],[[42775,42778],"valid"],[[42779,42783],"valid"],[[42784,42785],"valid",[],"NV8"],[[42786,42786],"mapped",[42787]],[[42787,42787],"valid"],[[42788,42788],"mapped",[42789]],[[42789,42789],"valid"],[[42790,42790],"mapped",[42791]],[[42791,42791],"valid"],[[42792,42792],"mapped",[42793]],[[42793,42793],"valid"],[[42794,42794],"mapped",[42795]],[[42795,42795],"valid"],[[42796,42796],"mapped",[42797]],[[42797,42797],"valid"],[[42798,42798],"mapped",[42799]],[[42799,42801],"valid"],[[42802,42802],"mapped",[42803]],[[42803,42803],"valid"],[[42804,42804],"mapped",[42805]],[[42805,42805],"valid"],[[42806,42806],"mapped",[42807]],[[42807,42807],"valid"],[[42808,42808],"mapped",[42809]],[[42809,42809],"valid"],[[42810,42810],"mapped",[42811]],[[42811,42811],"valid"],[[42812,42812],"mapped",[42813]],[[42813,42813],"valid"],[[42814,42814],"mapped",[42815]],[[42815,42815],"valid"],[[42816,42816],"mapped",[42817]],[[42817,42817],"valid"],[[42818,42818],"mapped",[42819]],[[42819,42819],"valid"],[[42820,42820],"mapped",[42821]],[[42821,42821],"valid"],[[42822,42822],"mapped",[42823]],[[42823,42823],"valid"],[[42824,42824],"mapped",[42825]],[[42825,42825],"valid"],[[42826,42826],"mapped",[42827]],[[42827,42827],"valid"],[[42828,42828],"mapped",[42829]],[[42829,42829],"valid"],[[42830,42830],"mapped",[42831]],[[42831,42831],"valid"],[[42832,42832],"mapped",[42833]],[[42833,42833],"valid"],[[42834,42834],"mapped",[42835]],[[42835,42835],"valid"],[[42836,42836],"mapped",[42837]],[[42837,42837],"valid"],[[42838,42838],"mapped",[42839]],[[42839,42839],"valid"],[[42840,42840],"mapped",[42841]],[[42841,42841],"valid"],[[42842,42842],"mapped",[42843]],[[42843,42843],"valid"],[[42844,42844],"mapped",[42845]],[[42845,42845],"valid"],[[42846,42846],"mapped",[42847]],[[42847,42847],"valid"],[[42848,42848],"mapped",[42849]],[[42849,42849],"valid"],[[42850,42850],"mapped",[42851]],[[42851,42851],"valid"],[[42852,42852],"mapped",[42853]],[[42853,42853],"valid"],[[42854,42854],"mapped",[42855]],[[42855,42855],"valid"],[[42856,42856],"mapped",[42857]],[[42857,42857],"valid"],[[42858,42858],"mapped",[42859]],[[42859,42859],"valid"],[[42860,42860],"mapped",[42861]],[[42861,42861],"valid"],[[42862,42862],"mapped",[42863]],[[42863,42863],"valid"],[[42864,42864],"mapped",[42863]],[[42865,42872],"valid"],[[42873,42873],"mapped",[42874]],[[42874,42874],"valid"],[[42875,42875],"mapped",[42876]],[[42876,42876],"valid"],[[42877,42877],"mapped",[7545]],[[42878,42878],"mapped",[42879]],[[42879,42879],"valid"],[[42880,42880],"mapped",[42881]],[[42881,42881],"valid"],[[42882,42882],"mapped",[42883]],[[42883,42883],"valid"],[[42884,42884],"mapped",[42885]],[[42885,42885],"valid"],[[42886,42886],"mapped",[42887]],[[42887,42888],"valid"],[[42889,42890],"valid",[],"NV8"],[[42891,42891],"mapped",[42892]],[[42892,42892],"valid"],[[42893,42893],"mapped",[613]],[[42894,42894],"valid"],[[42895,42895],"valid"],[[42896,42896],"mapped",[42897]],[[42897,42897],"valid"],[[42898,42898],"mapped",[42899]],[[42899,42899],"valid"],[[42900,42901],"valid"],[[42902,42902],"mapped",[42903]],[[42903,42903],"valid"],[[42904,42904],"mapped",[42905]],[[42905,42905],"valid"],[[42906,42906],"mapped",[42907]],[[42907,42907],"valid"],[[42908,42908],"mapped",[42909]],[[42909,42909],"valid"],[[42910,42910],"mapped",[42911]],[[42911,42911],"valid"],[[42912,42912],"mapped",[42913]],[[42913,42913],"valid"],[[42914,42914],"mapped",[42915]],[[42915,42915],"valid"],[[42916,42916],"mapped",[42917]],[[42917,42917],"valid"],[[42918,42918],"mapped",[42919]],[[42919,42919],"valid"],[[42920,42920],"mapped",[42921]],[[42921,42921],"valid"],[[42922,42922],"mapped",[614]],[[42923,42923],"mapped",[604]],[[42924,42924],"mapped",[609]],[[42925,42925],"mapped",[620]],[[42926,42927],"disallowed"],[[42928,42928],"mapped",[670]],[[42929,42929],"mapped",[647]],[[42930,42930],"mapped",[669]],[[42931,42931],"mapped",[43859]],[[42932,42932],"mapped",[42933]],[[42933,42933],"valid"],[[42934,42934],"mapped",[42935]],[[42935,42935],"valid"],[[42936,42998],"disallowed"],[[42999,42999],"valid"],[[43000,43000],"mapped",[295]],[[43001,43001],"mapped",[339]],[[43002,43002],"valid"],[[43003,43007],"valid"],[[43008,43047],"valid"],[[43048,43051],"valid",[],"NV8"],[[43052,43055],"disallowed"],[[43056,43065],"valid",[],"NV8"],[[43066,43071],"disallowed"],[[43072,43123],"valid"],[[43124,43127],"valid",[],"NV8"],[[43128,43135],"disallowed"],[[43136,43204],"valid"],[[43205,43213],"disallowed"],[[43214,43215],"valid",[],"NV8"],[[43216,43225],"valid"],[[43226,43231],"disallowed"],[[43232,43255],"valid"],[[43256,43258],"valid",[],"NV8"],[[43259,43259],"valid"],[[43260,43260],"valid",[],"NV8"],[[43261,43261],"valid"],[[43262,43263],"disallowed"],[[43264,43309],"valid"],[[43310,43311],"valid",[],"NV8"],[[43312,43347],"valid"],[[43348,43358],"disallowed"],[[43359,43359],"valid",[],"NV8"],[[43360,43388],"valid",[],"NV8"],[[43389,43391],"disallowed"],[[43392,43456],"valid"],[[43457,43469],"valid",[],"NV8"],[[43470,43470],"disallowed"],[[43471,43481],"valid"],[[43482,43485],"disallowed"],[[43486,43487],"valid",[],"NV8"],[[43488,43518],"valid"],[[43519,43519],"disallowed"],[[43520,43574],"valid"],[[43575,43583],"disallowed"],[[43584,43597],"valid"],[[43598,43599],"disallowed"],[[43600,43609],"valid"],[[43610,43611],"disallowed"],[[43612,43615],"valid",[],"NV8"],[[43616,43638],"valid"],[[43639,43641],"valid",[],"NV8"],[[43642,43643],"valid"],[[43644,43647],"valid"],[[43648,43714],"valid"],[[43715,43738],"disallowed"],[[43739,43741],"valid"],[[43742,43743],"valid",[],"NV8"],[[43744,43759],"valid"],[[43760,43761],"valid",[],"NV8"],[[43762,43766],"valid"],[[43767,43776],"disallowed"],[[43777,43782],"valid"],[[43783,43784],"disallowed"],[[43785,43790],"valid"],[[43791,43792],"disallowed"],[[43793,43798],"valid"],[[43799,43807],"disallowed"],[[43808,43814],"valid"],[[43815,43815],"disallowed"],[[43816,43822],"valid"],[[43823,43823],"disallowed"],[[43824,43866],"valid"],[[43867,43867],"valid",[],"NV8"],[[43868,43868],"mapped",[42791]],[[43869,43869],"mapped",[43831]],[[43870,43870],"mapped",[619]],[[43871,43871],"mapped",[43858]],[[43872,43875],"valid"],[[43876,43877],"valid"],[[43878,43887],"disallowed"],[[43888,43888],"mapped",[5024]],[[43889,43889],"mapped",[5025]],[[43890,43890],"mapped",[5026]],[[43891,43891],"mapped",[5027]],[[43892,43892],"mapped",[5028]],[[43893,43893],"mapped",[5029]],[[43894,43894],"mapped",[5030]],[[43895,43895],"mapped",[5031]],[[43896,43896],"mapped",[5032]],[[43897,43897],"mapped",[5033]],[[43898,43898],"mapped",[5034]],[[43899,43899],"mapped",[5035]],[[43900,43900],"mapped",[5036]],[[43901,43901],"mapped",[5037]],[[43902,43902],"mapped",[5038]],[[43903,43903],"mapped",[5039]],[[43904,43904],"mapped",[5040]],[[43905,43905],"mapped",[5041]],[[43906,43906],"mapped",[5042]],[[43907,43907],"mapped",[5043]],[[43908,43908],"mapped",[5044]],[[43909,43909],"mapped",[5045]],[[43910,43910],"mapped",[5046]],[[43911,43911],"mapped",[5047]],[[43912,43912],"mapped",[5048]],[[43913,43913],"mapped",[5049]],[[43914,43914],"mapped",[5050]],[[43915,43915],"mapped",[5051]],[[43916,43916],"mapped",[5052]],[[43917,43917],"mapped",[5053]],[[43918,43918],"mapped",[5054]],[[43919,43919],"mapped",[5055]],[[43920,43920],"mapped",[5056]],[[43921,43921],"mapped",[5057]],[[43922,43922],"mapped",[5058]],[[43923,43923],"mapped",[5059]],[[43924,43924],"mapped",[5060]],[[43925,43925],"mapped",[5061]],[[43926,43926],"mapped",[5062]],[[43927,43927],"mapped",[5063]],[[43928,43928],"mapped",[5064]],[[43929,43929],"mapped",[5065]],[[43930,43930],"mapped",[5066]],[[43931,43931],"mapped",[5067]],[[43932,43932],"mapped",[5068]],[[43933,43933],"mapped",[5069]],[[43934,43934],"mapped",[5070]],[[43935,43935],"mapped",[5071]],[[43936,43936],"mapped",[5072]],[[43937,43937],"mapped",[5073]],[[43938,43938],"mapped",[5074]],[[43939,43939],"mapped",[5075]],[[43940,43940],"mapped",[5076]],[[43941,43941],"mapped",[5077]],[[43942,43942],"mapped",[5078]],[[43943,43943],"mapped",[5079]],[[43944,43944],"mapped",[5080]],[[43945,43945],"mapped",[5081]],[[43946,43946],"mapped",[5082]],[[43947,43947],"mapped",[5083]],[[43948,43948],"mapped",[5084]],[[43949,43949],"mapped",[5085]],[[43950,43950],"mapped",[5086]],[[43951,43951],"mapped",[5087]],[[43952,43952],"mapped",[5088]],[[43953,43953],"mapped",[5089]],[[43954,43954],"mapped",[5090]],[[43955,43955],"mapped",[5091]],[[43956,43956],"mapped",[5092]],[[43957,43957],"mapped",[5093]],[[43958,43958],"mapped",[5094]],[[43959,43959],"mapped",[5095]],[[43960,43960],"mapped",[5096]],[[43961,43961],"mapped",[5097]],[[43962,43962],"mapped",[5098]],[[43963,43963],"mapped",[5099]],[[43964,43964],"mapped",[5100]],[[43965,43965],"mapped",[5101]],[[43966,43966],"mapped",[5102]],[[43967,43967],"mapped",[5103]],[[43968,44010],"valid"],[[44011,44011],"valid",[],"NV8"],[[44012,44013],"valid"],[[44014,44015],"disallowed"],[[44016,44025],"valid"],[[44026,44031],"disallowed"],[[44032,55203],"valid"],[[55204,55215],"disallowed"],[[55216,55238],"valid",[],"NV8"],[[55239,55242],"disallowed"],[[55243,55291],"valid",[],"NV8"],[[55292,55295],"disallowed"],[[55296,57343],"disallowed"],[[57344,63743],"disallowed"],[[63744,63744],"mapped",[35912]],[[63745,63745],"mapped",[26356]],[[63746,63746],"mapped",[36554]],[[63747,63747],"mapped",[36040]],[[63748,63748],"mapped",[28369]],[[63749,63749],"mapped",[20018]],[[63750,63750],"mapped",[21477]],[[63751,63752],"mapped",[40860]],[[63753,63753],"mapped",[22865]],[[63754,63754],"mapped",[37329]],[[63755,63755],"mapped",[21895]],[[63756,63756],"mapped",[22856]],[[63757,63757],"mapped",[25078]],[[63758,63758],"mapped",[30313]],[[63759,63759],"mapped",[32645]],[[63760,63760],"mapped",[34367]],[[63761,63761],"mapped",[34746]],[[63762,63762],"mapped",[35064]],[[63763,63763],"mapped",[37007]],[[63764,63764],"mapped",[27138]],[[63765,63765],"mapped",[27931]],[[63766,63766],"mapped",[28889]],[[63767,63767],"mapped",[29662]],[[63768,63768],"mapped",[33853]],[[63769,63769],"mapped",[37226]],[[63770,63770],"mapped",[39409]],[[63771,63771],"mapped",[20098]],[[63772,63772],"mapped",[21365]],[[63773,63773],"mapped",[27396]],[[63774,63774],"mapped",[29211]],[[63775,63775],"mapped",[34349]],[[63776,63776],"mapped",[40478]],[[63777,63777],"mapped",[23888]],[[63778,63778],"mapped",[28651]],[[63779,63779],"mapped",[34253]],[[63780,63780],"mapped",[35172]],[[63781,63781],"mapped",[25289]],[[63782,63782],"mapped",[33240]],[[63783,63783],"mapped",[34847]],[[63784,63784],"mapped",[24266]],[[63785,63785],"mapped",[26391]],[[63786,63786],"mapped",[28010]],[[63787,63787],"mapped",[29436]],[[63788,63788],"mapped",[37070]],[[63789,63789],"mapped",[20358]],[[63790,63790],"mapped",[20919]],[[63791,63791],"mapped",[21214]],[[63792,63792],"mapped",[25796]],[[63793,63793],"mapped",[27347]],[[63794,63794],"mapped",[29200]],[[63795,63795],"mapped",[30439]],[[63796,63796],"mapped",[32769]],[[63797,63797],"mapped",[34310]],[[63798,63798],"mapped",[34396]],[[63799,63799],"mapped",[36335]],[[63800,63800],"mapped",[38706]],[[63801,63801],"mapped",[39791]],[[63802,63802],"mapped",[40442]],[[63803,63803],"mapped",[30860]],[[63804,63804],"mapped",[31103]],[[63805,63805],"mapped",[32160]],[[63806,63806],"mapped",[33737]],[[63807,63807],"mapped",[37636]],[[63808,63808],"mapped",[40575]],[[63809,63809],"mapped",[35542]],[[63810,63810],"mapped",[22751]],[[63811,63811],"mapped",[24324]],[[63812,63812],"mapped",[31840]],[[63813,63813],"mapped",[32894]],[[63814,63814],"mapped",[29282]],[[63815,63815],"mapped",[30922]],[[63816,63816],"mapped",[36034]],[[63817,63817],"mapped",[38647]],[[63818,63818],"mapped",[22744]],[[63819,63819],"mapped",[23650]],[[63820,63820],"mapped",[27155]],[[63821,63821],"mapped",[28122]],[[63822,63822],"mapped",[28431]],[[63823,63823],"mapped",[32047]],[[63824,63824],"mapped",[32311]],[[63825,63825],"mapped",[38475]],[[63826,63826],"mapped",[21202]],[[63827,63827],"mapped",[32907]],[[63828,63828],"mapped",[20956]],[[63829,63829],"mapped",[20940]],[[63830,63830],"mapped",[31260]],[[63831,63831],"mapped",[32190]],[[63832,63832],"mapped",[33777]],[[63833,63833],"mapped",[38517]],[[63834,63834],"mapped",[35712]],[[63835,63835],"mapped",[25295]],[[63836,63836],"mapped",[27138]],[[63837,63837],"mapped",[35582]],[[63838,63838],"mapped",[20025]],[[63839,63839],"mapped",[23527]],[[63840,63840],"mapped",[24594]],[[63841,63841],"mapped",[29575]],[[63842,63842],"mapped",[30064]],[[63843,63843],"mapped",[21271]],[[63844,63844],"mapped",[30971]],[[63845,63845],"mapped",[20415]],[[63846,63846],"mapped",[24489]],[[63847,63847],"mapped",[19981]],[[63848,63848],"mapped",[27852]],[[63849,63849],"mapped",[25976]],[[63850,63850],"mapped",[32034]],[[63851,63851],"mapped",[21443]],[[63852,63852],"mapped",[22622]],[[63853,63853],"mapped",[30465]],[[63854,63854],"mapped",[33865]],[[63855,63855],"mapped",[35498]],[[63856,63856],"mapped",[27578]],[[63857,63857],"mapped",[36784]],[[63858,63858],"mapped",[27784]],[[63859,63859],"mapped",[25342]],[[63860,63860],"mapped",[33509]],[[63861,63861],"mapped",[25504]],[[63862,63862],"mapped",[30053]],[[63863,63863],"mapped",[20142]],[[63864,63864],"mapped",[20841]],[[63865,63865],"mapped",[20937]],[[63866,63866],"mapped",[26753]],[[63867,63867],"mapped",[31975]],[[63868,63868],"mapped",[33391]],[[63869,63869],"mapped",[35538]],[[63870,63870],"mapped",[37327]],[[63871,63871],"mapped",[21237]],[[63872,63872],"mapped",[21570]],[[63873,63873],"mapped",[22899]],[[63874,63874],"mapped",[24300]],[[63875,63875],"mapped",[26053]],[[63876,63876],"mapped",[28670]],[[63877,63877],"mapped",[31018]],[[63878,63878],"mapped",[38317]],[[63879,63879],"mapped",[39530]],[[63880,63880],"mapped",[40599]],[[63881,63881],"mapped",[40654]],[[63882,63882],"mapped",[21147]],[[63883,63883],"mapped",[26310]],[[63884,63884],"mapped",[27511]],[[63885,63885],"mapped",[36706]],[[63886,63886],"mapped",[24180]],[[63887,63887],"mapped",[24976]],[[63888,63888],"mapped",[25088]],[[63889,63889],"mapped",[25754]],[[63890,63890],"mapped",[28451]],[[63891,63891],"mapped",[29001]],[[63892,63892],"mapped",[29833]],[[63893,63893],"mapped",[31178]],[[63894,63894],"mapped",[32244]],[[63895,63895],"mapped",[32879]],[[63896,63896],"mapped",[36646]],[[63897,63897],"mapped",[34030]],[[63898,63898],"mapped",[36899]],[[63899,63899],"mapped",[37706]],[[63900,63900],"mapped",[21015]],[[63901,63901],"mapped",[21155]],[[63902,63902],"mapped",[21693]],[[63903,63903],"mapped",[28872]],[[63904,63904],"mapped",[35010]],[[63905,63905],"mapped",[35498]],[[63906,63906],"mapped",[24265]],[[63907,63907],"mapped",[24565]],[[63908,63908],"mapped",[25467]],[[63909,63909],"mapped",[27566]],[[63910,63910],"mapped",[31806]],[[63911,63911],"mapped",[29557]],[[63912,63912],"mapped",[20196]],[[63913,63913],"mapped",[22265]],[[63914,63914],"mapped",[23527]],[[63915,63915],"mapped",[23994]],[[63916,63916],"mapped",[24604]],[[63917,63917],"mapped",[29618]],[[63918,63918],"mapped",[29801]],[[63919,63919],"mapped",[32666]],[[63920,63920],"mapped",[32838]],[[63921,63921],"mapped",[37428]],[[63922,63922],"mapped",[38646]],[[63923,63923],"mapped",[38728]],[[63924,63924],"mapped",[38936]],[[63925,63925],"mapped",[20363]],[[63926,63926],"mapped",[31150]],[[63927,63927],"mapped",[37300]],[[63928,63928],"mapped",[38584]],[[63929,63929],"mapped",[24801]],[[63930,63930],"mapped",[20102]],[[63931,63931],"mapped",[20698]],[[63932,63932],"mapped",[23534]],[[63933,63933],"mapped",[23615]],[[63934,63934],"mapped",[26009]],[[63935,63935],"mapped",[27138]],[[63936,63936],"mapped",[29134]],[[63937,63937],"mapped",[30274]],[[63938,63938],"mapped",[34044]],[[63939,63939],"mapped",[36988]],[[63940,63940],"mapped",[40845]],[[63941,63941],"mapped",[26248]],[[63942,63942],"mapped",[38446]],[[63943,63943],"mapped",[21129]],[[63944,63944],"mapped",[26491]],[[63945,63945],"mapped",[26611]],[[63946,63946],"mapped",[27969]],[[63947,63947],"mapped",[28316]],[[63948,63948],"mapped",[29705]],[[63949,63949],"mapped",[30041]],[[63950,63950],"mapped",[30827]],[[63951,63951],"mapped",[32016]],[[63952,63952],"mapped",[39006]],[[63953,63953],"mapped",[20845]],[[63954,63954],"mapped",[25134]],[[63955,63955],"mapped",[38520]],[[63956,63956],"mapped",[20523]],[[63957,63957],"mapped",[23833]],[[63958,63958],"mapped",[28138]],[[63959,63959],"mapped",[36650]],[[63960,63960],"mapped",[24459]],[[63961,63961],"mapped",[24900]],[[63962,63962],"mapped",[26647]],[[63963,63963],"mapped",[29575]],[[63964,63964],"mapped",[38534]],[[63965,63965],"mapped",[21033]],[[63966,63966],"mapped",[21519]],[[63967,63967],"mapped",[23653]],[[63968,63968],"mapped",[26131]],[[63969,63969],"mapped",[26446]],[[63970,63970],"mapped",[26792]],[[63971,63971],"mapped",[27877]],[[63972,63972],"mapped",[29702]],[[63973,63973],"mapped",[30178]],[[63974,63974],"mapped",[32633]],[[63975,63975],"mapped",[35023]],[[63976,63976],"mapped",[35041]],[[63977,63977],"mapped",[37324]],[[63978,63978],"mapped",[38626]],[[63979,63979],"mapped",[21311]],[[63980,63980],"mapped",[28346]],[[63981,63981],"mapped",[21533]],[[63982,63982],"mapped",[29136]],[[63983,63983],"mapped",[29848]],[[63984,63984],"mapped",[34298]],[[63985,63985],"mapped",[38563]],[[63986,63986],"mapped",[40023]],[[63987,63987],"mapped",[40607]],[[63988,63988],"mapped",[26519]],[[63989,63989],"mapped",[28107]],[[63990,63990],"mapped",[33256]],[[63991,63991],"mapped",[31435]],[[63992,63992],"mapped",[31520]],[[63993,63993],"mapped",[31890]],[[63994,63994],"mapped",[29376]],[[63995,63995],"mapped",[28825]],[[63996,63996],"mapped",[35672]],[[63997,63997],"mapped",[20160]],[[63998,63998],"mapped",[33590]],[[63999,63999],"mapped",[21050]],[[64000,64000],"mapped",[20999]],[[64001,64001],"mapped",[24230]],[[64002,64002],"mapped",[25299]],[[64003,64003],"mapped",[31958]],[[64004,64004],"mapped",[23429]],[[64005,64005],"mapped",[27934]],[[64006,64006],"mapped",[26292]],[[64007,64007],"mapped",[36667]],[[64008,64008],"mapped",[34892]],[[64009,64009],"mapped",[38477]],[[64010,64010],"mapped",[35211]],[[64011,64011],"mapped",[24275]],[[64012,64012],"mapped",[20800]],[[64013,64013],"mapped",[21952]],[[64014,64015],"valid"],[[64016,64016],"mapped",[22618]],[[64017,64017],"valid"],[[64018,64018],"mapped",[26228]],[[64019,64020],"valid"],[[64021,64021],"mapped",[20958]],[[64022,64022],"mapped",[29482]],[[64023,64023],"mapped",[30410]],[[64024,64024],"mapped",[31036]],[[64025,64025],"mapped",[31070]],[[64026,64026],"mapped",[31077]],[[64027,64027],"mapped",[31119]],[[64028,64028],"mapped",[38742]],[[64029,64029],"mapped",[31934]],[[64030,64030],"mapped",[32701]],[[64031,64031],"valid"],[[64032,64032],"mapped",[34322]],[[64033,64033],"valid"],[[64034,64034],"mapped",[35576]],[[64035,64036],"valid"],[[64037,64037],"mapped",[36920]],[[64038,64038],"mapped",[37117]],[[64039,64041],"valid"],[[64042,64042],"mapped",[39151]],[[64043,64043],"mapped",[39164]],[[64044,64044],"mapped",[39208]],[[64045,64045],"mapped",[40372]],[[64046,64046],"mapped",[37086]],[[64047,64047],"mapped",[38583]],[[64048,64048],"mapped",[20398]],[[64049,64049],"mapped",[20711]],[[64050,64050],"mapped",[20813]],[[64051,64051],"mapped",[21193]],[[64052,64052],"mapped",[21220]],[[64053,64053],"mapped",[21329]],[[64054,64054],"mapped",[21917]],[[64055,64055],"mapped",[22022]],[[64056,64056],"mapped",[22120]],[[64057,64057],"mapped",[22592]],[[64058,64058],"mapped",[22696]],[[64059,64059],"mapped",[23652]],[[64060,64060],"mapped",[23662]],[[64061,64061],"mapped",[24724]],[[64062,64062],"mapped",[24936]],[[64063,64063],"mapped",[24974]],[[64064,64064],"mapped",[25074]],[[64065,64065],"mapped",[25935]],[[64066,64066],"mapped",[26082]],[[64067,64067],"mapped",[26257]],[[64068,64068],"mapped",[26757]],[[64069,64069],"mapped",[28023]],[[64070,64070],"mapped",[28186]],[[64071,64071],"mapped",[28450]],[[64072,64072],"mapped",[29038]],[[64073,64073],"mapped",[29227]],[[64074,64074],"mapped",[29730]],[[64075,64075],"mapped",[30865]],[[64076,64076],"mapped",[31038]],[[64077,64077],"mapped",[31049]],[[64078,64078],"mapped",[31048]],[[64079,64079],"mapped",[31056]],[[64080,64080],"mapped",[31062]],[[64081,64081],"mapped",[31069]],[[64082,64082],"mapped",[31117]],[[64083,64083],"mapped",[31118]],[[64084,64084],"mapped",[31296]],[[64085,64085],"mapped",[31361]],[[64086,64086],"mapped",[31680]],[[64087,64087],"mapped",[32244]],[[64088,64088],"mapped",[32265]],[[64089,64089],"mapped",[32321]],[[64090,64090],"mapped",[32626]],[[64091,64091],"mapped",[32773]],[[64092,64092],"mapped",[33261]],[[64093,64094],"mapped",[33401]],[[64095,64095],"mapped",[33879]],[[64096,64096],"mapped",[35088]],[[64097,64097],"mapped",[35222]],[[64098,64098],"mapped",[35585]],[[64099,64099],"mapped",[35641]],[[64100,64100],"mapped",[36051]],[[64101,64101],"mapped",[36104]],[[64102,64102],"mapped",[36790]],[[64103,64103],"mapped",[36920]],[[64104,64104],"mapped",[38627]],[[64105,64105],"mapped",[38911]],[[64106,64106],"mapped",[38971]],[[64107,64107],"mapped",[24693]],[[64108,64108],"mapped",[148206]],[[64109,64109],"mapped",[33304]],[[64110,64111],"disallowed"],[[64112,64112],"mapped",[20006]],[[64113,64113],"mapped",[20917]],[[64114,64114],"mapped",[20840]],[[64115,64115],"mapped",[20352]],[[64116,64116],"mapped",[20805]],[[64117,64117],"mapped",[20864]],[[64118,64118],"mapped",[21191]],[[64119,64119],"mapped",[21242]],[[64120,64120],"mapped",[21917]],[[64121,64121],"mapped",[21845]],[[64122,64122],"mapped",[21913]],[[64123,64123],"mapped",[21986]],[[64124,64124],"mapped",[22618]],[[64125,64125],"mapped",[22707]],[[64126,64126],"mapped",[22852]],[[64127,64127],"mapped",[22868]],[[64128,64128],"mapped",[23138]],[[64129,64129],"mapped",[23336]],[[64130,64130],"mapped",[24274]],[[64131,64131],"mapped",[24281]],[[64132,64132],"mapped",[24425]],[[64133,64133],"mapped",[24493]],[[64134,64134],"mapped",[24792]],[[64135,64135],"mapped",[24910]],[[64136,64136],"mapped",[24840]],[[64137,64137],"mapped",[24974]],[[64138,64138],"mapped",[24928]],[[64139,64139],"mapped",[25074]],[[64140,64140],"mapped",[25140]],[[64141,64141],"mapped",[25540]],[[64142,64142],"mapped",[25628]],[[64143,64143],"mapped",[25682]],[[64144,64144],"mapped",[25942]],[[64145,64145],"mapped",[26228]],[[64146,64146],"mapped",[26391]],[[64147,64147],"mapped",[26395]],[[64148,64148],"mapped",[26454]],[[64149,64149],"mapped",[27513]],[[64150,64150],"mapped",[27578]],[[64151,64151],"mapped",[27969]],[[64152,64152],"mapped",[28379]],[[64153,64153],"mapped",[28363]],[[64154,64154],"mapped",[28450]],[[64155,64155],"mapped",[28702]],[[64156,64156],"mapped",[29038]],[[64157,64157],"mapped",[30631]],[[64158,64158],"mapped",[29237]],[[64159,64159],"mapped",[29359]],[[64160,64160],"mapped",[29482]],[[64161,64161],"mapped",[29809]],[[64162,64162],"mapped",[29958]],[[64163,64163],"mapped",[30011]],[[64164,64164],"mapped",[30237]],[[64165,64165],"mapped",[30239]],[[64166,64166],"mapped",[30410]],[[64167,64167],"mapped",[30427]],[[64168,64168],"mapped",[30452]],[[64169,64169],"mapped",[30538]],[[64170,64170],"mapped",[30528]],[[64171,64171],"mapped",[30924]],[[64172,64172],"mapped",[31409]],[[64173,64173],"mapped",[31680]],[[64174,64174],"mapped",[31867]],[[64175,64175],"mapped",[32091]],[[64176,64176],"mapped",[32244]],[[64177,64177],"mapped",[32574]],[[64178,64178],"mapped",[32773]],[[64179,64179],"mapped",[33618]],[[64180,64180],"mapped",[33775]],[[64181,64181],"mapped",[34681]],[[64182,64182],"mapped",[35137]],[[64183,64183],"mapped",[35206]],[[64184,64184],"mapped",[35222]],[[64185,64185],"mapped",[35519]],[[64186,64186],"mapped",[35576]],[[64187,64187],"mapped",[35531]],[[64188,64188],"mapped",[35585]],[[64189,64189],"mapped",[35582]],[[64190,64190],"mapped",[35565]],[[64191,64191],"mapped",[35641]],[[64192,64192],"mapped",[35722]],[[64193,64193],"mapped",[36104]],[[64194,64194],"mapped",[36664]],[[64195,64195],"mapped",[36978]],[[64196,64196],"mapped",[37273]],[[64197,64197],"mapped",[37494]],[[64198,64198],"mapped",[38524]],[[64199,64199],"mapped",[38627]],[[64200,64200],"mapped",[38742]],[[64201,64201],"mapped",[38875]],[[64202,64202],"mapped",[38911]],[[64203,64203],"mapped",[38923]],[[64204,64204],"mapped",[38971]],[[64205,64205],"mapped",[39698]],[[64206,64206],"mapped",[40860]],[[64207,64207],"mapped",[141386]],[[64208,64208],"mapped",[141380]],[[64209,64209],"mapped",[144341]],[[64210,64210],"mapped",[15261]],[[64211,64211],"mapped",[16408]],[[64212,64212],"mapped",[16441]],[[64213,64213],"mapped",[152137]],[[64214,64214],"mapped",[154832]],[[64215,64215],"mapped",[163539]],[[64216,64216],"mapped",[40771]],[[64217,64217],"mapped",[40846]],[[64218,64255],"disallowed"],[[64256,64256],"mapped",[102,102]],[[64257,64257],"mapped",[102,105]],[[64258,64258],"mapped",[102,108]],[[64259,64259],"mapped",[102,102,105]],[[64260,64260],"mapped",[102,102,108]],[[64261,64262],"mapped",[115,116]],[[64263,64274],"disallowed"],[[64275,64275],"mapped",[1396,1398]],[[64276,64276],"mapped",[1396,1381]],[[64277,64277],"mapped",[1396,1387]],[[64278,64278],"mapped",[1406,1398]],[[64279,64279],"mapped",[1396,1389]],[[64280,64284],"disallowed"],[[64285,64285],"mapped",[1497,1460]],[[64286,64286],"valid"],[[64287,64287],"mapped",[1522,1463]],[[64288,64288],"mapped",[1506]],[[64289,64289],"mapped",[1488]],[[64290,64290],"mapped",[1491]],[[64291,64291],"mapped",[1492]],[[64292,64292],"mapped",[1499]],[[64293,64293],"mapped",[1500]],[[64294,64294],"mapped",[1501]],[[64295,64295],"mapped",[1512]],[[64296,64296],"mapped",[1514]],[[64297,64297],"disallowed_STD3_mapped",[43]],[[64298,64298],"mapped",[1513,1473]],[[64299,64299],"mapped",[1513,1474]],[[64300,64300],"mapped",[1513,1468,1473]],[[64301,64301],"mapped",[1513,1468,1474]],[[64302,64302],"mapped",[1488,1463]],[[64303,64303],"mapped",[1488,1464]],[[64304,64304],"mapped",[1488,1468]],[[64305,64305],"mapped",[1489,1468]],[[64306,64306],"mapped",[1490,1468]],[[64307,64307],"mapped",[1491,1468]],[[64308,64308],"mapped",[1492,1468]],[[64309,64309],"mapped",[1493,1468]],[[64310,64310],"mapped",[1494,1468]],[[64311,64311],"disallowed"],[[64312,64312],"mapped",[1496,1468]],[[64313,64313],"mapped",[1497,1468]],[[64314,64314],"mapped",[1498,1468]],[[64315,64315],"mapped",[1499,1468]],[[64316,64316],"mapped",[1500,1468]],[[64317,64317],"disallowed"],[[64318,64318],"mapped",[1502,1468]],[[64319,64319],"disallowed"],[[64320,64320],"mapped",[1504,1468]],[[64321,64321],"mapped",[1505,1468]],[[64322,64322],"disallowed"],[[64323,64323],"mapped",[1507,1468]],[[64324,64324],"mapped",[1508,1468]],[[64325,64325],"disallowed"],[[64326,64326],"mapped",[1510,1468]],[[64327,64327],"mapped",[1511,1468]],[[64328,64328],"mapped",[1512,1468]],[[64329,64329],"mapped",[1513,1468]],[[64330,64330],"mapped",[1514,1468]],[[64331,64331],"mapped",[1493,1465]],[[64332,64332],"mapped",[1489,1471]],[[64333,64333],"mapped",[1499,1471]],[[64334,64334],"mapped",[1508,1471]],[[64335,64335],"mapped",[1488,1500]],[[64336,64337],"mapped",[1649]],[[64338,64341],"mapped",[1659]],[[64342,64345],"mapped",[1662]],[[64346,64349],"mapped",[1664]],[[64350,64353],"mapped",[1658]],[[64354,64357],"mapped",[1663]],[[64358,64361],"mapped",[1657]],[[64362,64365],"mapped",[1700]],[[64366,64369],"mapped",[1702]],[[64370,64373],"mapped",[1668]],[[64374,64377],"mapped",[1667]],[[64378,64381],"mapped",[1670]],[[64382,64385],"mapped",[1671]],[[64386,64387],"mapped",[1677]],[[64388,64389],"mapped",[1676]],[[64390,64391],"mapped",[1678]],[[64392,64393],"mapped",[1672]],[[64394,64395],"mapped",[1688]],[[64396,64397],"mapped",[1681]],[[64398,64401],"mapped",[1705]],[[64402,64405],"mapped",[1711]],[[64406,64409],"mapped",[1715]],[[64410,64413],"mapped",[1713]],[[64414,64415],"mapped",[1722]],[[64416,64419],"mapped",[1723]],[[64420,64421],"mapped",[1728]],[[64422,64425],"mapped",[1729]],[[64426,64429],"mapped",[1726]],[[64430,64431],"mapped",[1746]],[[64432,64433],"mapped",[1747]],[[64434,64449],"valid",[],"NV8"],[[64450,64466],"disallowed"],[[64467,64470],"mapped",[1709]],[[64471,64472],"mapped",[1735]],[[64473,64474],"mapped",[1734]],[[64475,64476],"mapped",[1736]],[[64477,64477],"mapped",[1735,1652]],[[64478,64479],"mapped",[1739]],[[64480,64481],"mapped",[1733]],[[64482,64483],"mapped",[1737]],[[64484,64487],"mapped",[1744]],[[64488,64489],"mapped",[1609]],[[64490,64491],"mapped",[1574,1575]],[[64492,64493],"mapped",[1574,1749]],[[64494,64495],"mapped",[1574,1608]],[[64496,64497],"mapped",[1574,1735]],[[64498,64499],"mapped",[1574,1734]],[[64500,64501],"mapped",[1574,1736]],[[64502,64504],"mapped",[1574,1744]],[[64505,64507],"mapped",[1574,1609]],[[64508,64511],"mapped",[1740]],[[64512,64512],"mapped",[1574,1580]],[[64513,64513],"mapped",[1574,1581]],[[64514,64514],"mapped",[1574,1605]],[[64515,64515],"mapped",[1574,1609]],[[64516,64516],"mapped",[1574,1610]],[[64517,64517],"mapped",[1576,1580]],[[64518,64518],"mapped",[1576,1581]],[[64519,64519],"mapped",[1576,1582]],[[64520,64520],"mapped",[1576,1605]],[[64521,64521],"mapped",[1576,1609]],[[64522,64522],"mapped",[1576,1610]],[[64523,64523],"mapped",[1578,1580]],[[64524,64524],"mapped",[1578,1581]],[[64525,64525],"mapped",[1578,1582]],[[64526,64526],"mapped",[1578,1605]],[[64527,64527],"mapped",[1578,1609]],[[64528,64528],"mapped",[1578,1610]],[[64529,64529],"mapped",[1579,1580]],[[64530,64530],"mapped",[1579,1605]],[[64531,64531],"mapped",[1579,1609]],[[64532,64532],"mapped",[1579,1610]],[[64533,64533],"mapped",[1580,1581]],[[64534,64534],"mapped",[1580,1605]],[[64535,64535],"mapped",[1581,1580]],[[64536,64536],"mapped",[1581,1605]],[[64537,64537],"mapped",[1582,1580]],[[64538,64538],"mapped",[1582,1581]],[[64539,64539],"mapped",[1582,1605]],[[64540,64540],"mapped",[1587,1580]],[[64541,64541],"mapped",[1587,1581]],[[64542,64542],"mapped",[1587,1582]],[[64543,64543],"mapped",[1587,1605]],[[64544,64544],"mapped",[1589,1581]],[[64545,64545],"mapped",[1589,1605]],[[64546,64546],"mapped",[1590,1580]],[[64547,64547],"mapped",[1590,1581]],[[64548,64548],"mapped",[1590,1582]],[[64549,64549],"mapped",[1590,1605]],[[64550,64550],"mapped",[1591,1581]],[[64551,64551],"mapped",[1591,1605]],[[64552,64552],"mapped",[1592,1605]],[[64553,64553],"mapped",[1593,1580]],[[64554,64554],"mapped",[1593,1605]],[[64555,64555],"mapped",[1594,1580]],[[64556,64556],"mapped",[1594,1605]],[[64557,64557],"mapped",[1601,1580]],[[64558,64558],"mapped",[1601,1581]],[[64559,64559],"mapped",[1601,1582]],[[64560,64560],"mapped",[1601,1605]],[[64561,64561],"mapped",[1601,1609]],[[64562,64562],"mapped",[1601,1610]],[[64563,64563],"mapped",[1602,1581]],[[64564,64564],"mapped",[1602,1605]],[[64565,64565],"mapped",[1602,1609]],[[64566,64566],"mapped",[1602,1610]],[[64567,64567],"mapped",[1603,1575]],[[64568,64568],"mapped",[1603,1580]],[[64569,64569],"mapped",[1603,1581]],[[64570,64570],"mapped",[1603,1582]],[[64571,64571],"mapped",[1603,1604]],[[64572,64572],"mapped",[1603,1605]],[[64573,64573],"mapped",[1603,1609]],[[64574,64574],"mapped",[1603,1610]],[[64575,64575],"mapped",[1604,1580]],[[64576,64576],"mapped",[1604,1581]],[[64577,64577],"mapped",[1604,1582]],[[64578,64578],"mapped",[1604,1605]],[[64579,64579],"mapped",[1604,1609]],[[64580,64580],"mapped",[1604,1610]],[[64581,64581],"mapped",[1605,1580]],[[64582,64582],"mapped",[1605,1581]],[[64583,64583],"mapped",[1605,1582]],[[64584,64584],"mapped",[1605,1605]],[[64585,64585],"mapped",[1605,1609]],[[64586,64586],"mapped",[1605,1610]],[[64587,64587],"mapped",[1606,1580]],[[64588,64588],"mapped",[1606,1581]],[[64589,64589],"mapped",[1606,1582]],[[64590,64590],"mapped",[1606,1605]],[[64591,64591],"mapped",[1606,1609]],[[64592,64592],"mapped",[1606,1610]],[[64593,64593],"mapped",[1607,1580]],[[64594,64594],"mapped",[1607,1605]],[[64595,64595],"mapped",[1607,1609]],[[64596,64596],"mapped",[1607,1610]],[[64597,64597],"mapped",[1610,1580]],[[64598,64598],"mapped",[1610,1581]],[[64599,64599],"mapped",[1610,1582]],[[64600,64600],"mapped",[1610,1605]],[[64601,64601],"mapped",[1610,1609]],[[64602,64602],"mapped",[1610,1610]],[[64603,64603],"mapped",[1584,1648]],[[64604,64604],"mapped",[1585,1648]],[[64605,64605],"mapped",[1609,1648]],[[64606,64606],"disallowed_STD3_mapped",[32,1612,1617]],[[64607,64607],"disallowed_STD3_mapped",[32,1613,1617]],[[64608,64608],"disallowed_STD3_mapped",[32,1614,1617]],[[64609,64609],"disallowed_STD3_mapped",[32,1615,1617]],[[64610,64610],"disallowed_STD3_mapped",[32,1616,1617]],[[64611,64611],"disallowed_STD3_mapped",[32,1617,1648]],[[64612,64612],"mapped",[1574,1585]],[[64613,64613],"mapped",[1574,1586]],[[64614,64614],"mapped",[1574,1605]],[[64615,64615],"mapped",[1574,1606]],[[64616,64616],"mapped",[1574,1609]],[[64617,64617],"mapped",[1574,1610]],[[64618,64618],"mapped",[1576,1585]],[[64619,64619],"mapped",[1576,1586]],[[64620,64620],"mapped",[1576,1605]],[[64621,64621],"mapped",[1576,1606]],[[64622,64622],"mapped",[1576,1609]],[[64623,64623],"mapped",[1576,1610]],[[64624,64624],"mapped",[1578,1585]],[[64625,64625],"mapped",[1578,1586]],[[64626,64626],"mapped",[1578,1605]],[[64627,64627],"mapped",[1578,1606]],[[64628,64628],"mapped",[1578,1609]],[[64629,64629],"mapped",[1578,1610]],[[64630,64630],"mapped",[1579,1585]],[[64631,64631],"mapped",[1579,1586]],[[64632,64632],"mapped",[1579,1605]],[[64633,64633],"mapped",[1579,1606]],[[64634,64634],"mapped",[1579,1609]],[[64635,64635],"mapped",[1579,1610]],[[64636,64636],"mapped",[1601,1609]],[[64637,64637],"mapped",[1601,1610]],[[64638,64638],"mapped",[1602,1609]],[[64639,64639],"mapped",[1602,1610]],[[64640,64640],"mapped",[1603,1575]],[[64641,64641],"mapped",[1603,1604]],[[64642,64642],"mapped",[1603,1605]],[[64643,64643],"mapped",[1603,1609]],[[64644,64644],"mapped",[1603,1610]],[[64645,64645],"mapped",[1604,1605]],[[64646,64646],"mapped",[1604,1609]],[[64647,64647],"mapped",[1604,1610]],[[64648,64648],"mapped",[1605,1575]],[[64649,64649],"mapped",[1605,1605]],[[64650,64650],"mapped",[1606,1585]],[[64651,64651],"mapped",[1606,1586]],[[64652,64652],"mapped",[1606,1605]],[[64653,64653],"mapped",[1606,1606]],[[64654,64654],"mapped",[1606,1609]],[[64655,64655],"mapped",[1606,1610]],[[64656,64656],"mapped",[1609,1648]],[[64657,64657],"mapped",[1610,1585]],[[64658,64658],"mapped",[1610,1586]],[[64659,64659],"mapped",[1610,1605]],[[64660,64660],"mapped",[1610,1606]],[[64661,64661],"mapped",[1610,1609]],[[64662,64662],"mapped",[1610,1610]],[[64663,64663],"mapped",[1574,1580]],[[64664,64664],"mapped",[1574,1581]],[[64665,64665],"mapped",[1574,1582]],[[64666,64666],"mapped",[1574,1605]],[[64667,64667],"mapped",[1574,1607]],[[64668,64668],"mapped",[1576,1580]],[[64669,64669],"mapped",[1576,1581]],[[64670,64670],"mapped",[1576,1582]],[[64671,64671],"mapped",[1576,1605]],[[64672,64672],"mapped",[1576,1607]],[[64673,64673],"mapped",[1578,1580]],[[64674,64674],"mapped",[1578,1581]],[[64675,64675],"mapped",[1578,1582]],[[64676,64676],"mapped",[1578,1605]],[[64677,64677],"mapped",[1578,1607]],[[64678,64678],"mapped",[1579,1605]],[[64679,64679],"mapped",[1580,1581]],[[64680,64680],"mapped",[1580,1605]],[[64681,64681],"mapped",[1581,1580]],[[64682,64682],"mapped",[1581,1605]],[[64683,64683],"mapped",[1582,1580]],[[64684,64684],"mapped",[1582,1605]],[[64685,64685],"mapped",[1587,1580]],[[64686,64686],"mapped",[1587,1581]],[[64687,64687],"mapped",[1587,1582]],[[64688,64688],"mapped",[1587,1605]],[[64689,64689],"mapped",[1589,1581]],[[64690,64690],"mapped",[1589,1582]],[[64691,64691],"mapped",[1589,1605]],[[64692,64692],"mapped",[1590,1580]],[[64693,64693],"mapped",[1590,1581]],[[64694,64694],"mapped",[1590,1582]],[[64695,64695],"mapped",[1590,1605]],[[64696,64696],"mapped",[1591,1581]],[[64697,64697],"mapped",[1592,1605]],[[64698,64698],"mapped",[1593,1580]],[[64699,64699],"mapped",[1593,1605]],[[64700,64700],"mapped",[1594,1580]],[[64701,64701],"mapped",[1594,1605]],[[64702,64702],"mapped",[1601,1580]],[[64703,64703],"mapped",[1601,1581]],[[64704,64704],"mapped",[1601,1582]],[[64705,64705],"mapped",[1601,1605]],[[64706,64706],"mapped",[1602,1581]],[[64707,64707],"mapped",[1602,1605]],[[64708,64708],"mapped",[1603,1580]],[[64709,64709],"mapped",[1603,1581]],[[64710,64710],"mapped",[1603,1582]],[[64711,64711],"mapped",[1603,1604]],[[64712,64712],"mapped",[1603,1605]],[[64713,64713],"mapped",[1604,1580]],[[64714,64714],"mapped",[1604,1581]],[[64715,64715],"mapped",[1604,1582]],[[64716,64716],"mapped",[1604,1605]],[[64717,64717],"mapped",[1604,1607]],[[64718,64718],"mapped",[1605,1580]],[[64719,64719],"mapped",[1605,1581]],[[64720,64720],"mapped",[1605,1582]],[[64721,64721],"mapped",[1605,1605]],[[64722,64722],"mapped",[1606,1580]],[[64723,64723],"mapped",[1606,1581]],[[64724,64724],"mapped",[1606,1582]],[[64725,64725],"mapped",[1606,1605]],[[64726,64726],"mapped",[1606,1607]],[[64727,64727],"mapped",[1607,1580]],[[64728,64728],"mapped",[1607,1605]],[[64729,64729],"mapped",[1607,1648]],[[64730,64730],"mapped",[1610,1580]],[[64731,64731],"mapped",[1610,1581]],[[64732,64732],"mapped",[1610,1582]],[[64733,64733],"mapped",[1610,1605]],[[64734,64734],"mapped",[1610,1607]],[[64735,64735],"mapped",[1574,1605]],[[64736,64736],"mapped",[1574,1607]],[[64737,64737],"mapped",[1576,1605]],[[64738,64738],"mapped",[1576,1607]],[[64739,64739],"mapped",[1578,1605]],[[64740,64740],"mapped",[1578,1607]],[[64741,64741],"mapped",[1579,1605]],[[64742,64742],"mapped",[1579,1607]],[[64743,64743],"mapped",[1587,1605]],[[64744,64744],"mapped",[1587,1607]],[[64745,64745],"mapped",[1588,1605]],[[64746,64746],"mapped",[1588,1607]],[[64747,64747],"mapped",[1603,1604]],[[64748,64748],"mapped",[1603,1605]],[[64749,64749],"mapped",[1604,1605]],[[64750,64750],"mapped",[1606,1605]],[[64751,64751],"mapped",[1606,1607]],[[64752,64752],"mapped",[1610,1605]],[[64753,64753],"mapped",[1610,1607]],[[64754,64754],"mapped",[1600,1614,1617]],[[64755,64755],"mapped",[1600,1615,1617]],[[64756,64756],"mapped",[1600,1616,1617]],[[64757,64757],"mapped",[1591,1609]],[[64758,64758],"mapped",[1591,1610]],[[64759,64759],"mapped",[1593,1609]],[[64760,64760],"mapped",[1593,1610]],[[64761,64761],"mapped",[1594,1609]],[[64762,64762],"mapped",[1594,1610]],[[64763,64763],"mapped",[1587,1609]],[[64764,64764],"mapped",[1587,1610]],[[64765,64765],"mapped",[1588,1609]],[[64766,64766],"mapped",[1588,1610]],[[64767,64767],"mapped",[1581,1609]],[[64768,64768],"mapped",[1581,1610]],[[64769,64769],"mapped",[1580,1609]],[[64770,64770],"mapped",[1580,1610]],[[64771,64771],"mapped",[1582,1609]],[[64772,64772],"mapped",[1582,1610]],[[64773,64773],"mapped",[1589,1609]],[[64774,64774],"mapped",[1589,1610]],[[64775,64775],"mapped",[1590,1609]],[[64776,64776],"mapped",[1590,1610]],[[64777,64777],"mapped",[1588,1580]],[[64778,64778],"mapped",[1588,1581]],[[64779,64779],"mapped",[1588,1582]],[[64780,64780],"mapped",[1588,1605]],[[64781,64781],"mapped",[1588,1585]],[[64782,64782],"mapped",[1587,1585]],[[64783,64783],"mapped",[1589,1585]],[[64784,64784],"mapped",[1590,1585]],[[64785,64785],"mapped",[1591,1609]],[[64786,64786],"mapped",[1591,1610]],[[64787,64787],"mapped",[1593,1609]],[[64788,64788],"mapped",[1593,1610]],[[64789,64789],"mapped",[1594,1609]],[[64790,64790],"mapped",[1594,1610]],[[64791,64791],"mapped",[1587,1609]],[[64792,64792],"mapped",[1587,1610]],[[64793,64793],"mapped",[1588,1609]],[[64794,64794],"mapped",[1588,1610]],[[64795,64795],"mapped",[1581,1609]],[[64796,64796],"mapped",[1581,1610]],[[64797,64797],"mapped",[1580,1609]],[[64798,64798],"mapped",[1580,1610]],[[64799,64799],"mapped",[1582,1609]],[[64800,64800],"mapped",[1582,1610]],[[64801,64801],"mapped",[1589,1609]],[[64802,64802],"mapped",[1589,1610]],[[64803,64803],"mapped",[1590,1609]],[[64804,64804],"mapped",[1590,1610]],[[64805,64805],"mapped",[1588,1580]],[[64806,64806],"mapped",[1588,1581]],[[64807,64807],"mapped",[1588,1582]],[[64808,64808],"mapped",[1588,1605]],[[64809,64809],"mapped",[1588,1585]],[[64810,64810],"mapped",[1587,1585]],[[64811,64811],"mapped",[1589,1585]],[[64812,64812],"mapped",[1590,1585]],[[64813,64813],"mapped",[1588,1580]],[[64814,64814],"mapped",[1588,1581]],[[64815,64815],"mapped",[1588,1582]],[[64816,64816],"mapped",[1588,1605]],[[64817,64817],"mapped",[1587,1607]],[[64818,64818],"mapped",[1588,1607]],[[64819,64819],"mapped",[1591,1605]],[[64820,64820],"mapped",[1587,1580]],[[64821,64821],"mapped",[1587,1581]],[[64822,64822],"mapped",[1587,1582]],[[64823,64823],"mapped",[1588,1580]],[[64824,64824],"mapped",[1588,1581]],[[64825,64825],"mapped",[1588,1582]],[[64826,64826],"mapped",[1591,1605]],[[64827,64827],"mapped",[1592,1605]],[[64828,64829],"mapped",[1575,1611]],[[64830,64831],"valid",[],"NV8"],[[64832,64847],"disallowed"],[[64848,64848],"mapped",[1578,1580,1605]],[[64849,64850],"mapped",[1578,1581,1580]],[[64851,64851],"mapped",[1578,1581,1605]],[[64852,64852],"mapped",[1578,1582,1605]],[[64853,64853],"mapped",[1578,1605,1580]],[[64854,64854],"mapped",[1578,1605,1581]],[[64855,64855],"mapped",[1578,1605,1582]],[[64856,64857],"mapped",[1580,1605,1581]],[[64858,64858],"mapped",[1581,1605,1610]],[[64859,64859],"mapped",[1581,1605,1609]],[[64860,64860],"mapped",[1587,1581,1580]],[[64861,64861],"mapped",[1587,1580,1581]],[[64862,64862],"mapped",[1587,1580,1609]],[[64863,64864],"mapped",[1587,1605,1581]],[[64865,64865],"mapped",[1587,1605,1580]],[[64866,64867],"mapped",[1587,1605,1605]],[[64868,64869],"mapped",[1589,1581,1581]],[[64870,64870],"mapped",[1589,1605,1605]],[[64871,64872],"mapped",[1588,1581,1605]],[[64873,64873],"mapped",[1588,1580,1610]],[[64874,64875],"mapped",[1588,1605,1582]],[[64876,64877],"mapped",[1588,1605,1605]],[[64878,64878],"mapped",[1590,1581,1609]],[[64879,64880],"mapped",[1590,1582,1605]],[[64881,64882],"mapped",[1591,1605,1581]],[[64883,64883],"mapped",[1591,1605,1605]],[[64884,64884],"mapped",[1591,1605,1610]],[[64885,64885],"mapped",[1593,1580,1605]],[[64886,64887],"mapped",[1593,1605,1605]],[[64888,64888],"mapped",[1593,1605,1609]],[[64889,64889],"mapped",[1594,1605,1605]],[[64890,64890],"mapped",[1594,1605,1610]],[[64891,64891],"mapped",[1594,1605,1609]],[[64892,64893],"mapped",[1601,1582,1605]],[[64894,64894],"mapped",[1602,1605,1581]],[[64895,64895],"mapped",[1602,1605,1605]],[[64896,64896],"mapped",[1604,1581,1605]],[[64897,64897],"mapped",[1604,1581,1610]],[[64898,64898],"mapped",[1604,1581,1609]],[[64899,64900],"mapped",[1604,1580,1580]],[[64901,64902],"mapped",[1604,1582,1605]],[[64903,64904],"mapped",[1604,1605,1581]],[[64905,64905],"mapped",[1605,1581,1580]],[[64906,64906],"mapped",[1605,1581,1605]],[[64907,64907],"mapped",[1605,1581,1610]],[[64908,64908],"mapped",[1605,1580,1581]],[[64909,64909],"mapped",[1605,1580,1605]],[[64910,64910],"mapped",[1605,1582,1580]],[[64911,64911],"mapped",[1605,1582,1605]],[[64912,64913],"disallowed"],[[64914,64914],"mapped",[1605,1580,1582]],[[64915,64915],"mapped",[1607,1605,1580]],[[64916,64916],"mapped",[1607,1605,1605]],[[64917,64917],"mapped",[1606,1581,1605]],[[64918,64918],"mapped",[1606,1581,1609]],[[64919,64920],"mapped",[1606,1580,1605]],[[64921,64921],"mapped",[1606,1580,1609]],[[64922,64922],"mapped",[1606,1605,1610]],[[64923,64923],"mapped",[1606,1605,1609]],[[64924,64925],"mapped",[1610,1605,1605]],[[64926,64926],"mapped",[1576,1582,1610]],[[64927,64927],"mapped",[1578,1580,1610]],[[64928,64928],"mapped",[1578,1580,1609]],[[64929,64929],"mapped",[1578,1582,1610]],[[64930,64930],"mapped",[1578,1582,1609]],[[64931,64931],"mapped",[1578,1605,1610]],[[64932,64932],"mapped",[1578,1605,1609]],[[64933,64933],"mapped",[1580,1605,1610]],[[64934,64934],"mapped",[1580,1581,1609]],[[64935,64935],"mapped",[1580,1605,1609]],[[64936,64936],"mapped",[1587,1582,1609]],[[64937,64937],"mapped",[1589,1581,1610]],[[64938,64938],"mapped",[1588,1581,1610]],[[64939,64939],"mapped",[1590,1581,1610]],[[64940,64940],"mapped",[1604,1580,1610]],[[64941,64941],"mapped",[1604,1605,1610]],[[64942,64942],"mapped",[1610,1581,1610]],[[64943,64943],"mapped",[1610,1580,1610]],[[64944,64944],"mapped",[1610,1605,1610]],[[64945,64945],"mapped",[1605,1605,1610]],[[64946,64946],"mapped",[1602,1605,1610]],[[64947,64947],"mapped",[1606,1581,1610]],[[64948,64948],"mapped",[1602,1605,1581]],[[64949,64949],"mapped",[1604,1581,1605]],[[64950,64950],"mapped",[1593,1605,1610]],[[64951,64951],"mapped",[1603,1605,1610]],[[64952,64952],"mapped",[1606,1580,1581]],[[64953,64953],"mapped",[1605,1582,1610]],[[64954,64954],"mapped",[1604,1580,1605]],[[64955,64955],"mapped",[1603,1605,1605]],[[64956,64956],"mapped",[1604,1580,1605]],[[64957,64957],"mapped",[1606,1580,1581]],[[64958,64958],"mapped",[1580,1581,1610]],[[64959,64959],"mapped",[1581,1580,1610]],[[64960,64960],"mapped",[1605,1580,1610]],[[64961,64961],"mapped",[1601,1605,1610]],[[64962,64962],"mapped",[1576,1581,1610]],[[64963,64963],"mapped",[1603,1605,1605]],[[64964,64964],"mapped",[1593,1580,1605]],[[64965,64965],"mapped",[1589,1605,1605]],[[64966,64966],"mapped",[1587,1582,1610]],[[64967,64967],"mapped",[1606,1580,1610]],[[64968,64975],"disallowed"],[[64976,65007],"disallowed"],[[65008,65008],"mapped",[1589,1604,1746]],[[65009,65009],"mapped",[1602,1604,1746]],[[65010,65010],"mapped",[1575,1604,1604,1607]],[[65011,65011],"mapped",[1575,1603,1576,1585]],[[65012,65012],"mapped",[1605,1581,1605,1583]],[[65013,65013],"mapped",[1589,1604,1593,1605]],[[65014,65014],"mapped",[1585,1587,1608,1604]],[[65015,65015],"mapped",[1593,1604,1610,1607]],[[65016,65016],"mapped",[1608,1587,1604,1605]],[[65017,65017],"mapped",[1589,1604,1609]],[[65018,65018],"disallowed_STD3_mapped",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],"disallowed_STD3_mapped",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],"mapped",[1585,1740,1575,1604]],[[65021,65021],"valid",[],"NV8"],[[65022,65023],"disallowed"],[[65024,65039],"ignored"],[[65040,65040],"disallowed_STD3_mapped",[44]],[[65041,65041],"mapped",[12289]],[[65042,65042],"disallowed"],[[65043,65043],"disallowed_STD3_mapped",[58]],[[65044,65044],"disallowed_STD3_mapped",[59]],[[65045,65045],"disallowed_STD3_mapped",[33]],[[65046,65046],"disallowed_STD3_mapped",[63]],[[65047,65047],"mapped",[12310]],[[65048,65048],"mapped",[12311]],[[65049,65049],"disallowed"],[[65050,65055],"disallowed"],[[65056,65059],"valid"],[[65060,65062],"valid"],[[65063,65069],"valid"],[[65070,65071],"valid"],[[65072,65072],"disallowed"],[[65073,65073],"mapped",[8212]],[[65074,65074],"mapped",[8211]],[[65075,65076],"disallowed_STD3_mapped",[95]],[[65077,65077],"disallowed_STD3_mapped",[40]],[[65078,65078],"disallowed_STD3_mapped",[41]],[[65079,65079],"disallowed_STD3_mapped",[123]],[[65080,65080],"disallowed_STD3_mapped",[125]],[[65081,65081],"mapped",[12308]],[[65082,65082],"mapped",[12309]],[[65083,65083],"mapped",[12304]],[[65084,65084],"mapped",[12305]],[[65085,65085],"mapped",[12298]],[[65086,65086],"mapped",[12299]],[[65087,65087],"mapped",[12296]],[[65088,65088],"mapped",[12297]],[[65089,65089],"mapped",[12300]],[[65090,65090],"mapped",[12301]],[[65091,65091],"mapped",[12302]],[[65092,65092],"mapped",[12303]],[[65093,65094],"valid",[],"NV8"],[[65095,65095],"disallowed_STD3_mapped",[91]],[[65096,65096],"disallowed_STD3_mapped",[93]],[[65097,65100],"disallowed_STD3_mapped",[32,773]],[[65101,65103],"disallowed_STD3_mapped",[95]],[[65104,65104],"disallowed_STD3_mapped",[44]],[[65105,65105],"mapped",[12289]],[[65106,65106],"disallowed"],[[65107,65107],"disallowed"],[[65108,65108],"disallowed_STD3_mapped",[59]],[[65109,65109],"disallowed_STD3_mapped",[58]],[[65110,65110],"disallowed_STD3_mapped",[63]],[[65111,65111],"disallowed_STD3_mapped",[33]],[[65112,65112],"mapped",[8212]],[[65113,65113],"disallowed_STD3_mapped",[40]],[[65114,65114],"disallowed_STD3_mapped",[41]],[[65115,65115],"disallowed_STD3_mapped",[123]],[[65116,65116],"disallowed_STD3_mapped",[125]],[[65117,65117],"mapped",[12308]],[[65118,65118],"mapped",[12309]],[[65119,65119],"disallowed_STD3_mapped",[35]],[[65120,65120],"disallowed_STD3_mapped",[38]],[[65121,65121],"disallowed_STD3_mapped",[42]],[[65122,65122],"disallowed_STD3_mapped",[43]],[[65123,65123],"mapped",[45]],[[65124,65124],"disallowed_STD3_mapped",[60]],[[65125,65125],"disallowed_STD3_mapped",[62]],[[65126,65126],"disallowed_STD3_mapped",[61]],[[65127,65127],"disallowed"],[[65128,65128],"disallowed_STD3_mapped",[92]],[[65129,65129],"disallowed_STD3_mapped",[36]],[[65130,65130],"disallowed_STD3_mapped",[37]],[[65131,65131],"disallowed_STD3_mapped",[64]],[[65132,65135],"disallowed"],[[65136,65136],"disallowed_STD3_mapped",[32,1611]],[[65137,65137],"mapped",[1600,1611]],[[65138,65138],"disallowed_STD3_mapped",[32,1612]],[[65139,65139],"valid"],[[65140,65140],"disallowed_STD3_mapped",[32,1613]],[[65141,65141],"disallowed"],[[65142,65142],"disallowed_STD3_mapped",[32,1614]],[[65143,65143],"mapped",[1600,1614]],[[65144,65144],"disallowed_STD3_mapped",[32,1615]],[[65145,65145],"mapped",[1600,1615]],[[65146,65146],"disallowed_STD3_mapped",[32,1616]],[[65147,65147],"mapped",[1600,1616]],[[65148,65148],"disallowed_STD3_mapped",[32,1617]],[[65149,65149],"mapped",[1600,1617]],[[65150,65150],"disallowed_STD3_mapped",[32,1618]],[[65151,65151],"mapped",[1600,1618]],[[65152,65152],"mapped",[1569]],[[65153,65154],"mapped",[1570]],[[65155,65156],"mapped",[1571]],[[65157,65158],"mapped",[1572]],[[65159,65160],"mapped",[1573]],[[65161,65164],"mapped",[1574]],[[65165,65166],"mapped",[1575]],[[65167,65170],"mapped",[1576]],[[65171,65172],"mapped",[1577]],[[65173,65176],"mapped",[1578]],[[65177,65180],"mapped",[1579]],[[65181,65184],"mapped",[1580]],[[65185,65188],"mapped",[1581]],[[65189,65192],"mapped",[1582]],[[65193,65194],"mapped",[1583]],[[65195,65196],"mapped",[1584]],[[65197,65198],"mapped",[1585]],[[65199,65200],"mapped",[1586]],[[65201,65204],"mapped",[1587]],[[65205,65208],"mapped",[1588]],[[65209,65212],"mapped",[1589]],[[65213,65216],"mapped",[1590]],[[65217,65220],"mapped",[1591]],[[65221,65224],"mapped",[1592]],[[65225,65228],"mapped",[1593]],[[65229,65232],"mapped",[1594]],[[65233,65236],"mapped",[1601]],[[65237,65240],"mapped",[1602]],[[65241,65244],"mapped",[1603]],[[65245,65248],"mapped",[1604]],[[65249,65252],"mapped",[1605]],[[65253,65256],"mapped",[1606]],[[65257,65260],"mapped",[1607]],[[65261,65262],"mapped",[1608]],[[65263,65264],"mapped",[1609]],[[65265,65268],"mapped",[1610]],[[65269,65270],"mapped",[1604,1570]],[[65271,65272],"mapped",[1604,1571]],[[65273,65274],"mapped",[1604,1573]],[[65275,65276],"mapped",[1604,1575]],[[65277,65278],"disallowed"],[[65279,65279],"ignored"],[[65280,65280],"disallowed"],[[65281,65281],"disallowed_STD3_mapped",[33]],[[65282,65282],"disallowed_STD3_mapped",[34]],[[65283,65283],"disallowed_STD3_mapped",[35]],[[65284,65284],"disallowed_STD3_mapped",[36]],[[65285,65285],"disallowed_STD3_mapped",[37]],[[65286,65286],"disallowed_STD3_mapped",[38]],[[65287,65287],"disallowed_STD3_mapped",[39]],[[65288,65288],"disallowed_STD3_mapped",[40]],[[65289,65289],"disallowed_STD3_mapped",[41]],[[65290,65290],"disallowed_STD3_mapped",[42]],[[65291,65291],"disallowed_STD3_mapped",[43]],[[65292,65292],"disallowed_STD3_mapped",[44]],[[65293,65293],"mapped",[45]],[[65294,65294],"mapped",[46]],[[65295,65295],"disallowed_STD3_mapped",[47]],[[65296,65296],"mapped",[48]],[[65297,65297],"mapped",[49]],[[65298,65298],"mapped",[50]],[[65299,65299],"mapped",[51]],[[65300,65300],"mapped",[52]],[[65301,65301],"mapped",[53]],[[65302,65302],"mapped",[54]],[[65303,65303],"mapped",[55]],[[65304,65304],"mapped",[56]],[[65305,65305],"mapped",[57]],[[65306,65306],"disallowed_STD3_mapped",[58]],[[65307,65307],"disallowed_STD3_mapped",[59]],[[65308,65308],"disallowed_STD3_mapped",[60]],[[65309,65309],"disallowed_STD3_mapped",[61]],[[65310,65310],"disallowed_STD3_mapped",[62]],[[65311,65311],"disallowed_STD3_mapped",[63]],[[65312,65312],"disallowed_STD3_mapped",[64]],[[65313,65313],"mapped",[97]],[[65314,65314],"mapped",[98]],[[65315,65315],"mapped",[99]],[[65316,65316],"mapped",[100]],[[65317,65317],"mapped",[101]],[[65318,65318],"mapped",[102]],[[65319,65319],"mapped",[103]],[[65320,65320],"mapped",[104]],[[65321,65321],"mapped",[105]],[[65322,65322],"mapped",[106]],[[65323,65323],"mapped",[107]],[[65324,65324],"mapped",[108]],[[65325,65325],"mapped",[109]],[[65326,65326],"mapped",[110]],[[65327,65327],"mapped",[111]],[[65328,65328],"mapped",[112]],[[65329,65329],"mapped",[113]],[[65330,65330],"mapped",[114]],[[65331,65331],"mapped",[115]],[[65332,65332],"mapped",[116]],[[65333,65333],"mapped",[117]],[[65334,65334],"mapped",[118]],[[65335,65335],"mapped",[119]],[[65336,65336],"mapped",[120]],[[65337,65337],"mapped",[121]],[[65338,65338],"mapped",[122]],[[65339,65339],"disallowed_STD3_mapped",[91]],[[65340,65340],"disallowed_STD3_mapped",[92]],[[65341,65341],"disallowed_STD3_mapped",[93]],[[65342,65342],"disallowed_STD3_mapped",[94]],[[65343,65343],"disallowed_STD3_mapped",[95]],[[65344,65344],"disallowed_STD3_mapped",[96]],[[65345,65345],"mapped",[97]],[[65346,65346],"mapped",[98]],[[65347,65347],"mapped",[99]],[[65348,65348],"mapped",[100]],[[65349,65349],"mapped",[101]],[[65350,65350],"mapped",[102]],[[65351,65351],"mapped",[103]],[[65352,65352],"mapped",[104]],[[65353,65353],"mapped",[105]],[[65354,65354],"mapped",[106]],[[65355,65355],"mapped",[107]],[[65356,65356],"mapped",[108]],[[65357,65357],"mapped",[109]],[[65358,65358],"mapped",[110]],[[65359,65359],"mapped",[111]],[[65360,65360],"mapped",[112]],[[65361,65361],"mapped",[113]],[[65362,65362],"mapped",[114]],[[65363,65363],"mapped",[115]],[[65364,65364],"mapped",[116]],[[65365,65365],"mapped",[117]],[[65366,65366],"mapped",[118]],[[65367,65367],"mapped",[119]],[[65368,65368],"mapped",[120]],[[65369,65369],"mapped",[121]],[[65370,65370],"mapped",[122]],[[65371,65371],"disallowed_STD3_mapped",[123]],[[65372,65372],"disallowed_STD3_mapped",[124]],[[65373,65373],"disallowed_STD3_mapped",[125]],[[65374,65374],"disallowed_STD3_mapped",[126]],[[65375,65375],"mapped",[10629]],[[65376,65376],"mapped",[10630]],[[65377,65377],"mapped",[46]],[[65378,65378],"mapped",[12300]],[[65379,65379],"mapped",[12301]],[[65380,65380],"mapped",[12289]],[[65381,65381],"mapped",[12539]],[[65382,65382],"mapped",[12530]],[[65383,65383],"mapped",[12449]],[[65384,65384],"mapped",[12451]],[[65385,65385],"mapped",[12453]],[[65386,65386],"mapped",[12455]],[[65387,65387],"mapped",[12457]],[[65388,65388],"mapped",[12515]],[[65389,65389],"mapped",[12517]],[[65390,65390],"mapped",[12519]],[[65391,65391],"mapped",[12483]],[[65392,65392],"mapped",[12540]],[[65393,65393],"mapped",[12450]],[[65394,65394],"mapped",[12452]],[[65395,65395],"mapped",[12454]],[[65396,65396],"mapped",[12456]],[[65397,65397],"mapped",[12458]],[[65398,65398],"mapped",[12459]],[[65399,65399],"mapped",[12461]],[[65400,65400],"mapped",[12463]],[[65401,65401],"mapped",[12465]],[[65402,65402],"mapped",[12467]],[[65403,65403],"mapped",[12469]],[[65404,65404],"mapped",[12471]],[[65405,65405],"mapped",[12473]],[[65406,65406],"mapped",[12475]],[[65407,65407],"mapped",[12477]],[[65408,65408],"mapped",[12479]],[[65409,65409],"mapped",[12481]],[[65410,65410],"mapped",[12484]],[[65411,65411],"mapped",[12486]],[[65412,65412],"mapped",[12488]],[[65413,65413],"mapped",[12490]],[[65414,65414],"mapped",[12491]],[[65415,65415],"mapped",[12492]],[[65416,65416],"mapped",[12493]],[[65417,65417],"mapped",[12494]],[[65418,65418],"mapped",[12495]],[[65419,65419],"mapped",[12498]],[[65420,65420],"mapped",[12501]],[[65421,65421],"mapped",[12504]],[[65422,65422],"mapped",[12507]],[[65423,65423],"mapped",[12510]],[[65424,65424],"mapped",[12511]],[[65425,65425],"mapped",[12512]],[[65426,65426],"mapped",[12513]],[[65427,65427],"mapped",[12514]],[[65428,65428],"mapped",[12516]],[[65429,65429],"mapped",[12518]],[[65430,65430],"mapped",[12520]],[[65431,65431],"mapped",[12521]],[[65432,65432],"mapped",[12522]],[[65433,65433],"mapped",[12523]],[[65434,65434],"mapped",[12524]],[[65435,65435],"mapped",[12525]],[[65436,65436],"mapped",[12527]],[[65437,65437],"mapped",[12531]],[[65438,65438],"mapped",[12441]],[[65439,65439],"mapped",[12442]],[[65440,65440],"disallowed"],[[65441,65441],"mapped",[4352]],[[65442,65442],"mapped",[4353]],[[65443,65443],"mapped",[4522]],[[65444,65444],"mapped",[4354]],[[65445,65445],"mapped",[4524]],[[65446,65446],"mapped",[4525]],[[65447,65447],"mapped",[4355]],[[65448,65448],"mapped",[4356]],[[65449,65449],"mapped",[4357]],[[65450,65450],"mapped",[4528]],[[65451,65451],"mapped",[4529]],[[65452,65452],"mapped",[4530]],[[65453,65453],"mapped",[4531]],[[65454,65454],"mapped",[4532]],[[65455,65455],"mapped",[4533]],[[65456,65456],"mapped",[4378]],[[65457,65457],"mapped",[4358]],[[65458,65458],"mapped",[4359]],[[65459,65459],"mapped",[4360]],[[65460,65460],"mapped",[4385]],[[65461,65461],"mapped",[4361]],[[65462,65462],"mapped",[4362]],[[65463,65463],"mapped",[4363]],[[65464,65464],"mapped",[4364]],[[65465,65465],"mapped",[4365]],[[65466,65466],"mapped",[4366]],[[65467,65467],"mapped",[4367]],[[65468,65468],"mapped",[4368]],[[65469,65469],"mapped",[4369]],[[65470,65470],"mapped",[4370]],[[65471,65473],"disallowed"],[[65474,65474],"mapped",[4449]],[[65475,65475],"mapped",[4450]],[[65476,65476],"mapped",[4451]],[[65477,65477],"mapped",[4452]],[[65478,65478],"mapped",[4453]],[[65479,65479],"mapped",[4454]],[[65480,65481],"disallowed"],[[65482,65482],"mapped",[4455]],[[65483,65483],"mapped",[4456]],[[65484,65484],"mapped",[4457]],[[65485,65485],"mapped",[4458]],[[65486,65486],"mapped",[4459]],[[65487,65487],"mapped",[4460]],[[65488,65489],"disallowed"],[[65490,65490],"mapped",[4461]],[[65491,65491],"mapped",[4462]],[[65492,65492],"mapped",[4463]],[[65493,65493],"mapped",[4464]],[[65494,65494],"mapped",[4465]],[[65495,65495],"mapped",[4466]],[[65496,65497],"disallowed"],[[65498,65498],"mapped",[4467]],[[65499,65499],"mapped",[4468]],[[65500,65500],"mapped",[4469]],[[65501,65503],"disallowed"],[[65504,65504],"mapped",[162]],[[65505,65505],"mapped",[163]],[[65506,65506],"mapped",[172]],[[65507,65507],"disallowed_STD3_mapped",[32,772]],[[65508,65508],"mapped",[166]],[[65509,65509],"mapped",[165]],[[65510,65510],"mapped",[8361]],[[65511,65511],"disallowed"],[[65512,65512],"mapped",[9474]],[[65513,65513],"mapped",[8592]],[[65514,65514],"mapped",[8593]],[[65515,65515],"mapped",[8594]],[[65516,65516],"mapped",[8595]],[[65517,65517],"mapped",[9632]],[[65518,65518],"mapped",[9675]],[[65519,65528],"disallowed"],[[65529,65531],"disallowed"],[[65532,65532],"disallowed"],[[65533,65533],"disallowed"],[[65534,65535],"disallowed"],[[65536,65547],"valid"],[[65548,65548],"disallowed"],[[65549,65574],"valid"],[[65575,65575],"disallowed"],[[65576,65594],"valid"],[[65595,65595],"disallowed"],[[65596,65597],"valid"],[[65598,65598],"disallowed"],[[65599,65613],"valid"],[[65614,65615],"disallowed"],[[65616,65629],"valid"],[[65630,65663],"disallowed"],[[65664,65786],"valid"],[[65787,65791],"disallowed"],[[65792,65794],"valid",[],"NV8"],[[65795,65798],"disallowed"],[[65799,65843],"valid",[],"NV8"],[[65844,65846],"disallowed"],[[65847,65855],"valid",[],"NV8"],[[65856,65930],"valid",[],"NV8"],[[65931,65932],"valid",[],"NV8"],[[65933,65935],"disallowed"],[[65936,65947],"valid",[],"NV8"],[[65948,65951],"disallowed"],[[65952,65952],"valid",[],"NV8"],[[65953,65999],"disallowed"],[[66000,66044],"valid",[],"NV8"],[[66045,66045],"valid"],[[66046,66175],"disallowed"],[[66176,66204],"valid"],[[66205,66207],"disallowed"],[[66208,66256],"valid"],[[66257,66271],"disallowed"],[[66272,66272],"valid"],[[66273,66299],"valid",[],"NV8"],[[66300,66303],"disallowed"],[[66304,66334],"valid"],[[66335,66335],"valid"],[[66336,66339],"valid",[],"NV8"],[[66340,66351],"disallowed"],[[66352,66368],"valid"],[[66369,66369],"valid",[],"NV8"],[[66370,66377],"valid"],[[66378,66378],"valid",[],"NV8"],[[66379,66383],"disallowed"],[[66384,66426],"valid"],[[66427,66431],"disallowed"],[[66432,66461],"valid"],[[66462,66462],"disallowed"],[[66463,66463],"valid",[],"NV8"],[[66464,66499],"valid"],[[66500,66503],"disallowed"],[[66504,66511],"valid"],[[66512,66517],"valid",[],"NV8"],[[66518,66559],"disallowed"],[[66560,66560],"mapped",[66600]],[[66561,66561],"mapped",[66601]],[[66562,66562],"mapped",[66602]],[[66563,66563],"mapped",[66603]],[[66564,66564],"mapped",[66604]],[[66565,66565],"mapped",[66605]],[[66566,66566],"mapped",[66606]],[[66567,66567],"mapped",[66607]],[[66568,66568],"mapped",[66608]],[[66569,66569],"mapped",[66609]],[[66570,66570],"mapped",[66610]],[[66571,66571],"mapped",[66611]],[[66572,66572],"mapped",[66612]],[[66573,66573],"mapped",[66613]],[[66574,66574],"mapped",[66614]],[[66575,66575],"mapped",[66615]],[[66576,66576],"mapped",[66616]],[[66577,66577],"mapped",[66617]],[[66578,66578],"mapped",[66618]],[[66579,66579],"mapped",[66619]],[[66580,66580],"mapped",[66620]],[[66581,66581],"mapped",[66621]],[[66582,66582],"mapped",[66622]],[[66583,66583],"mapped",[66623]],[[66584,66584],"mapped",[66624]],[[66585,66585],"mapped",[66625]],[[66586,66586],"mapped",[66626]],[[66587,66587],"mapped",[66627]],[[66588,66588],"mapped",[66628]],[[66589,66589],"mapped",[66629]],[[66590,66590],"mapped",[66630]],[[66591,66591],"mapped",[66631]],[[66592,66592],"mapped",[66632]],[[66593,66593],"mapped",[66633]],[[66594,66594],"mapped",[66634]],[[66595,66595],"mapped",[66635]],[[66596,66596],"mapped",[66636]],[[66597,66597],"mapped",[66637]],[[66598,66598],"mapped",[66638]],[[66599,66599],"mapped",[66639]],[[66600,66637],"valid"],[[66638,66717],"valid"],[[66718,66719],"disallowed"],[[66720,66729],"valid"],[[66730,66815],"disallowed"],[[66816,66855],"valid"],[[66856,66863],"disallowed"],[[66864,66915],"valid"],[[66916,66926],"disallowed"],[[66927,66927],"valid",[],"NV8"],[[66928,67071],"disallowed"],[[67072,67382],"valid"],[[67383,67391],"disallowed"],[[67392,67413],"valid"],[[67414,67423],"disallowed"],[[67424,67431],"valid"],[[67432,67583],"disallowed"],[[67584,67589],"valid"],[[67590,67591],"disallowed"],[[67592,67592],"valid"],[[67593,67593],"disallowed"],[[67594,67637],"valid"],[[67638,67638],"disallowed"],[[67639,67640],"valid"],[[67641,67643],"disallowed"],[[67644,67644],"valid"],[[67645,67646],"disallowed"],[[67647,67647],"valid"],[[67648,67669],"valid"],[[67670,67670],"disallowed"],[[67671,67679],"valid",[],"NV8"],[[67680,67702],"valid"],[[67703,67711],"valid",[],"NV8"],[[67712,67742],"valid"],[[67743,67750],"disallowed"],[[67751,67759],"valid",[],"NV8"],[[67760,67807],"disallowed"],[[67808,67826],"valid"],[[67827,67827],"disallowed"],[[67828,67829],"valid"],[[67830,67834],"disallowed"],[[67835,67839],"valid",[],"NV8"],[[67840,67861],"valid"],[[67862,67865],"valid",[],"NV8"],[[67866,67867],"valid",[],"NV8"],[[67868,67870],"disallowed"],[[67871,67871],"valid",[],"NV8"],[[67872,67897],"valid"],[[67898,67902],"disallowed"],[[67903,67903],"valid",[],"NV8"],[[67904,67967],"disallowed"],[[67968,68023],"valid"],[[68024,68027],"disallowed"],[[68028,68029],"valid",[],"NV8"],[[68030,68031],"valid"],[[68032,68047],"valid",[],"NV8"],[[68048,68049],"disallowed"],[[68050,68095],"valid",[],"NV8"],[[68096,68099],"valid"],[[68100,68100],"disallowed"],[[68101,68102],"valid"],[[68103,68107],"disallowed"],[[68108,68115],"valid"],[[68116,68116],"disallowed"],[[68117,68119],"valid"],[[68120,68120],"disallowed"],[[68121,68147],"valid"],[[68148,68151],"disallowed"],[[68152,68154],"valid"],[[68155,68158],"disallowed"],[[68159,68159],"valid"],[[68160,68167],"valid",[],"NV8"],[[68168,68175],"disallowed"],[[68176,68184],"valid",[],"NV8"],[[68185,68191],"disallowed"],[[68192,68220],"valid"],[[68221,68223],"valid",[],"NV8"],[[68224,68252],"valid"],[[68253,68255],"valid",[],"NV8"],[[68256,68287],"disallowed"],[[68288,68295],"valid"],[[68296,68296],"valid",[],"NV8"],[[68297,68326],"valid"],[[68327,68330],"disallowed"],[[68331,68342],"valid",[],"NV8"],[[68343,68351],"disallowed"],[[68352,68405],"valid"],[[68406,68408],"disallowed"],[[68409,68415],"valid",[],"NV8"],[[68416,68437],"valid"],[[68438,68439],"disallowed"],[[68440,68447],"valid",[],"NV8"],[[68448,68466],"valid"],[[68467,68471],"disallowed"],[[68472,68479],"valid",[],"NV8"],[[68480,68497],"valid"],[[68498,68504],"disallowed"],[[68505,68508],"valid",[],"NV8"],[[68509,68520],"disallowed"],[[68521,68527],"valid",[],"NV8"],[[68528,68607],"disallowed"],[[68608,68680],"valid"],[[68681,68735],"disallowed"],[[68736,68736],"mapped",[68800]],[[68737,68737],"mapped",[68801]],[[68738,68738],"mapped",[68802]],[[68739,68739],"mapped",[68803]],[[68740,68740],"mapped",[68804]],[[68741,68741],"mapped",[68805]],[[68742,68742],"mapped",[68806]],[[68743,68743],"mapped",[68807]],[[68744,68744],"mapped",[68808]],[[68745,68745],"mapped",[68809]],[[68746,68746],"mapped",[68810]],[[68747,68747],"mapped",[68811]],[[68748,68748],"mapped",[68812]],[[68749,68749],"mapped",[68813]],[[68750,68750],"mapped",[68814]],[[68751,68751],"mapped",[68815]],[[68752,68752],"mapped",[68816]],[[68753,68753],"mapped",[68817]],[[68754,68754],"mapped",[68818]],[[68755,68755],"mapped",[68819]],[[68756,68756],"mapped",[68820]],[[68757,68757],"mapped",[68821]],[[68758,68758],"mapped",[68822]],[[68759,68759],"mapped",[68823]],[[68760,68760],"mapped",[68824]],[[68761,68761],"mapped",[68825]],[[68762,68762],"mapped",[68826]],[[68763,68763],"mapped",[68827]],[[68764,68764],"mapped",[68828]],[[68765,68765],"mapped",[68829]],[[68766,68766],"mapped",[68830]],[[68767,68767],"mapped",[68831]],[[68768,68768],"mapped",[68832]],[[68769,68769],"mapped",[68833]],[[68770,68770],"mapped",[68834]],[[68771,68771],"mapped",[68835]],[[68772,68772],"mapped",[68836]],[[68773,68773],"mapped",[68837]],[[68774,68774],"mapped",[68838]],[[68775,68775],"mapped",[68839]],[[68776,68776],"mapped",[68840]],[[68777,68777],"mapped",[68841]],[[68778,68778],"mapped",[68842]],[[68779,68779],"mapped",[68843]],[[68780,68780],"mapped",[68844]],[[68781,68781],"mapped",[68845]],[[68782,68782],"mapped",[68846]],[[68783,68783],"mapped",[68847]],[[68784,68784],"mapped",[68848]],[[68785,68785],"mapped",[68849]],[[68786,68786],"mapped",[68850]],[[68787,68799],"disallowed"],[[68800,68850],"valid"],[[68851,68857],"disallowed"],[[68858,68863],"valid",[],"NV8"],[[68864,69215],"disallowed"],[[69216,69246],"valid",[],"NV8"],[[69247,69631],"disallowed"],[[69632,69702],"valid"],[[69703,69709],"valid",[],"NV8"],[[69710,69713],"disallowed"],[[69714,69733],"valid",[],"NV8"],[[69734,69743],"valid"],[[69744,69758],"disallowed"],[[69759,69759],"valid"],[[69760,69818],"valid"],[[69819,69820],"valid",[],"NV8"],[[69821,69821],"disallowed"],[[69822,69825],"valid",[],"NV8"],[[69826,69839],"disallowed"],[[69840,69864],"valid"],[[69865,69871],"disallowed"],[[69872,69881],"valid"],[[69882,69887],"disallowed"],[[69888,69940],"valid"],[[69941,69941],"disallowed"],[[69942,69951],"valid"],[[69952,69955],"valid",[],"NV8"],[[69956,69967],"disallowed"],[[69968,70003],"valid"],[[70004,70005],"valid",[],"NV8"],[[70006,70006],"valid"],[[70007,70015],"disallowed"],[[70016,70084],"valid"],[[70085,70088],"valid",[],"NV8"],[[70089,70089],"valid",[],"NV8"],[[70090,70092],"valid"],[[70093,70093],"valid",[],"NV8"],[[70094,70095],"disallowed"],[[70096,70105],"valid"],[[70106,70106],"valid"],[[70107,70107],"valid",[],"NV8"],[[70108,70108],"valid"],[[70109,70111],"valid",[],"NV8"],[[70112,70112],"disallowed"],[[70113,70132],"valid",[],"NV8"],[[70133,70143],"disallowed"],[[70144,70161],"valid"],[[70162,70162],"disallowed"],[[70163,70199],"valid"],[[70200,70205],"valid",[],"NV8"],[[70206,70271],"disallowed"],[[70272,70278],"valid"],[[70279,70279],"disallowed"],[[70280,70280],"valid"],[[70281,70281],"disallowed"],[[70282,70285],"valid"],[[70286,70286],"disallowed"],[[70287,70301],"valid"],[[70302,70302],"disallowed"],[[70303,70312],"valid"],[[70313,70313],"valid",[],"NV8"],[[70314,70319],"disallowed"],[[70320,70378],"valid"],[[70379,70383],"disallowed"],[[70384,70393],"valid"],[[70394,70399],"disallowed"],[[70400,70400],"valid"],[[70401,70403],"valid"],[[70404,70404],"disallowed"],[[70405,70412],"valid"],[[70413,70414],"disallowed"],[[70415,70416],"valid"],[[70417,70418],"disallowed"],[[70419,70440],"valid"],[[70441,70441],"disallowed"],[[70442,70448],"valid"],[[70449,70449],"disallowed"],[[70450,70451],"valid"],[[70452,70452],"disallowed"],[[70453,70457],"valid"],[[70458,70459],"disallowed"],[[70460,70468],"valid"],[[70469,70470],"disallowed"],[[70471,70472],"valid"],[[70473,70474],"disallowed"],[[70475,70477],"valid"],[[70478,70479],"disallowed"],[[70480,70480],"valid"],[[70481,70486],"disallowed"],[[70487,70487],"valid"],[[70488,70492],"disallowed"],[[70493,70499],"valid"],[[70500,70501],"disallowed"],[[70502,70508],"valid"],[[70509,70511],"disallowed"],[[70512,70516],"valid"],[[70517,70783],"disallowed"],[[70784,70853],"valid"],[[70854,70854],"valid",[],"NV8"],[[70855,70855],"valid"],[[70856,70863],"disallowed"],[[70864,70873],"valid"],[[70874,71039],"disallowed"],[[71040,71093],"valid"],[[71094,71095],"disallowed"],[[71096,71104],"valid"],[[71105,71113],"valid",[],"NV8"],[[71114,71127],"valid",[],"NV8"],[[71128,71133],"valid"],[[71134,71167],"disallowed"],[[71168,71232],"valid"],[[71233,71235],"valid",[],"NV8"],[[71236,71236],"valid"],[[71237,71247],"disallowed"],[[71248,71257],"valid"],[[71258,71295],"disallowed"],[[71296,71351],"valid"],[[71352,71359],"disallowed"],[[71360,71369],"valid"],[[71370,71423],"disallowed"],[[71424,71449],"valid"],[[71450,71452],"disallowed"],[[71453,71467],"valid"],[[71468,71471],"disallowed"],[[71472,71481],"valid"],[[71482,71487],"valid",[],"NV8"],[[71488,71839],"disallowed"],[[71840,71840],"mapped",[71872]],[[71841,71841],"mapped",[71873]],[[71842,71842],"mapped",[71874]],[[71843,71843],"mapped",[71875]],[[71844,71844],"mapped",[71876]],[[71845,71845],"mapped",[71877]],[[71846,71846],"mapped",[71878]],[[71847,71847],"mapped",[71879]],[[71848,71848],"mapped",[71880]],[[71849,71849],"mapped",[71881]],[[71850,71850],"mapped",[71882]],[[71851,71851],"mapped",[71883]],[[71852,71852],"mapped",[71884]],[[71853,71853],"mapped",[71885]],[[71854,71854],"mapped",[71886]],[[71855,71855],"mapped",[71887]],[[71856,71856],"mapped",[71888]],[[71857,71857],"mapped",[71889]],[[71858,71858],"mapped",[71890]],[[71859,71859],"mapped",[71891]],[[71860,71860],"mapped",[71892]],[[71861,71861],"mapped",[71893]],[[71862,71862],"mapped",[71894]],[[71863,71863],"mapped",[71895]],[[71864,71864],"mapped",[71896]],[[71865,71865],"mapped",[71897]],[[71866,71866],"mapped",[71898]],[[71867,71867],"mapped",[71899]],[[71868,71868],"mapped",[71900]],[[71869,71869],"mapped",[71901]],[[71870,71870],"mapped",[71902]],[[71871,71871],"mapped",[71903]],[[71872,71913],"valid"],[[71914,71922],"valid",[],"NV8"],[[71923,71934],"disallowed"],[[71935,71935],"valid"],[[71936,72383],"disallowed"],[[72384,72440],"valid"],[[72441,73727],"disallowed"],[[73728,74606],"valid"],[[74607,74648],"valid"],[[74649,74649],"valid"],[[74650,74751],"disallowed"],[[74752,74850],"valid",[],"NV8"],[[74851,74862],"valid",[],"NV8"],[[74863,74863],"disallowed"],[[74864,74867],"valid",[],"NV8"],[[74868,74868],"valid",[],"NV8"],[[74869,74879],"disallowed"],[[74880,75075],"valid"],[[75076,77823],"disallowed"],[[77824,78894],"valid"],[[78895,82943],"disallowed"],[[82944,83526],"valid"],[[83527,92159],"disallowed"],[[92160,92728],"valid"],[[92729,92735],"disallowed"],[[92736,92766],"valid"],[[92767,92767],"disallowed"],[[92768,92777],"valid"],[[92778,92781],"disallowed"],[[92782,92783],"valid",[],"NV8"],[[92784,92879],"disallowed"],[[92880,92909],"valid"],[[92910,92911],"disallowed"],[[92912,92916],"valid"],[[92917,92917],"valid",[],"NV8"],[[92918,92927],"disallowed"],[[92928,92982],"valid"],[[92983,92991],"valid",[],"NV8"],[[92992,92995],"valid"],[[92996,92997],"valid",[],"NV8"],[[92998,93007],"disallowed"],[[93008,93017],"valid"],[[93018,93018],"disallowed"],[[93019,93025],"valid",[],"NV8"],[[93026,93026],"disallowed"],[[93027,93047],"valid"],[[93048,93052],"disallowed"],[[93053,93071],"valid"],[[93072,93951],"disallowed"],[[93952,94020],"valid"],[[94021,94031],"disallowed"],[[94032,94078],"valid"],[[94079,94094],"disallowed"],[[94095,94111],"valid"],[[94112,110591],"disallowed"],[[110592,110593],"valid"],[[110594,113663],"disallowed"],[[113664,113770],"valid"],[[113771,113775],"disallowed"],[[113776,113788],"valid"],[[113789,113791],"disallowed"],[[113792,113800],"valid"],[[113801,113807],"disallowed"],[[113808,113817],"valid"],[[113818,113819],"disallowed"],[[113820,113820],"valid",[],"NV8"],[[113821,113822],"valid"],[[113823,113823],"valid",[],"NV8"],[[113824,113827],"ignored"],[[113828,118783],"disallowed"],[[118784,119029],"valid",[],"NV8"],[[119030,119039],"disallowed"],[[119040,119078],"valid",[],"NV8"],[[119079,119080],"disallowed"],[[119081,119081],"valid",[],"NV8"],[[119082,119133],"valid",[],"NV8"],[[119134,119134],"mapped",[119127,119141]],[[119135,119135],"mapped",[119128,119141]],[[119136,119136],"mapped",[119128,119141,119150]],[[119137,119137],"mapped",[119128,119141,119151]],[[119138,119138],"mapped",[119128,119141,119152]],[[119139,119139],"mapped",[119128,119141,119153]],[[119140,119140],"mapped",[119128,119141,119154]],[[119141,119154],"valid",[],"NV8"],[[119155,119162],"disallowed"],[[119163,119226],"valid",[],"NV8"],[[119227,119227],"mapped",[119225,119141]],[[119228,119228],"mapped",[119226,119141]],[[119229,119229],"mapped",[119225,119141,119150]],[[119230,119230],"mapped",[119226,119141,119150]],[[119231,119231],"mapped",[119225,119141,119151]],[[119232,119232],"mapped",[119226,119141,119151]],[[119233,119261],"valid",[],"NV8"],[[119262,119272],"valid",[],"NV8"],[[119273,119295],"disallowed"],[[119296,119365],"valid",[],"NV8"],[[119366,119551],"disallowed"],[[119552,119638],"valid",[],"NV8"],[[119639,119647],"disallowed"],[[119648,119665],"valid",[],"NV8"],[[119666,119807],"disallowed"],[[119808,119808],"mapped",[97]],[[119809,119809],"mapped",[98]],[[119810,119810],"mapped",[99]],[[119811,119811],"mapped",[100]],[[119812,119812],"mapped",[101]],[[119813,119813],"mapped",[102]],[[119814,119814],"mapped",[103]],[[119815,119815],"mapped",[104]],[[119816,119816],"mapped",[105]],[[119817,119817],"mapped",[106]],[[119818,119818],"mapped",[107]],[[119819,119819],"mapped",[108]],[[119820,119820],"mapped",[109]],[[119821,119821],"mapped",[110]],[[119822,119822],"mapped",[111]],[[119823,119823],"mapped",[112]],[[119824,119824],"mapped",[113]],[[119825,119825],"mapped",[114]],[[119826,119826],"mapped",[115]],[[119827,119827],"mapped",[116]],[[119828,119828],"mapped",[117]],[[119829,119829],"mapped",[118]],[[119830,119830],"mapped",[119]],[[119831,119831],"mapped",[120]],[[119832,119832],"mapped",[121]],[[119833,119833],"mapped",[122]],[[119834,119834],"mapped",[97]],[[119835,119835],"mapped",[98]],[[119836,119836],"mapped",[99]],[[119837,119837],"mapped",[100]],[[119838,119838],"mapped",[101]],[[119839,119839],"mapped",[102]],[[119840,119840],"mapped",[103]],[[119841,119841],"mapped",[104]],[[119842,119842],"mapped",[105]],[[119843,119843],"mapped",[106]],[[119844,119844],"mapped",[107]],[[119845,119845],"mapped",[108]],[[119846,119846],"mapped",[109]],[[119847,119847],"mapped",[110]],[[119848,119848],"mapped",[111]],[[119849,119849],"mapped",[112]],[[119850,119850],"mapped",[113]],[[119851,119851],"mapped",[114]],[[119852,119852],"mapped",[115]],[[119853,119853],"mapped",[116]],[[119854,119854],"mapped",[117]],[[119855,119855],"mapped",[118]],[[119856,119856],"mapped",[119]],[[119857,119857],"mapped",[120]],[[119858,119858],"mapped",[121]],[[119859,119859],"mapped",[122]],[[119860,119860],"mapped",[97]],[[119861,119861],"mapped",[98]],[[119862,119862],"mapped",[99]],[[119863,119863],"mapped",[100]],[[119864,119864],"mapped",[101]],[[119865,119865],"mapped",[102]],[[119866,119866],"mapped",[103]],[[119867,119867],"mapped",[104]],[[119868,119868],"mapped",[105]],[[119869,119869],"mapped",[106]],[[119870,119870],"mapped",[107]],[[119871,119871],"mapped",[108]],[[119872,119872],"mapped",[109]],[[119873,119873],"mapped",[110]],[[119874,119874],"mapped",[111]],[[119875,119875],"mapped",[112]],[[119876,119876],"mapped",[113]],[[119877,119877],"mapped",[114]],[[119878,119878],"mapped",[115]],[[119879,119879],"mapped",[116]],[[119880,119880],"mapped",[117]],[[119881,119881],"mapped",[118]],[[119882,119882],"mapped",[119]],[[119883,119883],"mapped",[120]],[[119884,119884],"mapped",[121]],[[119885,119885],"mapped",[122]],[[119886,119886],"mapped",[97]],[[119887,119887],"mapped",[98]],[[119888,119888],"mapped",[99]],[[119889,119889],"mapped",[100]],[[119890,119890],"mapped",[101]],[[119891,119891],"mapped",[102]],[[119892,119892],"mapped",[103]],[[119893,119893],"disallowed"],[[119894,119894],"mapped",[105]],[[119895,119895],"mapped",[106]],[[119896,119896],"mapped",[107]],[[119897,119897],"mapped",[108]],[[119898,119898],"mapped",[109]],[[119899,119899],"mapped",[110]],[[119900,119900],"mapped",[111]],[[119901,119901],"mapped",[112]],[[119902,119902],"mapped",[113]],[[119903,119903],"mapped",[114]],[[119904,119904],"mapped",[115]],[[119905,119905],"mapped",[116]],[[119906,119906],"mapped",[117]],[[119907,119907],"mapped",[118]],[[119908,119908],"mapped",[119]],[[119909,119909],"mapped",[120]],[[119910,119910],"mapped",[121]],[[119911,119911],"mapped",[122]],[[119912,119912],"mapped",[97]],[[119913,119913],"mapped",[98]],[[119914,119914],"mapped",[99]],[[119915,119915],"mapped",[100]],[[119916,119916],"mapped",[101]],[[119917,119917],"mapped",[102]],[[119918,119918],"mapped",[103]],[[119919,119919],"mapped",[104]],[[119920,119920],"mapped",[105]],[[119921,119921],"mapped",[106]],[[119922,119922],"mapped",[107]],[[119923,119923],"mapped",[108]],[[119924,119924],"mapped",[109]],[[119925,119925],"mapped",[110]],[[119926,119926],"mapped",[111]],[[119927,119927],"mapped",[112]],[[119928,119928],"mapped",[113]],[[119929,119929],"mapped",[114]],[[119930,119930],"mapped",[115]],[[119931,119931],"mapped",[116]],[[119932,119932],"mapped",[117]],[[119933,119933],"mapped",[118]],[[119934,119934],"mapped",[119]],[[119935,119935],"mapped",[120]],[[119936,119936],"mapped",[121]],[[119937,119937],"mapped",[122]],[[119938,119938],"mapped",[97]],[[119939,119939],"mapped",[98]],[[119940,119940],"mapped",[99]],[[119941,119941],"mapped",[100]],[[119942,119942],"mapped",[101]],[[119943,119943],"mapped",[102]],[[119944,119944],"mapped",[103]],[[119945,119945],"mapped",[104]],[[119946,119946],"mapped",[105]],[[119947,119947],"mapped",[106]],[[119948,119948],"mapped",[107]],[[119949,119949],"mapped",[108]],[[119950,119950],"mapped",[109]],[[119951,119951],"mapped",[110]],[[119952,119952],"mapped",[111]],[[119953,119953],"mapped",[112]],[[119954,119954],"mapped",[113]],[[119955,119955],"mapped",[114]],[[119956,119956],"mapped",[115]],[[119957,119957],"mapped",[116]],[[119958,119958],"mapped",[117]],[[119959,119959],"mapped",[118]],[[119960,119960],"mapped",[119]],[[119961,119961],"mapped",[120]],[[119962,119962],"mapped",[121]],[[119963,119963],"mapped",[122]],[[119964,119964],"mapped",[97]],[[119965,119965],"disallowed"],[[119966,119966],"mapped",[99]],[[119967,119967],"mapped",[100]],[[119968,119969],"disallowed"],[[119970,119970],"mapped",[103]],[[119971,119972],"disallowed"],[[119973,119973],"mapped",[106]],[[119974,119974],"mapped",[107]],[[119975,119976],"disallowed"],[[119977,119977],"mapped",[110]],[[119978,119978],"mapped",[111]],[[119979,119979],"mapped",[112]],[[119980,119980],"mapped",[113]],[[119981,119981],"disallowed"],[[119982,119982],"mapped",[115]],[[119983,119983],"mapped",[116]],[[119984,119984],"mapped",[117]],[[119985,119985],"mapped",[118]],[[119986,119986],"mapped",[119]],[[119987,119987],"mapped",[120]],[[119988,119988],"mapped",[121]],[[119989,119989],"mapped",[122]],[[119990,119990],"mapped",[97]],[[119991,119991],"mapped",[98]],[[119992,119992],"mapped",[99]],[[119993,119993],"mapped",[100]],[[119994,119994],"disallowed"],[[119995,119995],"mapped",[102]],[[119996,119996],"disallowed"],[[119997,119997],"mapped",[104]],[[119998,119998],"mapped",[105]],[[119999,119999],"mapped",[106]],[[120000,120000],"mapped",[107]],[[120001,120001],"mapped",[108]],[[120002,120002],"mapped",[109]],[[120003,120003],"mapped",[110]],[[120004,120004],"disallowed"],[[120005,120005],"mapped",[112]],[[120006,120006],"mapped",[113]],[[120007,120007],"mapped",[114]],[[120008,120008],"mapped",[115]],[[120009,120009],"mapped",[116]],[[120010,120010],"mapped",[117]],[[120011,120011],"mapped",[118]],[[120012,120012],"mapped",[119]],[[120013,120013],"mapped",[120]],[[120014,120014],"mapped",[121]],[[120015,120015],"mapped",[122]],[[120016,120016],"mapped",[97]],[[120017,120017],"mapped",[98]],[[120018,120018],"mapped",[99]],[[120019,120019],"mapped",[100]],[[120020,120020],"mapped",[101]],[[120021,120021],"mapped",[102]],[[120022,120022],"mapped",[103]],[[120023,120023],"mapped",[104]],[[120024,120024],"mapped",[105]],[[120025,120025],"mapped",[106]],[[120026,120026],"mapped",[107]],[[120027,120027],"mapped",[108]],[[120028,120028],"mapped",[109]],[[120029,120029],"mapped",[110]],[[120030,120030],"mapped",[111]],[[120031,120031],"mapped",[112]],[[120032,120032],"mapped",[113]],[[120033,120033],"mapped",[114]],[[120034,120034],"mapped",[115]],[[120035,120035],"mapped",[116]],[[120036,120036],"mapped",[117]],[[120037,120037],"mapped",[118]],[[120038,120038],"mapped",[119]],[[120039,120039],"mapped",[120]],[[120040,120040],"mapped",[121]],[[120041,120041],"mapped",[122]],[[120042,120042],"mapped",[97]],[[120043,120043],"mapped",[98]],[[120044,120044],"mapped",[99]],[[120045,120045],"mapped",[100]],[[120046,120046],"mapped",[101]],[[120047,120047],"mapped",[102]],[[120048,120048],"mapped",[103]],[[120049,120049],"mapped",[104]],[[120050,120050],"mapped",[105]],[[120051,120051],"mapped",[106]],[[120052,120052],"mapped",[107]],[[120053,120053],"mapped",[108]],[[120054,120054],"mapped",[109]],[[120055,120055],"mapped",[110]],[[120056,120056],"mapped",[111]],[[120057,120057],"mapped",[112]],[[120058,120058],"mapped",[113]],[[120059,120059],"mapped",[114]],[[120060,120060],"mapped",[115]],[[120061,120061],"mapped",[116]],[[120062,120062],"mapped",[117]],[[120063,120063],"mapped",[118]],[[120064,120064],"mapped",[119]],[[120065,120065],"mapped",[120]],[[120066,120066],"mapped",[121]],[[120067,120067],"mapped",[122]],[[120068,120068],"mapped",[97]],[[120069,120069],"mapped",[98]],[[120070,120070],"disallowed"],[[120071,120071],"mapped",[100]],[[120072,120072],"mapped",[101]],[[120073,120073],"mapped",[102]],[[120074,120074],"mapped",[103]],[[120075,120076],"disallowed"],[[120077,120077],"mapped",[106]],[[120078,120078],"mapped",[107]],[[120079,120079],"mapped",[108]],[[120080,120080],"mapped",[109]],[[120081,120081],"mapped",[110]],[[120082,120082],"mapped",[111]],[[120083,120083],"mapped",[112]],[[120084,120084],"mapped",[113]],[[120085,120085],"disallowed"],[[120086,120086],"mapped",[115]],[[120087,120087],"mapped",[116]],[[120088,120088],"mapped",[117]],[[120089,120089],"mapped",[118]],[[120090,120090],"mapped",[119]],[[120091,120091],"mapped",[120]],[[120092,120092],"mapped",[121]],[[120093,120093],"disallowed"],[[120094,120094],"mapped",[97]],[[120095,120095],"mapped",[98]],[[120096,120096],"mapped",[99]],[[120097,120097],"mapped",[100]],[[120098,120098],"mapped",[101]],[[120099,120099],"mapped",[102]],[[120100,120100],"mapped",[103]],[[120101,120101],"mapped",[104]],[[120102,120102],"mapped",[105]],[[120103,120103],"mapped",[106]],[[120104,120104],"mapped",[107]],[[120105,120105],"mapped",[108]],[[120106,120106],"mapped",[109]],[[120107,120107],"mapped",[110]],[[120108,120108],"mapped",[111]],[[120109,120109],"mapped",[112]],[[120110,120110],"mapped",[113]],[[120111,120111],"mapped",[114]],[[120112,120112],"mapped",[115]],[[120113,120113],"mapped",[116]],[[120114,120114],"mapped",[117]],[[120115,120115],"mapped",[118]],[[120116,120116],"mapped",[119]],[[120117,120117],"mapped",[120]],[[120118,120118],"mapped",[121]],[[120119,120119],"mapped",[122]],[[120120,120120],"mapped",[97]],[[120121,120121],"mapped",[98]],[[120122,120122],"disallowed"],[[120123,120123],"mapped",[100]],[[120124,120124],"mapped",[101]],[[120125,120125],"mapped",[102]],[[120126,120126],"mapped",[103]],[[120127,120127],"disallowed"],[[120128,120128],"mapped",[105]],[[120129,120129],"mapped",[106]],[[120130,120130],"mapped",[107]],[[120131,120131],"mapped",[108]],[[120132,120132],"mapped",[109]],[[120133,120133],"disallowed"],[[120134,120134],"mapped",[111]],[[120135,120137],"disallowed"],[[120138,120138],"mapped",[115]],[[120139,120139],"mapped",[116]],[[120140,120140],"mapped",[117]],[[120141,120141],"mapped",[118]],[[120142,120142],"mapped",[119]],[[120143,120143],"mapped",[120]],[[120144,120144],"mapped",[121]],[[120145,120145],"disallowed"],[[120146,120146],"mapped",[97]],[[120147,120147],"mapped",[98]],[[120148,120148],"mapped",[99]],[[120149,120149],"mapped",[100]],[[120150,120150],"mapped",[101]],[[120151,120151],"mapped",[102]],[[120152,120152],"mapped",[103]],[[120153,120153],"mapped",[104]],[[120154,120154],"mapped",[105]],[[120155,120155],"mapped",[106]],[[120156,120156],"mapped",[107]],[[120157,120157],"mapped",[108]],[[120158,120158],"mapped",[109]],[[120159,120159],"mapped",[110]],[[120160,120160],"mapped",[111]],[[120161,120161],"mapped",[112]],[[120162,120162],"mapped",[113]],[[120163,120163],"mapped",[114]],[[120164,120164],"mapped",[115]],[[120165,120165],"mapped",[116]],[[120166,120166],"mapped",[117]],[[120167,120167],"mapped",[118]],[[120168,120168],"mapped",[119]],[[120169,120169],"mapped",[120]],[[120170,120170],"mapped",[121]],[[120171,120171],"mapped",[122]],[[120172,120172],"mapped",[97]],[[120173,120173],"mapped",[98]],[[120174,120174],"mapped",[99]],[[120175,120175],"mapped",[100]],[[120176,120176],"mapped",[101]],[[120177,120177],"mapped",[102]],[[120178,120178],"mapped",[103]],[[120179,120179],"mapped",[104]],[[120180,120180],"mapped",[105]],[[120181,120181],"mapped",[106]],[[120182,120182],"mapped",[107]],[[120183,120183],"mapped",[108]],[[120184,120184],"mapped",[109]],[[120185,120185],"mapped",[110]],[[120186,120186],"mapped",[111]],[[120187,120187],"mapped",[112]],[[120188,120188],"mapped",[113]],[[120189,120189],"mapped",[114]],[[120190,120190],"mapped",[115]],[[120191,120191],"mapped",[116]],[[120192,120192],"mapped",[117]],[[120193,120193],"mapped",[118]],[[120194,120194],"mapped",[119]],[[120195,120195],"mapped",[120]],[[120196,120196],"mapped",[121]],[[120197,120197],"mapped",[122]],[[120198,120198],"mapped",[97]],[[120199,120199],"mapped",[98]],[[120200,120200],"mapped",[99]],[[120201,120201],"mapped",[100]],[[120202,120202],"mapped",[101]],[[120203,120203],"mapped",[102]],[[120204,120204],"mapped",[103]],[[120205,120205],"mapped",[104]],[[120206,120206],"mapped",[105]],[[120207,120207],"mapped",[106]],[[120208,120208],"mapped",[107]],[[120209,120209],"mapped",[108]],[[120210,120210],"mapped",[109]],[[120211,120211],"mapped",[110]],[[120212,120212],"mapped",[111]],[[120213,120213],"mapped",[112]],[[120214,120214],"mapped",[113]],[[120215,120215],"mapped",[114]],[[120216,120216],"mapped",[115]],[[120217,120217],"mapped",[116]],[[120218,120218],"mapped",[117]],[[120219,120219],"mapped",[118]],[[120220,120220],"mapped",[119]],[[120221,120221],"mapped",[120]],[[120222,120222],"mapped",[121]],[[120223,120223],"mapped",[122]],[[120224,120224],"mapped",[97]],[[120225,120225],"mapped",[98]],[[120226,120226],"mapped",[99]],[[120227,120227],"mapped",[100]],[[120228,120228],"mapped",[101]],[[120229,120229],"mapped",[102]],[[120230,120230],"mapped",[103]],[[120231,120231],"mapped",[104]],[[120232,120232],"mapped",[105]],[[120233,120233],"mapped",[106]],[[120234,120234],"mapped",[107]],[[120235,120235],"mapped",[108]],[[120236,120236],"mapped",[109]],[[120237,120237],"mapped",[110]],[[120238,120238],"mapped",[111]],[[120239,120239],"mapped",[112]],[[120240,120240],"mapped",[113]],[[120241,120241],"mapped",[114]],[[120242,120242],"mapped",[115]],[[120243,120243],"mapped",[116]],[[120244,120244],"mapped",[117]],[[120245,120245],"mapped",[118]],[[120246,120246],"mapped",[119]],[[120247,120247],"mapped",[120]],[[120248,120248],"mapped",[121]],[[120249,120249],"mapped",[122]],[[120250,120250],"mapped",[97]],[[120251,120251],"mapped",[98]],[[120252,120252],"mapped",[99]],[[120253,120253],"mapped",[100]],[[120254,120254],"mapped",[101]],[[120255,120255],"mapped",[102]],[[120256,120256],"mapped",[103]],[[120257,120257],"mapped",[104]],[[120258,120258],"mapped",[105]],[[120259,120259],"mapped",[106]],[[120260,120260],"mapped",[107]],[[120261,120261],"mapped",[108]],[[120262,120262],"mapped",[109]],[[120263,120263],"mapped",[110]],[[120264,120264],"mapped",[111]],[[120265,120265],"mapped",[112]],[[120266,120266],"mapped",[113]],[[120267,120267],"mapped",[114]],[[120268,120268],"mapped",[115]],[[120269,120269],"mapped",[116]],[[120270,120270],"mapped",[117]],[[120271,120271],"mapped",[118]],[[120272,120272],"mapped",[119]],[[120273,120273],"mapped",[120]],[[120274,120274],"mapped",[121]],[[120275,120275],"mapped",[122]],[[120276,120276],"mapped",[97]],[[120277,120277],"mapped",[98]],[[120278,120278],"mapped",[99]],[[120279,120279],"mapped",[100]],[[120280,120280],"mapped",[101]],[[120281,120281],"mapped",[102]],[[120282,120282],"mapped",[103]],[[120283,120283],"mapped",[104]],[[120284,120284],"mapped",[105]],[[120285,120285],"mapped",[106]],[[120286,120286],"mapped",[107]],[[120287,120287],"mapped",[108]],[[120288,120288],"mapped",[109]],[[120289,120289],"mapped",[110]],[[120290,120290],"mapped",[111]],[[120291,120291],"mapped",[112]],[[120292,120292],"mapped",[113]],[[120293,120293],"mapped",[114]],[[120294,120294],"mapped",[115]],[[120295,120295],"mapped",[116]],[[120296,120296],"mapped",[117]],[[120297,120297],"mapped",[118]],[[120298,120298],"mapped",[119]],[[120299,120299],"mapped",[120]],[[120300,120300],"mapped",[121]],[[120301,120301],"mapped",[122]],[[120302,120302],"mapped",[97]],[[120303,120303],"mapped",[98]],[[120304,120304],"mapped",[99]],[[120305,120305],"mapped",[100]],[[120306,120306],"mapped",[101]],[[120307,120307],"mapped",[102]],[[120308,120308],"mapped",[103]],[[120309,120309],"mapped",[104]],[[120310,120310],"mapped",[105]],[[120311,120311],"mapped",[106]],[[120312,120312],"mapped",[107]],[[120313,120313],"mapped",[108]],[[120314,120314],"mapped",[109]],[[120315,120315],"mapped",[110]],[[120316,120316],"mapped",[111]],[[120317,120317],"mapped",[112]],[[120318,120318],"mapped",[113]],[[120319,120319],"mapped",[114]],[[120320,120320],"mapped",[115]],[[120321,120321],"mapped",[116]],[[120322,120322],"mapped",[117]],[[120323,120323],"mapped",[118]],[[120324,120324],"mapped",[119]],[[120325,120325],"mapped",[120]],[[120326,120326],"mapped",[121]],[[120327,120327],"mapped",[122]],[[120328,120328],"mapped",[97]],[[120329,120329],"mapped",[98]],[[120330,120330],"mapped",[99]],[[120331,120331],"mapped",[100]],[[120332,120332],"mapped",[101]],[[120333,120333],"mapped",[102]],[[120334,120334],"mapped",[103]],[[120335,120335],"mapped",[104]],[[120336,120336],"mapped",[105]],[[120337,120337],"mapped",[106]],[[120338,120338],"mapped",[107]],[[120339,120339],"mapped",[108]],[[120340,120340],"mapped",[109]],[[120341,120341],"mapped",[110]],[[120342,120342],"mapped",[111]],[[120343,120343],"mapped",[112]],[[120344,120344],"mapped",[113]],[[120345,120345],"mapped",[114]],[[120346,120346],"mapped",[115]],[[120347,120347],"mapped",[116]],[[120348,120348],"mapped",[117]],[[120349,120349],"mapped",[118]],[[120350,120350],"mapped",[119]],[[120351,120351],"mapped",[120]],[[120352,120352],"mapped",[121]],[[120353,120353],"mapped",[122]],[[120354,120354],"mapped",[97]],[[120355,120355],"mapped",[98]],[[120356,120356],"mapped",[99]],[[120357,120357],"mapped",[100]],[[120358,120358],"mapped",[101]],[[120359,120359],"mapped",[102]],[[120360,120360],"mapped",[103]],[[120361,120361],"mapped",[104]],[[120362,120362],"mapped",[105]],[[120363,120363],"mapped",[106]],[[120364,120364],"mapped",[107]],[[120365,120365],"mapped",[108]],[[120366,120366],"mapped",[109]],[[120367,120367],"mapped",[110]],[[120368,120368],"mapped",[111]],[[120369,120369],"mapped",[112]],[[120370,120370],"mapped",[113]],[[120371,120371],"mapped",[114]],[[120372,120372],"mapped",[115]],[[120373,120373],"mapped",[116]],[[120374,120374],"mapped",[117]],[[120375,120375],"mapped",[118]],[[120376,120376],"mapped",[119]],[[120377,120377],"mapped",[120]],[[120378,120378],"mapped",[121]],[[120379,120379],"mapped",[122]],[[120380,120380],"mapped",[97]],[[120381,120381],"mapped",[98]],[[120382,120382],"mapped",[99]],[[120383,120383],"mapped",[100]],[[120384,120384],"mapped",[101]],[[120385,120385],"mapped",[102]],[[120386,120386],"mapped",[103]],[[120387,120387],"mapped",[104]],[[120388,120388],"mapped",[105]],[[120389,120389],"mapped",[106]],[[120390,120390],"mapped",[107]],[[120391,120391],"mapped",[108]],[[120392,120392],"mapped",[109]],[[120393,120393],"mapped",[110]],[[120394,120394],"mapped",[111]],[[120395,120395],"mapped",[112]],[[120396,120396],"mapped",[113]],[[120397,120397],"mapped",[114]],[[120398,120398],"mapped",[115]],[[120399,120399],"mapped",[116]],[[120400,120400],"mapped",[117]],[[120401,120401],"mapped",[118]],[[120402,120402],"mapped",[119]],[[120403,120403],"mapped",[120]],[[120404,120404],"mapped",[121]],[[120405,120405],"mapped",[122]],[[120406,120406],"mapped",[97]],[[120407,120407],"mapped",[98]],[[120408,120408],"mapped",[99]],[[120409,120409],"mapped",[100]],[[120410,120410],"mapped",[101]],[[120411,120411],"mapped",[102]],[[120412,120412],"mapped",[103]],[[120413,120413],"mapped",[104]],[[120414,120414],"mapped",[105]],[[120415,120415],"mapped",[106]],[[120416,120416],"mapped",[107]],[[120417,120417],"mapped",[108]],[[120418,120418],"mapped",[109]],[[120419,120419],"mapped",[110]],[[120420,120420],"mapped",[111]],[[120421,120421],"mapped",[112]],[[120422,120422],"mapped",[113]],[[120423,120423],"mapped",[114]],[[120424,120424],"mapped",[115]],[[120425,120425],"mapped",[116]],[[120426,120426],"mapped",[117]],[[120427,120427],"mapped",[118]],[[120428,120428],"mapped",[119]],[[120429,120429],"mapped",[120]],[[120430,120430],"mapped",[121]],[[120431,120431],"mapped",[122]],[[120432,120432],"mapped",[97]],[[120433,120433],"mapped",[98]],[[120434,120434],"mapped",[99]],[[120435,120435],"mapped",[100]],[[120436,120436],"mapped",[101]],[[120437,120437],"mapped",[102]],[[120438,120438],"mapped",[103]],[[120439,120439],"mapped",[104]],[[120440,120440],"mapped",[105]],[[120441,120441],"mapped",[106]],[[120442,120442],"mapped",[107]],[[120443,120443],"mapped",[108]],[[120444,120444],"mapped",[109]],[[120445,120445],"mapped",[110]],[[120446,120446],"mapped",[111]],[[120447,120447],"mapped",[112]],[[120448,120448],"mapped",[113]],[[120449,120449],"mapped",[114]],[[120450,120450],"mapped",[115]],[[120451,120451],"mapped",[116]],[[120452,120452],"mapped",[117]],[[120453,120453],"mapped",[118]],[[120454,120454],"mapped",[119]],[[120455,120455],"mapped",[120]],[[120456,120456],"mapped",[121]],[[120457,120457],"mapped",[122]],[[120458,120458],"mapped",[97]],[[120459,120459],"mapped",[98]],[[120460,120460],"mapped",[99]],[[120461,120461],"mapped",[100]],[[120462,120462],"mapped",[101]],[[120463,120463],"mapped",[102]],[[120464,120464],"mapped",[103]],[[120465,120465],"mapped",[104]],[[120466,120466],"mapped",[105]],[[120467,120467],"mapped",[106]],[[120468,120468],"mapped",[107]],[[120469,120469],"mapped",[108]],[[120470,120470],"mapped",[109]],[[120471,120471],"mapped",[110]],[[120472,120472],"mapped",[111]],[[120473,120473],"mapped",[112]],[[120474,120474],"mapped",[113]],[[120475,120475],"mapped",[114]],[[120476,120476],"mapped",[115]],[[120477,120477],"mapped",[116]],[[120478,120478],"mapped",[117]],[[120479,120479],"mapped",[118]],[[120480,120480],"mapped",[119]],[[120481,120481],"mapped",[120]],[[120482,120482],"mapped",[121]],[[120483,120483],"mapped",[122]],[[120484,120484],"mapped",[305]],[[120485,120485],"mapped",[567]],[[120486,120487],"disallowed"],[[120488,120488],"mapped",[945]],[[120489,120489],"mapped",[946]],[[120490,120490],"mapped",[947]],[[120491,120491],"mapped",[948]],[[120492,120492],"mapped",[949]],[[120493,120493],"mapped",[950]],[[120494,120494],"mapped",[951]],[[120495,120495],"mapped",[952]],[[120496,120496],"mapped",[953]],[[120497,120497],"mapped",[954]],[[120498,120498],"mapped",[955]],[[120499,120499],"mapped",[956]],[[120500,120500],"mapped",[957]],[[120501,120501],"mapped",[958]],[[120502,120502],"mapped",[959]],[[120503,120503],"mapped",[960]],[[120504,120504],"mapped",[961]],[[120505,120505],"mapped",[952]],[[120506,120506],"mapped",[963]],[[120507,120507],"mapped",[964]],[[120508,120508],"mapped",[965]],[[120509,120509],"mapped",[966]],[[120510,120510],"mapped",[967]],[[120511,120511],"mapped",[968]],[[120512,120512],"mapped",[969]],[[120513,120513],"mapped",[8711]],[[120514,120514],"mapped",[945]],[[120515,120515],"mapped",[946]],[[120516,120516],"mapped",[947]],[[120517,120517],"mapped",[948]],[[120518,120518],"mapped",[949]],[[120519,120519],"mapped",[950]],[[120520,120520],"mapped",[951]],[[120521,120521],"mapped",[952]],[[120522,120522],"mapped",[953]],[[120523,120523],"mapped",[954]],[[120524,120524],"mapped",[955]],[[120525,120525],"mapped",[956]],[[120526,120526],"mapped",[957]],[[120527,120527],"mapped",[958]],[[120528,120528],"mapped",[959]],[[120529,120529],"mapped",[960]],[[120530,120530],"mapped",[961]],[[120531,120532],"mapped",[963]],[[120533,120533],"mapped",[964]],[[120534,120534],"mapped",[965]],[[120535,120535],"mapped",[966]],[[120536,120536],"mapped",[967]],[[120537,120537],"mapped",[968]],[[120538,120538],"mapped",[969]],[[120539,120539],"mapped",[8706]],[[120540,120540],"mapped",[949]],[[120541,120541],"mapped",[952]],[[120542,120542],"mapped",[954]],[[120543,120543],"mapped",[966]],[[120544,120544],"mapped",[961]],[[120545,120545],"mapped",[960]],[[120546,120546],"mapped",[945]],[[120547,120547],"mapped",[946]],[[120548,120548],"mapped",[947]],[[120549,120549],"mapped",[948]],[[120550,120550],"mapped",[949]],[[120551,120551],"mapped",[950]],[[120552,120552],"mapped",[951]],[[120553,120553],"mapped",[952]],[[120554,120554],"mapped",[953]],[[120555,120555],"mapped",[954]],[[120556,120556],"mapped",[955]],[[120557,120557],"mapped",[956]],[[120558,120558],"mapped",[957]],[[120559,120559],"mapped",[958]],[[120560,120560],"mapped",[959]],[[120561,120561],"mapped",[960]],[[120562,120562],"mapped",[961]],[[120563,120563],"mapped",[952]],[[120564,120564],"mapped",[963]],[[120565,120565],"mapped",[964]],[[120566,120566],"mapped",[965]],[[120567,120567],"mapped",[966]],[[120568,120568],"mapped",[967]],[[120569,120569],"mapped",[968]],[[120570,120570],"mapped",[969]],[[120571,120571],"mapped",[8711]],[[120572,120572],"mapped",[945]],[[120573,120573],"mapped",[946]],[[120574,120574],"mapped",[947]],[[120575,120575],"mapped",[948]],[[120576,120576],"mapped",[949]],[[120577,120577],"mapped",[950]],[[120578,120578],"mapped",[951]],[[120579,120579],"mapped",[952]],[[120580,120580],"mapped",[953]],[[120581,120581],"mapped",[954]],[[120582,120582],"mapped",[955]],[[120583,120583],"mapped",[956]],[[120584,120584],"mapped",[957]],[[120585,120585],"mapped",[958]],[[120586,120586],"mapped",[959]],[[120587,120587],"mapped",[960]],[[120588,120588],"mapped",[961]],[[120589,120590],"mapped",[963]],[[120591,120591],"mapped",[964]],[[120592,120592],"mapped",[965]],[[120593,120593],"mapped",[966]],[[120594,120594],"mapped",[967]],[[120595,120595],"mapped",[968]],[[120596,120596],"mapped",[969]],[[120597,120597],"mapped",[8706]],[[120598,120598],"mapped",[949]],[[120599,120599],"mapped",[952]],[[120600,120600],"mapped",[954]],[[120601,120601],"mapped",[966]],[[120602,120602],"mapped",[961]],[[120603,120603],"mapped",[960]],[[120604,120604],"mapped",[945]],[[120605,120605],"mapped",[946]],[[120606,120606],"mapped",[947]],[[120607,120607],"mapped",[948]],[[120608,120608],"mapped",[949]],[[120609,120609],"mapped",[950]],[[120610,120610],"mapped",[951]],[[120611,120611],"mapped",[952]],[[120612,120612],"mapped",[953]],[[120613,120613],"mapped",[954]],[[120614,120614],"mapped",[955]],[[120615,120615],"mapped",[956]],[[120616,120616],"mapped",[957]],[[120617,120617],"mapped",[958]],[[120618,120618],"mapped",[959]],[[120619,120619],"mapped",[960]],[[120620,120620],"mapped",[961]],[[120621,120621],"mapped",[952]],[[120622,120622],"mapped",[963]],[[120623,120623],"mapped",[964]],[[120624,120624],"mapped",[965]],[[120625,120625],"mapped",[966]],[[120626,120626],"mapped",[967]],[[120627,120627],"mapped",[968]],[[120628,120628],"mapped",[969]],[[120629,120629],"mapped",[8711]],[[120630,120630],"mapped",[945]],[[120631,120631],"mapped",[946]],[[120632,120632],"mapped",[947]],[[120633,120633],"mapped",[948]],[[120634,120634],"mapped",[949]],[[120635,120635],"mapped",[950]],[[120636,120636],"mapped",[951]],[[120637,120637],"mapped",[952]],[[120638,120638],"mapped",[953]],[[120639,120639],"mapped",[954]],[[120640,120640],"mapped",[955]],[[120641,120641],"mapped",[956]],[[120642,120642],"mapped",[957]],[[120643,120643],"mapped",[958]],[[120644,120644],"mapped",[959]],[[120645,120645],"mapped",[960]],[[120646,120646],"mapped",[961]],[[120647,120648],"mapped",[963]],[[120649,120649],"mapped",[964]],[[120650,120650],"mapped",[965]],[[120651,120651],"mapped",[966]],[[120652,120652],"mapped",[967]],[[120653,120653],"mapped",[968]],[[120654,120654],"mapped",[969]],[[120655,120655],"mapped",[8706]],[[120656,120656],"mapped",[949]],[[120657,120657],"mapped",[952]],[[120658,120658],"mapped",[954]],[[120659,120659],"mapped",[966]],[[120660,120660],"mapped",[961]],[[120661,120661],"mapped",[960]],[[120662,120662],"mapped",[945]],[[120663,120663],"mapped",[946]],[[120664,120664],"mapped",[947]],[[120665,120665],"mapped",[948]],[[120666,120666],"mapped",[949]],[[120667,120667],"mapped",[950]],[[120668,120668],"mapped",[951]],[[120669,120669],"mapped",[952]],[[120670,120670],"mapped",[953]],[[120671,120671],"mapped",[954]],[[120672,120672],"mapped",[955]],[[120673,120673],"mapped",[956]],[[120674,120674],"mapped",[957]],[[120675,120675],"mapped",[958]],[[120676,120676],"mapped",[959]],[[120677,120677],"mapped",[960]],[[120678,120678],"mapped",[961]],[[120679,120679],"mapped",[952]],[[120680,120680],"mapped",[963]],[[120681,120681],"mapped",[964]],[[120682,120682],"mapped",[965]],[[120683,120683],"mapped",[966]],[[120684,120684],"mapped",[967]],[[120685,120685],"mapped",[968]],[[120686,120686],"mapped",[969]],[[120687,120687],"mapped",[8711]],[[120688,120688],"mapped",[945]],[[120689,120689],"mapped",[946]],[[120690,120690],"mapped",[947]],[[120691,120691],"mapped",[948]],[[120692,120692],"mapped",[949]],[[120693,120693],"mapped",[950]],[[120694,120694],"mapped",[951]],[[120695,120695],"mapped",[952]],[[120696,120696],"mapped",[953]],[[120697,120697],"mapped",[954]],[[120698,120698],"mapped",[955]],[[120699,120699],"mapped",[956]],[[120700,120700],"mapped",[957]],[[120701,120701],"mapped",[958]],[[120702,120702],"mapped",[959]],[[120703,120703],"mapped",[960]],[[120704,120704],"mapped",[961]],[[120705,120706],"mapped",[963]],[[120707,120707],"mapped",[964]],[[120708,120708],"mapped",[965]],[[120709,120709],"mapped",[966]],[[120710,120710],"mapped",[967]],[[120711,120711],"mapped",[968]],[[120712,120712],"mapped",[969]],[[120713,120713],"mapped",[8706]],[[120714,120714],"mapped",[949]],[[120715,120715],"mapped",[952]],[[120716,120716],"mapped",[954]],[[120717,120717],"mapped",[966]],[[120718,120718],"mapped",[961]],[[120719,120719],"mapped",[960]],[[120720,120720],"mapped",[945]],[[120721,120721],"mapped",[946]],[[120722,120722],"mapped",[947]],[[120723,120723],"mapped",[948]],[[120724,120724],"mapped",[949]],[[120725,120725],"mapped",[950]],[[120726,120726],"mapped",[951]],[[120727,120727],"mapped",[952]],[[120728,120728],"mapped",[953]],[[120729,120729],"mapped",[954]],[[120730,120730],"mapped",[955]],[[120731,120731],"mapped",[956]],[[120732,120732],"mapped",[957]],[[120733,120733],"mapped",[958]],[[120734,120734],"mapped",[959]],[[120735,120735],"mapped",[960]],[[120736,120736],"mapped",[961]],[[120737,120737],"mapped",[952]],[[120738,120738],"mapped",[963]],[[120739,120739],"mapped",[964]],[[120740,120740],"mapped",[965]],[[120741,120741],"mapped",[966]],[[120742,120742],"mapped",[967]],[[120743,120743],"mapped",[968]],[[120744,120744],"mapped",[969]],[[120745,120745],"mapped",[8711]],[[120746,120746],"mapped",[945]],[[120747,120747],"mapped",[946]],[[120748,120748],"mapped",[947]],[[120749,120749],"mapped",[948]],[[120750,120750],"mapped",[949]],[[120751,120751],"mapped",[950]],[[120752,120752],"mapped",[951]],[[120753,120753],"mapped",[952]],[[120754,120754],"mapped",[953]],[[120755,120755],"mapped",[954]],[[120756,120756],"mapped",[955]],[[120757,120757],"mapped",[956]],[[120758,120758],"mapped",[957]],[[120759,120759],"mapped",[958]],[[120760,120760],"mapped",[959]],[[120761,120761],"mapped",[960]],[[120762,120762],"mapped",[961]],[[120763,120764],"mapped",[963]],[[120765,120765],"mapped",[964]],[[120766,120766],"mapped",[965]],[[120767,120767],"mapped",[966]],[[120768,120768],"mapped",[967]],[[120769,120769],"mapped",[968]],[[120770,120770],"mapped",[969]],[[120771,120771],"mapped",[8706]],[[120772,120772],"mapped",[949]],[[120773,120773],"mapped",[952]],[[120774,120774],"mapped",[954]],[[120775,120775],"mapped",[966]],[[120776,120776],"mapped",[961]],[[120777,120777],"mapped",[960]],[[120778,120779],"mapped",[989]],[[120780,120781],"disallowed"],[[120782,120782],"mapped",[48]],[[120783,120783],"mapped",[49]],[[120784,120784],"mapped",[50]],[[120785,120785],"mapped",[51]],[[120786,120786],"mapped",[52]],[[120787,120787],"mapped",[53]],[[120788,120788],"mapped",[54]],[[120789,120789],"mapped",[55]],[[120790,120790],"mapped",[56]],[[120791,120791],"mapped",[57]],[[120792,120792],"mapped",[48]],[[120793,120793],"mapped",[49]],[[120794,120794],"mapped",[50]],[[120795,120795],"mapped",[51]],[[120796,120796],"mapped",[52]],[[120797,120797],"mapped",[53]],[[120798,120798],"mapped",[54]],[[120799,120799],"mapped",[55]],[[120800,120800],"mapped",[56]],[[120801,120801],"mapped",[57]],[[120802,120802],"mapped",[48]],[[120803,120803],"mapped",[49]],[[120804,120804],"mapped",[50]],[[120805,120805],"mapped",[51]],[[120806,120806],"mapped",[52]],[[120807,120807],"mapped",[53]],[[120808,120808],"mapped",[54]],[[120809,120809],"mapped",[55]],[[120810,120810],"mapped",[56]],[[120811,120811],"mapped",[57]],[[120812,120812],"mapped",[48]],[[120813,120813],"mapped",[49]],[[120814,120814],"mapped",[50]],[[120815,120815],"mapped",[51]],[[120816,120816],"mapped",[52]],[[120817,120817],"mapped",[53]],[[120818,120818],"mapped",[54]],[[120819,120819],"mapped",[55]],[[120820,120820],"mapped",[56]],[[120821,120821],"mapped",[57]],[[120822,120822],"mapped",[48]],[[120823,120823],"mapped",[49]],[[120824,120824],"mapped",[50]],[[120825,120825],"mapped",[51]],[[120826,120826],"mapped",[52]],[[120827,120827],"mapped",[53]],[[120828,120828],"mapped",[54]],[[120829,120829],"mapped",[55]],[[120830,120830],"mapped",[56]],[[120831,120831],"mapped",[57]],[[120832,121343],"valid",[],"NV8"],[[121344,121398],"valid"],[[121399,121402],"valid",[],"NV8"],[[121403,121452],"valid"],[[121453,121460],"valid",[],"NV8"],[[121461,121461],"valid"],[[121462,121475],"valid",[],"NV8"],[[121476,121476],"valid"],[[121477,121483],"valid",[],"NV8"],[[121484,121498],"disallowed"],[[121499,121503],"valid"],[[121504,121504],"disallowed"],[[121505,121519],"valid"],[[121520,124927],"disallowed"],[[124928,125124],"valid"],[[125125,125126],"disallowed"],[[125127,125135],"valid",[],"NV8"],[[125136,125142],"valid"],[[125143,126463],"disallowed"],[[126464,126464],"mapped",[1575]],[[126465,126465],"mapped",[1576]],[[126466,126466],"mapped",[1580]],[[126467,126467],"mapped",[1583]],[[126468,126468],"disallowed"],[[126469,126469],"mapped",[1608]],[[126470,126470],"mapped",[1586]],[[126471,126471],"mapped",[1581]],[[126472,126472],"mapped",[1591]],[[126473,126473],"mapped",[1610]],[[126474,126474],"mapped",[1603]],[[126475,126475],"mapped",[1604]],[[126476,126476],"mapped",[1605]],[[126477,126477],"mapped",[1606]],[[126478,126478],"mapped",[1587]],[[126479,126479],"mapped",[1593]],[[126480,126480],"mapped",[1601]],[[126481,126481],"mapped",[1589]],[[126482,126482],"mapped",[1602]],[[126483,126483],"mapped",[1585]],[[126484,126484],"mapped",[1588]],[[126485,126485],"mapped",[1578]],[[126486,126486],"mapped",[1579]],[[126487,126487],"mapped",[1582]],[[126488,126488],"mapped",[1584]],[[126489,126489],"mapped",[1590]],[[126490,126490],"mapped",[1592]],[[126491,126491],"mapped",[1594]],[[126492,126492],"mapped",[1646]],[[126493,126493],"mapped",[1722]],[[126494,126494],"mapped",[1697]],[[126495,126495],"mapped",[1647]],[[126496,126496],"disallowed"],[[126497,126497],"mapped",[1576]],[[126498,126498],"mapped",[1580]],[[126499,126499],"disallowed"],[[126500,126500],"mapped",[1607]],[[126501,126502],"disallowed"],[[126503,126503],"mapped",[1581]],[[126504,126504],"disallowed"],[[126505,126505],"mapped",[1610]],[[126506,126506],"mapped",[1603]],[[126507,126507],"mapped",[1604]],[[126508,126508],"mapped",[1605]],[[126509,126509],"mapped",[1606]],[[126510,126510],"mapped",[1587]],[[126511,126511],"mapped",[1593]],[[126512,126512],"mapped",[1601]],[[126513,126513],"mapped",[1589]],[[126514,126514],"mapped",[1602]],[[126515,126515],"disallowed"],[[126516,126516],"mapped",[1588]],[[126517,126517],"mapped",[1578]],[[126518,126518],"mapped",[1579]],[[126519,126519],"mapped",[1582]],[[126520,126520],"disallowed"],[[126521,126521],"mapped",[1590]],[[126522,126522],"disallowed"],[[126523,126523],"mapped",[1594]],[[126524,126529],"disallowed"],[[126530,126530],"mapped",[1580]],[[126531,126534],"disallowed"],[[126535,126535],"mapped",[1581]],[[126536,126536],"disallowed"],[[126537,126537],"mapped",[1610]],[[126538,126538],"disallowed"],[[126539,126539],"mapped",[1604]],[[126540,126540],"disallowed"],[[126541,126541],"mapped",[1606]],[[126542,126542],"mapped",[1587]],[[126543,126543],"mapped",[1593]],[[126544,126544],"disallowed"],[[126545,126545],"mapped",[1589]],[[126546,126546],"mapped",[1602]],[[126547,126547],"disallowed"],[[126548,126548],"mapped",[1588]],[[126549,126550],"disallowed"],[[126551,126551],"mapped",[1582]],[[126552,126552],"disallowed"],[[126553,126553],"mapped",[1590]],[[126554,126554],"disallowed"],[[126555,126555],"mapped",[1594]],[[126556,126556],"disallowed"],[[126557,126557],"mapped",[1722]],[[126558,126558],"disallowed"],[[126559,126559],"mapped",[1647]],[[126560,126560],"disallowed"],[[126561,126561],"mapped",[1576]],[[126562,126562],"mapped",[1580]],[[126563,126563],"disallowed"],[[126564,126564],"mapped",[1607]],[[126565,126566],"disallowed"],[[126567,126567],"mapped",[1581]],[[126568,126568],"mapped",[1591]],[[126569,126569],"mapped",[1610]],[[126570,126570],"mapped",[1603]],[[126571,126571],"disallowed"],[[126572,126572],"mapped",[1605]],[[126573,126573],"mapped",[1606]],[[126574,126574],"mapped",[1587]],[[126575,126575],"mapped",[1593]],[[126576,126576],"mapped",[1601]],[[126577,126577],"mapped",[1589]],[[126578,126578],"mapped",[1602]],[[126579,126579],"disallowed"],[[126580,126580],"mapped",[1588]],[[126581,126581],"mapped",[1578]],[[126582,126582],"mapped",[1579]],[[126583,126583],"mapped",[1582]],[[126584,126584],"disallowed"],[[126585,126585],"mapped",[1590]],[[126586,126586],"mapped",[1592]],[[126587,126587],"mapped",[1594]],[[126588,126588],"mapped",[1646]],[[126589,126589],"disallowed"],[[126590,126590],"mapped",[1697]],[[126591,126591],"disallowed"],[[126592,126592],"mapped",[1575]],[[126593,126593],"mapped",[1576]],[[126594,126594],"mapped",[1580]],[[126595,126595],"mapped",[1583]],[[126596,126596],"mapped",[1607]],[[126597,126597],"mapped",[1608]],[[126598,126598],"mapped",[1586]],[[126599,126599],"mapped",[1581]],[[126600,126600],"mapped",[1591]],[[126601,126601],"mapped",[1610]],[[126602,126602],"disallowed"],[[126603,126603],"mapped",[1604]],[[126604,126604],"mapped",[1605]],[[126605,126605],"mapped",[1606]],[[126606,126606],"mapped",[1587]],[[126607,126607],"mapped",[1593]],[[126608,126608],"mapped",[1601]],[[126609,126609],"mapped",[1589]],[[126610,126610],"mapped",[1602]],[[126611,126611],"mapped",[1585]],[[126612,126612],"mapped",[1588]],[[126613,126613],"mapped",[1578]],[[126614,126614],"mapped",[1579]],[[126615,126615],"mapped",[1582]],[[126616,126616],"mapped",[1584]],[[126617,126617],"mapped",[1590]],[[126618,126618],"mapped",[1592]],[[126619,126619],"mapped",[1594]],[[126620,126624],"disallowed"],[[126625,126625],"mapped",[1576]],[[126626,126626],"mapped",[1580]],[[126627,126627],"mapped",[1583]],[[126628,126628],"disallowed"],[[126629,126629],"mapped",[1608]],[[126630,126630],"mapped",[1586]],[[126631,126631],"mapped",[1581]],[[126632,126632],"mapped",[1591]],[[126633,126633],"mapped",[1610]],[[126634,126634],"disallowed"],[[126635,126635],"mapped",[1604]],[[126636,126636],"mapped",[1605]],[[126637,126637],"mapped",[1606]],[[126638,126638],"mapped",[1587]],[[126639,126639],"mapped",[1593]],[[126640,126640],"mapped",[1601]],[[126641,126641],"mapped",[1589]],[[126642,126642],"mapped",[1602]],[[126643,126643],"mapped",[1585]],[[126644,126644],"mapped",[1588]],[[126645,126645],"mapped",[1578]],[[126646,126646],"mapped",[1579]],[[126647,126647],"mapped",[1582]],[[126648,126648],"mapped",[1584]],[[126649,126649],"mapped",[1590]],[[126650,126650],"mapped",[1592]],[[126651,126651],"mapped",[1594]],[[126652,126703],"disallowed"],[[126704,126705],"valid",[],"NV8"],[[126706,126975],"disallowed"],[[126976,127019],"valid",[],"NV8"],[[127020,127023],"disallowed"],[[127024,127123],"valid",[],"NV8"],[[127124,127135],"disallowed"],[[127136,127150],"valid",[],"NV8"],[[127151,127152],"disallowed"],[[127153,127166],"valid",[],"NV8"],[[127167,127167],"valid",[],"NV8"],[[127168,127168],"disallowed"],[[127169,127183],"valid",[],"NV8"],[[127184,127184],"disallowed"],[[127185,127199],"valid",[],"NV8"],[[127200,127221],"valid",[],"NV8"],[[127222,127231],"disallowed"],[[127232,127232],"disallowed"],[[127233,127233],"disallowed_STD3_mapped",[48,44]],[[127234,127234],"disallowed_STD3_mapped",[49,44]],[[127235,127235],"disallowed_STD3_mapped",[50,44]],[[127236,127236],"disallowed_STD3_mapped",[51,44]],[[127237,127237],"disallowed_STD3_mapped",[52,44]],[[127238,127238],"disallowed_STD3_mapped",[53,44]],[[127239,127239],"disallowed_STD3_mapped",[54,44]],[[127240,127240],"disallowed_STD3_mapped",[55,44]],[[127241,127241],"disallowed_STD3_mapped",[56,44]],[[127242,127242],"disallowed_STD3_mapped",[57,44]],[[127243,127244],"valid",[],"NV8"],[[127245,127247],"disallowed"],[[127248,127248],"disallowed_STD3_mapped",[40,97,41]],[[127249,127249],"disallowed_STD3_mapped",[40,98,41]],[[127250,127250],"disallowed_STD3_mapped",[40,99,41]],[[127251,127251],"disallowed_STD3_mapped",[40,100,41]],[[127252,127252],"disallowed_STD3_mapped",[40,101,41]],[[127253,127253],"disallowed_STD3_mapped",[40,102,41]],[[127254,127254],"disallowed_STD3_mapped",[40,103,41]],[[127255,127255],"disallowed_STD3_mapped",[40,104,41]],[[127256,127256],"disallowed_STD3_mapped",[40,105,41]],[[127257,127257],"disallowed_STD3_mapped",[40,106,41]],[[127258,127258],"disallowed_STD3_mapped",[40,107,41]],[[127259,127259],"disallowed_STD3_mapped",[40,108,41]],[[127260,127260],"disallowed_STD3_mapped",[40,109,41]],[[127261,127261],"disallowed_STD3_mapped",[40,110,41]],[[127262,127262],"disallowed_STD3_mapped",[40,111,41]],[[127263,127263],"disallowed_STD3_mapped",[40,112,41]],[[127264,127264],"disallowed_STD3_mapped",[40,113,41]],[[127265,127265],"disallowed_STD3_mapped",[40,114,41]],[[127266,127266],"disallowed_STD3_mapped",[40,115,41]],[[127267,127267],"disallowed_STD3_mapped",[40,116,41]],[[127268,127268],"disallowed_STD3_mapped",[40,117,41]],[[127269,127269],"disallowed_STD3_mapped",[40,118,41]],[[127270,127270],"disallowed_STD3_mapped",[40,119,41]],[[127271,127271],"disallowed_STD3_mapped",[40,120,41]],[[127272,127272],"disallowed_STD3_mapped",[40,121,41]],[[127273,127273],"disallowed_STD3_mapped",[40,122,41]],[[127274,127274],"mapped",[12308,115,12309]],[[127275,127275],"mapped",[99]],[[127276,127276],"mapped",[114]],[[127277,127277],"mapped",[99,100]],[[127278,127278],"mapped",[119,122]],[[127279,127279],"disallowed"],[[127280,127280],"mapped",[97]],[[127281,127281],"mapped",[98]],[[127282,127282],"mapped",[99]],[[127283,127283],"mapped",[100]],[[127284,127284],"mapped",[101]],[[127285,127285],"mapped",[102]],[[127286,127286],"mapped",[103]],[[127287,127287],"mapped",[104]],[[127288,127288],"mapped",[105]],[[127289,127289],"mapped",[106]],[[127290,127290],"mapped",[107]],[[127291,127291],"mapped",[108]],[[127292,127292],"mapped",[109]],[[127293,127293],"mapped",[110]],[[127294,127294],"mapped",[111]],[[127295,127295],"mapped",[112]],[[127296,127296],"mapped",[113]],[[127297,127297],"mapped",[114]],[[127298,127298],"mapped",[115]],[[127299,127299],"mapped",[116]],[[127300,127300],"mapped",[117]],[[127301,127301],"mapped",[118]],[[127302,127302],"mapped",[119]],[[127303,127303],"mapped",[120]],[[127304,127304],"mapped",[121]],[[127305,127305],"mapped",[122]],[[127306,127306],"mapped",[104,118]],[[127307,127307],"mapped",[109,118]],[[127308,127308],"mapped",[115,100]],[[127309,127309],"mapped",[115,115]],[[127310,127310],"mapped",[112,112,118]],[[127311,127311],"mapped",[119,99]],[[127312,127318],"valid",[],"NV8"],[[127319,127319],"valid",[],"NV8"],[[127320,127326],"valid",[],"NV8"],[[127327,127327],"valid",[],"NV8"],[[127328,127337],"valid",[],"NV8"],[[127338,127338],"mapped",[109,99]],[[127339,127339],"mapped",[109,100]],[[127340,127343],"disallowed"],[[127344,127352],"valid",[],"NV8"],[[127353,127353],"valid",[],"NV8"],[[127354,127354],"valid",[],"NV8"],[[127355,127356],"valid",[],"NV8"],[[127357,127358],"valid",[],"NV8"],[[127359,127359],"valid",[],"NV8"],[[127360,127369],"valid",[],"NV8"],[[127370,127373],"valid",[],"NV8"],[[127374,127375],"valid",[],"NV8"],[[127376,127376],"mapped",[100,106]],[[127377,127386],"valid",[],"NV8"],[[127387,127461],"disallowed"],[[127462,127487],"valid",[],"NV8"],[[127488,127488],"mapped",[12411,12363]],[[127489,127489],"mapped",[12467,12467]],[[127490,127490],"mapped",[12469]],[[127491,127503],"disallowed"],[[127504,127504],"mapped",[25163]],[[127505,127505],"mapped",[23383]],[[127506,127506],"mapped",[21452]],[[127507,127507],"mapped",[12487]],[[127508,127508],"mapped",[20108]],[[127509,127509],"mapped",[22810]],[[127510,127510],"mapped",[35299]],[[127511,127511],"mapped",[22825]],[[127512,127512],"mapped",[20132]],[[127513,127513],"mapped",[26144]],[[127514,127514],"mapped",[28961]],[[127515,127515],"mapped",[26009]],[[127516,127516],"mapped",[21069]],[[127517,127517],"mapped",[24460]],[[127518,127518],"mapped",[20877]],[[127519,127519],"mapped",[26032]],[[127520,127520],"mapped",[21021]],[[127521,127521],"mapped",[32066]],[[127522,127522],"mapped",[29983]],[[127523,127523],"mapped",[36009]],[[127524,127524],"mapped",[22768]],[[127525,127525],"mapped",[21561]],[[127526,127526],"mapped",[28436]],[[127527,127527],"mapped",[25237]],[[127528,127528],"mapped",[25429]],[[127529,127529],"mapped",[19968]],[[127530,127530],"mapped",[19977]],[[127531,127531],"mapped",[36938]],[[127532,127532],"mapped",[24038]],[[127533,127533],"mapped",[20013]],[[127534,127534],"mapped",[21491]],[[127535,127535],"mapped",[25351]],[[127536,127536],"mapped",[36208]],[[127537,127537],"mapped",[25171]],[[127538,127538],"mapped",[31105]],[[127539,127539],"mapped",[31354]],[[127540,127540],"mapped",[21512]],[[127541,127541],"mapped",[28288]],[[127542,127542],"mapped",[26377]],[[127543,127543],"mapped",[26376]],[[127544,127544],"mapped",[30003]],[[127545,127545],"mapped",[21106]],[[127546,127546],"mapped",[21942]],[[127547,127551],"disallowed"],[[127552,127552],"mapped",[12308,26412,12309]],[[127553,127553],"mapped",[12308,19977,12309]],[[127554,127554],"mapped",[12308,20108,12309]],[[127555,127555],"mapped",[12308,23433,12309]],[[127556,127556],"mapped",[12308,28857,12309]],[[127557,127557],"mapped",[12308,25171,12309]],[[127558,127558],"mapped",[12308,30423,12309]],[[127559,127559],"mapped",[12308,21213,12309]],[[127560,127560],"mapped",[12308,25943,12309]],[[127561,127567],"disallowed"],[[127568,127568],"mapped",[24471]],[[127569,127569],"mapped",[21487]],[[127570,127743],"disallowed"],[[127744,127776],"valid",[],"NV8"],[[127777,127788],"valid",[],"NV8"],[[127789,127791],"valid",[],"NV8"],[[127792,127797],"valid",[],"NV8"],[[127798,127798],"valid",[],"NV8"],[[127799,127868],"valid",[],"NV8"],[[127869,127869],"valid",[],"NV8"],[[127870,127871],"valid",[],"NV8"],[[127872,127891],"valid",[],"NV8"],[[127892,127903],"valid",[],"NV8"],[[127904,127940],"valid",[],"NV8"],[[127941,127941],"valid",[],"NV8"],[[127942,127946],"valid",[],"NV8"],[[127947,127950],"valid",[],"NV8"],[[127951,127955],"valid",[],"NV8"],[[127956,127967],"valid",[],"NV8"],[[127968,127984],"valid",[],"NV8"],[[127985,127991],"valid",[],"NV8"],[[127992,127999],"valid",[],"NV8"],[[128000,128062],"valid",[],"NV8"],[[128063,128063],"valid",[],"NV8"],[[128064,128064],"valid",[],"NV8"],[[128065,128065],"valid",[],"NV8"],[[128066,128247],"valid",[],"NV8"],[[128248,128248],"valid",[],"NV8"],[[128249,128252],"valid",[],"NV8"],[[128253,128254],"valid",[],"NV8"],[[128255,128255],"valid",[],"NV8"],[[128256,128317],"valid",[],"NV8"],[[128318,128319],"valid",[],"NV8"],[[128320,128323],"valid",[],"NV8"],[[128324,128330],"valid",[],"NV8"],[[128331,128335],"valid",[],"NV8"],[[128336,128359],"valid",[],"NV8"],[[128360,128377],"valid",[],"NV8"],[[128378,128378],"disallowed"],[[128379,128419],"valid",[],"NV8"],[[128420,128420],"disallowed"],[[128421,128506],"valid",[],"NV8"],[[128507,128511],"valid",[],"NV8"],[[128512,128512],"valid",[],"NV8"],[[128513,128528],"valid",[],"NV8"],[[128529,128529],"valid",[],"NV8"],[[128530,128532],"valid",[],"NV8"],[[128533,128533],"valid",[],"NV8"],[[128534,128534],"valid",[],"NV8"],[[128535,128535],"valid",[],"NV8"],[[128536,128536],"valid",[],"NV8"],[[128537,128537],"valid",[],"NV8"],[[128538,128538],"valid",[],"NV8"],[[128539,128539],"valid",[],"NV8"],[[128540,128542],"valid",[],"NV8"],[[128543,128543],"valid",[],"NV8"],[[128544,128549],"valid",[],"NV8"],[[128550,128551],"valid",[],"NV8"],[[128552,128555],"valid",[],"NV8"],[[128556,128556],"valid",[],"NV8"],[[128557,128557],"valid",[],"NV8"],[[128558,128559],"valid",[],"NV8"],[[128560,128563],"valid",[],"NV8"],[[128564,128564],"valid",[],"NV8"],[[128565,128576],"valid",[],"NV8"],[[128577,128578],"valid",[],"NV8"],[[128579,128580],"valid",[],"NV8"],[[128581,128591],"valid",[],"NV8"],[[128592,128639],"valid",[],"NV8"],[[128640,128709],"valid",[],"NV8"],[[128710,128719],"valid",[],"NV8"],[[128720,128720],"valid",[],"NV8"],[[128721,128735],"disallowed"],[[128736,128748],"valid",[],"NV8"],[[128749,128751],"disallowed"],[[128752,128755],"valid",[],"NV8"],[[128756,128767],"disallowed"],[[128768,128883],"valid",[],"NV8"],[[128884,128895],"disallowed"],[[128896,128980],"valid",[],"NV8"],[[128981,129023],"disallowed"],[[129024,129035],"valid",[],"NV8"],[[129036,129039],"disallowed"],[[129040,129095],"valid",[],"NV8"],[[129096,129103],"disallowed"],[[129104,129113],"valid",[],"NV8"],[[129114,129119],"disallowed"],[[129120,129159],"valid",[],"NV8"],[[129160,129167],"disallowed"],[[129168,129197],"valid",[],"NV8"],[[129198,129295],"disallowed"],[[129296,129304],"valid",[],"NV8"],[[129305,129407],"disallowed"],[[129408,129412],"valid",[],"NV8"],[[129413,129471],"disallowed"],[[129472,129472],"valid",[],"NV8"],[[129473,131069],"disallowed"],[[131070,131071],"disallowed"],[[131072,173782],"valid"],[[173783,173823],"disallowed"],[[173824,177972],"valid"],[[177973,177983],"disallowed"],[[177984,178205],"valid"],[[178206,178207],"disallowed"],[[178208,183969],"valid"],[[183970,194559],"disallowed"],[[194560,194560],"mapped",[20029]],[[194561,194561],"mapped",[20024]],[[194562,194562],"mapped",[20033]],[[194563,194563],"mapped",[131362]],[[194564,194564],"mapped",[20320]],[[194565,194565],"mapped",[20398]],[[194566,194566],"mapped",[20411]],[[194567,194567],"mapped",[20482]],[[194568,194568],"mapped",[20602]],[[194569,194569],"mapped",[20633]],[[194570,194570],"mapped",[20711]],[[194571,194571],"mapped",[20687]],[[194572,194572],"mapped",[13470]],[[194573,194573],"mapped",[132666]],[[194574,194574],"mapped",[20813]],[[194575,194575],"mapped",[20820]],[[194576,194576],"mapped",[20836]],[[194577,194577],"mapped",[20855]],[[194578,194578],"mapped",[132380]],[[194579,194579],"mapped",[13497]],[[194580,194580],"mapped",[20839]],[[194581,194581],"mapped",[20877]],[[194582,194582],"mapped",[132427]],[[194583,194583],"mapped",[20887]],[[194584,194584],"mapped",[20900]],[[194585,194585],"mapped",[20172]],[[194586,194586],"mapped",[20908]],[[194587,194587],"mapped",[20917]],[[194588,194588],"mapped",[168415]],[[194589,194589],"mapped",[20981]],[[194590,194590],"mapped",[20995]],[[194591,194591],"mapped",[13535]],[[194592,194592],"mapped",[21051]],[[194593,194593],"mapped",[21062]],[[194594,194594],"mapped",[21106]],[[194595,194595],"mapped",[21111]],[[194596,194596],"mapped",[13589]],[[194597,194597],"mapped",[21191]],[[194598,194598],"mapped",[21193]],[[194599,194599],"mapped",[21220]],[[194600,194600],"mapped",[21242]],[[194601,194601],"mapped",[21253]],[[194602,194602],"mapped",[21254]],[[194603,194603],"mapped",[21271]],[[194604,194604],"mapped",[21321]],[[194605,194605],"mapped",[21329]],[[194606,194606],"mapped",[21338]],[[194607,194607],"mapped",[21363]],[[194608,194608],"mapped",[21373]],[[194609,194611],"mapped",[21375]],[[194612,194612],"mapped",[133676]],[[194613,194613],"mapped",[28784]],[[194614,194614],"mapped",[21450]],[[194615,194615],"mapped",[21471]],[[194616,194616],"mapped",[133987]],[[194617,194617],"mapped",[21483]],[[194618,194618],"mapped",[21489]],[[194619,194619],"mapped",[21510]],[[194620,194620],"mapped",[21662]],[[194621,194621],"mapped",[21560]],[[194622,194622],"mapped",[21576]],[[194623,194623],"mapped",[21608]],[[194624,194624],"mapped",[21666]],[[194625,194625],"mapped",[21750]],[[194626,194626],"mapped",[21776]],[[194627,194627],"mapped",[21843]],[[194628,194628],"mapped",[21859]],[[194629,194630],"mapped",[21892]],[[194631,194631],"mapped",[21913]],[[194632,194632],"mapped",[21931]],[[194633,194633],"mapped",[21939]],[[194634,194634],"mapped",[21954]],[[194635,194635],"mapped",[22294]],[[194636,194636],"mapped",[22022]],[[194637,194637],"mapped",[22295]],[[194638,194638],"mapped",[22097]],[[194639,194639],"mapped",[22132]],[[194640,194640],"mapped",[20999]],[[194641,194641],"mapped",[22766]],[[194642,194642],"mapped",[22478]],[[194643,194643],"mapped",[22516]],[[194644,194644],"mapped",[22541]],[[194645,194645],"mapped",[22411]],[[194646,194646],"mapped",[22578]],[[194647,194647],"mapped",[22577]],[[194648,194648],"mapped",[22700]],[[194649,194649],"mapped",[136420]],[[194650,194650],"mapped",[22770]],[[194651,194651],"mapped",[22775]],[[194652,194652],"mapped",[22790]],[[194653,194653],"mapped",[22810]],[[194654,194654],"mapped",[22818]],[[194655,194655],"mapped",[22882]],[[194656,194656],"mapped",[136872]],[[194657,194657],"mapped",[136938]],[[194658,194658],"mapped",[23020]],[[194659,194659],"mapped",[23067]],[[194660,194660],"mapped",[23079]],[[194661,194661],"mapped",[23000]],[[194662,194662],"mapped",[23142]],[[194663,194663],"mapped",[14062]],[[194664,194664],"disallowed"],[[194665,194665],"mapped",[23304]],[[194666,194667],"mapped",[23358]],[[194668,194668],"mapped",[137672]],[[194669,194669],"mapped",[23491]],[[194670,194670],"mapped",[23512]],[[194671,194671],"mapped",[23527]],[[194672,194672],"mapped",[23539]],[[194673,194673],"mapped",[138008]],[[194674,194674],"mapped",[23551]],[[194675,194675],"mapped",[23558]],[[194676,194676],"disallowed"],[[194677,194677],"mapped",[23586]],[[194678,194678],"mapped",[14209]],[[194679,194679],"mapped",[23648]],[[194680,194680],"mapped",[23662]],[[194681,194681],"mapped",[23744]],[[194682,194682],"mapped",[23693]],[[194683,194683],"mapped",[138724]],[[194684,194684],"mapped",[23875]],[[194685,194685],"mapped",[138726]],[[194686,194686],"mapped",[23918]],[[194687,194687],"mapped",[23915]],[[194688,194688],"mapped",[23932]],[[194689,194689],"mapped",[24033]],[[194690,194690],"mapped",[24034]],[[194691,194691],"mapped",[14383]],[[194692,194692],"mapped",[24061]],[[194693,194693],"mapped",[24104]],[[194694,194694],"mapped",[24125]],[[194695,194695],"mapped",[24169]],[[194696,194696],"mapped",[14434]],[[194697,194697],"mapped",[139651]],[[194698,194698],"mapped",[14460]],[[194699,194699],"mapped",[24240]],[[194700,194700],"mapped",[24243]],[[194701,194701],"mapped",[24246]],[[194702,194702],"mapped",[24266]],[[194703,194703],"mapped",[172946]],[[194704,194704],"mapped",[24318]],[[194705,194706],"mapped",[140081]],[[194707,194707],"mapped",[33281]],[[194708,194709],"mapped",[24354]],[[194710,194710],"mapped",[14535]],[[194711,194711],"mapped",[144056]],[[194712,194712],"mapped",[156122]],[[194713,194713],"mapped",[24418]],[[194714,194714],"mapped",[24427]],[[194715,194715],"mapped",[14563]],[[194716,194716],"mapped",[24474]],[[194717,194717],"mapped",[24525]],[[194718,194718],"mapped",[24535]],[[194719,194719],"mapped",[24569]],[[194720,194720],"mapped",[24705]],[[194721,194721],"mapped",[14650]],[[194722,194722],"mapped",[14620]],[[194723,194723],"mapped",[24724]],[[194724,194724],"mapped",[141012]],[[194725,194725],"mapped",[24775]],[[194726,194726],"mapped",[24904]],[[194727,194727],"mapped",[24908]],[[194728,194728],"mapped",[24910]],[[194729,194729],"mapped",[24908]],[[194730,194730],"mapped",[24954]],[[194731,194731],"mapped",[24974]],[[194732,194732],"mapped",[25010]],[[194733,194733],"mapped",[24996]],[[194734,194734],"mapped",[25007]],[[194735,194735],"mapped",[25054]],[[194736,194736],"mapped",[25074]],[[194737,194737],"mapped",[25078]],[[194738,194738],"mapped",[25104]],[[194739,194739],"mapped",[25115]],[[194740,194740],"mapped",[25181]],[[194741,194741],"mapped",[25265]],[[194742,194742],"mapped",[25300]],[[194743,194743],"mapped",[25424]],[[194744,194744],"mapped",[142092]],[[194745,194745],"mapped",[25405]],[[194746,194746],"mapped",[25340]],[[194747,194747],"mapped",[25448]],[[194748,194748],"mapped",[25475]],[[194749,194749],"mapped",[25572]],[[194750,194750],"mapped",[142321]],[[194751,194751],"mapped",[25634]],[[194752,194752],"mapped",[25541]],[[194753,194753],"mapped",[25513]],[[194754,194754],"mapped",[14894]],[[194755,194755],"mapped",[25705]],[[194756,194756],"mapped",[25726]],[[194757,194757],"mapped",[25757]],[[194758,194758],"mapped",[25719]],[[194759,194759],"mapped",[14956]],[[194760,194760],"mapped",[25935]],[[194761,194761],"mapped",[25964]],[[194762,194762],"mapped",[143370]],[[194763,194763],"mapped",[26083]],[[194764,194764],"mapped",[26360]],[[194765,194765],"mapped",[26185]],[[194766,194766],"mapped",[15129]],[[194767,194767],"mapped",[26257]],[[194768,194768],"mapped",[15112]],[[194769,194769],"mapped",[15076]],[[194770,194770],"mapped",[20882]],[[194771,194771],"mapped",[20885]],[[194772,194772],"mapped",[26368]],[[194773,194773],"mapped",[26268]],[[194774,194774],"mapped",[32941]],[[194775,194775],"mapped",[17369]],[[194776,194776],"mapped",[26391]],[[194777,194777],"mapped",[26395]],[[194778,194778],"mapped",[26401]],[[194779,194779],"mapped",[26462]],[[194780,194780],"mapped",[26451]],[[194781,194781],"mapped",[144323]],[[194782,194782],"mapped",[15177]],[[194783,194783],"mapped",[26618]],[[194784,194784],"mapped",[26501]],[[194785,194785],"mapped",[26706]],[[194786,194786],"mapped",[26757]],[[194787,194787],"mapped",[144493]],[[194788,194788],"mapped",[26766]],[[194789,194789],"mapped",[26655]],[[194790,194790],"mapped",[26900]],[[194791,194791],"mapped",[15261]],[[194792,194792],"mapped",[26946]],[[194793,194793],"mapped",[27043]],[[194794,194794],"mapped",[27114]],[[194795,194795],"mapped",[27304]],[[194796,194796],"mapped",[145059]],[[194797,194797],"mapped",[27355]],[[194798,194798],"mapped",[15384]],[[194799,194799],"mapped",[27425]],[[194800,194800],"mapped",[145575]],[[194801,194801],"mapped",[27476]],[[194802,194802],"mapped",[15438]],[[194803,194803],"mapped",[27506]],[[194804,194804],"mapped",[27551]],[[194805,194805],"mapped",[27578]],[[194806,194806],"mapped",[27579]],[[194807,194807],"mapped",[146061]],[[194808,194808],"mapped",[138507]],[[194809,194809],"mapped",[146170]],[[194810,194810],"mapped",[27726]],[[194811,194811],"mapped",[146620]],[[194812,194812],"mapped",[27839]],[[194813,194813],"mapped",[27853]],[[194814,194814],"mapped",[27751]],[[194815,194815],"mapped",[27926]],[[194816,194816],"mapped",[27966]],[[194817,194817],"mapped",[28023]],[[194818,194818],"mapped",[27969]],[[194819,194819],"mapped",[28009]],[[194820,194820],"mapped",[28024]],[[194821,194821],"mapped",[28037]],[[194822,194822],"mapped",[146718]],[[194823,194823],"mapped",[27956]],[[194824,194824],"mapped",[28207]],[[194825,194825],"mapped",[28270]],[[194826,194826],"mapped",[15667]],[[194827,194827],"mapped",[28363]],[[194828,194828],"mapped",[28359]],[[194829,194829],"mapped",[147153]],[[194830,194830],"mapped",[28153]],[[194831,194831],"mapped",[28526]],[[194832,194832],"mapped",[147294]],[[194833,194833],"mapped",[147342]],[[194834,194834],"mapped",[28614]],[[194835,194835],"mapped",[28729]],[[194836,194836],"mapped",[28702]],[[194837,194837],"mapped",[28699]],[[194838,194838],"mapped",[15766]],[[194839,194839],"mapped",[28746]],[[194840,194840],"mapped",[28797]],[[194841,194841],"mapped",[28791]],[[194842,194842],"mapped",[28845]],[[194843,194843],"mapped",[132389]],[[194844,194844],"mapped",[28997]],[[194845,194845],"mapped",[148067]],[[194846,194846],"mapped",[29084]],[[194847,194847],"disallowed"],[[194848,194848],"mapped",[29224]],[[194849,194849],"mapped",[29237]],[[194850,194850],"mapped",[29264]],[[194851,194851],"mapped",[149000]],[[194852,194852],"mapped",[29312]],[[194853,194853],"mapped",[29333]],[[194854,194854],"mapped",[149301]],[[194855,194855],"mapped",[149524]],[[194856,194856],"mapped",[29562]],[[194857,194857],"mapped",[29579]],[[194858,194858],"mapped",[16044]],[[194859,194859],"mapped",[29605]],[[194860,194861],"mapped",[16056]],[[194862,194862],"mapped",[29767]],[[194863,194863],"mapped",[29788]],[[194864,194864],"mapped",[29809]],[[194865,194865],"mapped",[29829]],[[194866,194866],"mapped",[29898]],[[194867,194867],"mapped",[16155]],[[194868,194868],"mapped",[29988]],[[194869,194869],"mapped",[150582]],[[194870,194870],"mapped",[30014]],[[194871,194871],"mapped",[150674]],[[194872,194872],"mapped",[30064]],[[194873,194873],"mapped",[139679]],[[194874,194874],"mapped",[30224]],[[194875,194875],"mapped",[151457]],[[194876,194876],"mapped",[151480]],[[194877,194877],"mapped",[151620]],[[194878,194878],"mapped",[16380]],[[194879,194879],"mapped",[16392]],[[194880,194880],"mapped",[30452]],[[194881,194881],"mapped",[151795]],[[194882,194882],"mapped",[151794]],[[194883,194883],"mapped",[151833]],[[194884,194884],"mapped",[151859]],[[194885,194885],"mapped",[30494]],[[194886,194887],"mapped",[30495]],[[194888,194888],"mapped",[30538]],[[194889,194889],"mapped",[16441]],[[194890,194890],"mapped",[30603]],[[194891,194891],"mapped",[16454]],[[194892,194892],"mapped",[16534]],[[194893,194893],"mapped",[152605]],[[194894,194894],"mapped",[30798]],[[194895,194895],"mapped",[30860]],[[194896,194896],"mapped",[30924]],[[194897,194897],"mapped",[16611]],[[194898,194898],"mapped",[153126]],[[194899,194899],"mapped",[31062]],[[194900,194900],"mapped",[153242]],[[194901,194901],"mapped",[153285]],[[194902,194902],"mapped",[31119]],[[194903,194903],"mapped",[31211]],[[194904,194904],"mapped",[16687]],[[194905,194905],"mapped",[31296]],[[194906,194906],"mapped",[31306]],[[194907,194907],"mapped",[31311]],[[194908,194908],"mapped",[153980]],[[194909,194910],"mapped",[154279]],[[194911,194911],"disallowed"],[[194912,194912],"mapped",[16898]],[[194913,194913],"mapped",[154539]],[[194914,194914],"mapped",[31686]],[[194915,194915],"mapped",[31689]],[[194916,194916],"mapped",[16935]],[[194917,194917],"mapped",[154752]],[[194918,194918],"mapped",[31954]],[[194919,194919],"mapped",[17056]],[[194920,194920],"mapped",[31976]],[[194921,194921],"mapped",[31971]],[[194922,194922],"mapped",[32000]],[[194923,194923],"mapped",[155526]],[[194924,194924],"mapped",[32099]],[[194925,194925],"mapped",[17153]],[[194926,194926],"mapped",[32199]],[[194927,194927],"mapped",[32258]],[[194928,194928],"mapped",[32325]],[[194929,194929],"mapped",[17204]],[[194930,194930],"mapped",[156200]],[[194931,194931],"mapped",[156231]],[[194932,194932],"mapped",[17241]],[[194933,194933],"mapped",[156377]],[[194934,194934],"mapped",[32634]],[[194935,194935],"mapped",[156478]],[[194936,194936],"mapped",[32661]],[[194937,194937],"mapped",[32762]],[[194938,194938],"mapped",[32773]],[[194939,194939],"mapped",[156890]],[[194940,194940],"mapped",[156963]],[[194941,194941],"mapped",[32864]],[[194942,194942],"mapped",[157096]],[[194943,194943],"mapped",[32880]],[[194944,194944],"mapped",[144223]],[[194945,194945],"mapped",[17365]],[[194946,194946],"mapped",[32946]],[[194947,194947],"mapped",[33027]],[[194948,194948],"mapped",[17419]],[[194949,194949],"mapped",[33086]],[[194950,194950],"mapped",[23221]],[[194951,194951],"mapped",[157607]],[[194952,194952],"mapped",[157621]],[[194953,194953],"mapped",[144275]],[[194954,194954],"mapped",[144284]],[[194955,194955],"mapped",[33281]],[[194956,194956],"mapped",[33284]],[[194957,194957],"mapped",[36766]],[[194958,194958],"mapped",[17515]],[[194959,194959],"mapped",[33425]],[[194960,194960],"mapped",[33419]],[[194961,194961],"mapped",[33437]],[[194962,194962],"mapped",[21171]],[[194963,194963],"mapped",[33457]],[[194964,194964],"mapped",[33459]],[[194965,194965],"mapped",[33469]],[[194966,194966],"mapped",[33510]],[[194967,194967],"mapped",[158524]],[[194968,194968],"mapped",[33509]],[[194969,194969],"mapped",[33565]],[[194970,194970],"mapped",[33635]],[[194971,194971],"mapped",[33709]],[[194972,194972],"mapped",[33571]],[[194973,194973],"mapped",[33725]],[[194974,194974],"mapped",[33767]],[[194975,194975],"mapped",[33879]],[[194976,194976],"mapped",[33619]],[[194977,194977],"mapped",[33738]],[[194978,194978],"mapped",[33740]],[[194979,194979],"mapped",[33756]],[[194980,194980],"mapped",[158774]],[[194981,194981],"mapped",[159083]],[[194982,194982],"mapped",[158933]],[[194983,194983],"mapped",[17707]],[[194984,194984],"mapped",[34033]],[[194985,194985],"mapped",[34035]],[[194986,194986],"mapped",[34070]],[[194987,194987],"mapped",[160714]],[[194988,194988],"mapped",[34148]],[[194989,194989],"mapped",[159532]],[[194990,194990],"mapped",[17757]],[[194991,194991],"mapped",[17761]],[[194992,194992],"mapped",[159665]],[[194993,194993],"mapped",[159954]],[[194994,194994],"mapped",[17771]],[[194995,194995],"mapped",[34384]],[[194996,194996],"mapped",[34396]],[[194997,194997],"mapped",[34407]],[[194998,194998],"mapped",[34409]],[[194999,194999],"mapped",[34473]],[[195000,195000],"mapped",[34440]],[[195001,195001],"mapped",[34574]],[[195002,195002],"mapped",[34530]],[[195003,195003],"mapped",[34681]],[[195004,195004],"mapped",[34600]],[[195005,195005],"mapped",[34667]],[[195006,195006],"mapped",[34694]],[[195007,195007],"disallowed"],[[195008,195008],"mapped",[34785]],[[195009,195009],"mapped",[34817]],[[195010,195010],"mapped",[17913]],[[195011,195011],"mapped",[34912]],[[195012,195012],"mapped",[34915]],[[195013,195013],"mapped",[161383]],[[195014,195014],"mapped",[35031]],[[195015,195015],"mapped",[35038]],[[195016,195016],"mapped",[17973]],[[195017,195017],"mapped",[35066]],[[195018,195018],"mapped",[13499]],[[195019,195019],"mapped",[161966]],[[195020,195020],"mapped",[162150]],[[195021,195021],"mapped",[18110]],[[195022,195022],"mapped",[18119]],[[195023,195023],"mapped",[35488]],[[195024,195024],"mapped",[35565]],[[195025,195025],"mapped",[35722]],[[195026,195026],"mapped",[35925]],[[195027,195027],"mapped",[162984]],[[195028,195028],"mapped",[36011]],[[195029,195029],"mapped",[36033]],[[195030,195030],"mapped",[36123]],[[195031,195031],"mapped",[36215]],[[195032,195032],"mapped",[163631]],[[195033,195033],"mapped",[133124]],[[195034,195034],"mapped",[36299]],[[195035,195035],"mapped",[36284]],[[195036,195036],"mapped",[36336]],[[195037,195037],"mapped",[133342]],[[195038,195038],"mapped",[36564]],[[195039,195039],"mapped",[36664]],[[195040,195040],"mapped",[165330]],[[195041,195041],"mapped",[165357]],[[195042,195042],"mapped",[37012]],[[195043,195043],"mapped",[37105]],[[195044,195044],"mapped",[37137]],[[195045,195045],"mapped",[165678]],[[195046,195046],"mapped",[37147]],[[195047,195047],"mapped",[37432]],[[195048,195048],"mapped",[37591]],[[195049,195049],"mapped",[37592]],[[195050,195050],"mapped",[37500]],[[195051,195051],"mapped",[37881]],[[195052,195052],"mapped",[37909]],[[195053,195053],"mapped",[166906]],[[195054,195054],"mapped",[38283]],[[195055,195055],"mapped",[18837]],[[195056,195056],"mapped",[38327]],[[195057,195057],"mapped",[167287]],[[195058,195058],"mapped",[18918]],[[195059,195059],"mapped",[38595]],[[195060,195060],"mapped",[23986]],[[195061,195061],"mapped",[38691]],[[195062,195062],"mapped",[168261]],[[195063,195063],"mapped",[168474]],[[195064,195064],"mapped",[19054]],[[195065,195065],"mapped",[19062]],[[195066,195066],"mapped",[38880]],[[195067,195067],"mapped",[168970]],[[195068,195068],"mapped",[19122]],[[195069,195069],"mapped",[169110]],[[195070,195071],"mapped",[38923]],[[195072,195072],"mapped",[38953]],[[195073,195073],"mapped",[169398]],[[195074,195074],"mapped",[39138]],[[195075,195075],"mapped",[19251]],[[195076,195076],"mapped",[39209]],[[195077,195077],"mapped",[39335]],[[195078,195078],"mapped",[39362]],[[195079,195079],"mapped",[39422]],[[195080,195080],"mapped",[19406]],[[195081,195081],"mapped",[170800]],[[195082,195082],"mapped",[39698]],[[195083,195083],"mapped",[40000]],[[195084,195084],"mapped",[40189]],[[195085,195085],"mapped",[19662]],[[195086,195086],"mapped",[19693]],[[195087,195087],"mapped",[40295]],[[195088,195088],"mapped",[172238]],[[195089,195089],"mapped",[19704]],[[195090,195090],"mapped",[172293]],[[195091,195091],"mapped",[172558]],[[195092,195092],"mapped",[172689]],[[195093,195093],"mapped",[40635]],[[195094,195094],"mapped",[19798]],[[195095,195095],"mapped",[40697]],[[195096,195096],"mapped",[40702]],[[195097,195097],"mapped",[40709]],[[195098,195098],"mapped",[40719]],[[195099,195099],"mapped",[40726]],[[195100,195100],"mapped",[40763]],[[195101,195101],"mapped",[173568]],[[195102,196605],"disallowed"],[[196606,196607],"disallowed"],[[196608,262141],"disallowed"],[[262142,262143],"disallowed"],[[262144,327677],"disallowed"],[[327678,327679],"disallowed"],[[327680,393213],"disallowed"],[[393214,393215],"disallowed"],[[393216,458749],"disallowed"],[[458750,458751],"disallowed"],[[458752,524285],"disallowed"],[[524286,524287],"disallowed"],[[524288,589821],"disallowed"],[[589822,589823],"disallowed"],[[589824,655357],"disallowed"],[[655358,655359],"disallowed"],[[655360,720893],"disallowed"],[[720894,720895],"disallowed"],[[720896,786429],"disallowed"],[[786430,786431],"disallowed"],[[786432,851965],"disallowed"],[[851966,851967],"disallowed"],[[851968,917501],"disallowed"],[[917502,917503],"disallowed"],[[917504,917504],"disallowed"],[[917505,917505],"disallowed"],[[917506,917535],"disallowed"],[[917536,917631],"disallowed"],[[917632,917759],"disallowed"],[[917760,917999],"ignored"],[[918000,983037],"disallowed"],[[983038,983039],"disallowed"],[[983040,1048573],"disallowed"],[[1048574,1048575],"disallowed"],[[1048576,1114109],"disallowed"],[[1114110,1114111],"disallowed"]]')})),x.register("7JW2J",((e,t)=>{function i(e){var a;const{requestOptions:t,tracingOptions:i}=e;let s=o.__rest(e,["requestOptions","tracingOptions"]);return t&&(s=Object.assign(Object.assign({},s),t)),i&&(s.tracingContext=i.tracingContext,s.spanOptions=null===(a=i)||void 0===a?void 0:a.spanOptions),s}a(e.exports,"operationOptionsToRequestOptionsBase",(()=>i));var o=x("hEmCq")})),x.register("eg2Jn",(function(e,t){function i(e,a){let t;return"string"==typeof e?t=e:(t=a(),"function"==typeof e&&(t=e(t))),t}function o(e,a,t,i){return s(e,a,t.parameterPath,t.mapper,i)}function s(e,a,t,i,o){var n;let p;"string"==typeof t&&(t=[t]);const d=null===(n=a.options)||void 0===n?void 0:n.serializerOptions;if(Array.isArray(t)){if(t.length>0){if(i.isConstant)p=i.defaultValue;else{let o=r(a,t);o.propertyFound||(o=r(e,t));let s=!1;o.propertyFound||(s=i.required||"options"===t[0]&&2===t.length),p=s?i.defaultValue:o.propertyValue}const s=h.getPathStringFromParameterPath(t,i);o.serialize(i,p,s,d)}}else{i.required&&(p={});for(const r in t){const n=i.type.modelProperties[r],l=t[r],m=s(e,a,l,n,o),c=h.getPathStringFromParameterPath(l,n);o.serialize(n,m,c,d),null!=m&&(p||(p={}),p[r]=m)}}return p}function r(e,a){const t={propertyFound:!1};let i=0;for(;a.length>i;++i){const t=a[i];if(null==e||!(t in e))break;e=e[t]}return i===a.length&&(t.propertyValue=e,t.propertyFound=!0),t}function n(e,a){const t=e.parsedHeaders,i=a&&a.bodyMapper,o=a=>Object.defineProperty(a,"_response",{value:e});if(i){const a=i.type.name;if("Stream"===a)return o(Object.assign(Object.assign({},t),{blobBody:e.blobBody,readableStreamBody:e.readableStreamBody}));const s="Composite"===a&&i.type.modelProperties||{},r=Object.keys(s).some((e=>""===s[e].serializedName));if("Sequence"===a||r){const a=[...e.parsedBody||[]];for(const t of Object.keys(s))s[t].serializedName&&(a[t]=e.parsedBody[t]);if(t)for(const e of Object.keys(t))a[e]=t[e];return o(a),a}if("Composite"===a||"Dictionary"===a)return o(Object.assign(Object.assign({},t),e.parsedBody))}return i||"HEAD"===e.request.method||p.isPrimitiveType(e.parsedBody)?o(Object.assign(Object.assign({},t),{body:e.parsedBody})):o(Object.assign(Object.assign({},t),e.parsedBody))}a(e.exports,"ServiceClient",(()=>D));var p=x("aQqza"),d=x("hAVxy"),l=x("ZMfJZ"),m=(x("2EHau"),x("7y0yt")),c=x("iFYKn"),u=x("4tLWw"),h=x("kSGbF"),g=x("kOeF9"),f=x("lgRlU"),y=x("hwe43"),v=x("kCpHd"),b=(p=x("aQqza"),x("avTWh")),w=x("fyICy"),N=x("cZdIl"),k=x("8asXx"),S=(k=x("8asXx"),x("kTuAS")),j=(x("d3CVQ"),x("1tJzf")),C=x("sCRBT"),T=x("kZQvg"),P=(x("cN4CY"),x("h6UBU")),E=x("5w2IO"),z=x("2q3z1"),_=x("4sZaV"),O=x("gCqkm"),R=x("aRjgH");x("q4uRL");class D{constructor(e,a){let t;if(a||(a={}),this._withCredentials=a.withCredentials||!1,this._httpClient=a.httpClient||C.getCachedDefaultHttpClient(),this._requestPolicyOptions=new y.RequestPolicyOptions(a.httpPipelineLogger),Array.isArray(a.requestPolicyFactories))T.logger.info("ServiceClient: using custom request policies"),t=a.requestPolicyFactories;else{let o;if(b.isTokenCredential(e)){T.logger.info("ServiceClient: creating bearer token authentication policy from provided credentials");const t=()=>{let t;const i=this,o=a;return{create(a,s){const r=((e,a)=>{if(null==e?void 0:e.credentialScopes){const a=e.credentialScopes;return Array.isArray(a)?a.map((e=>""+new $hr5R1.URL(e))):""+new $hr5R1.URL(a)}if(a)return a+"/.default"})(o,i.baseUri);if(!r)throw Error("When using credential, the ServiceClient must contain a baseUri or a credentialScopes in ServiceClientOptions. Unable to create a bearerTokenAuthenticationPolicy");return null==t&&(t=S.bearerTokenAuthenticationPolicy(e,r)),t.create(a,s)}}};o=t()}else if(e&&"function"==typeof e.signRequest)T.logger.info("ServiceClient: creating signing policy from provided credentials"),o=z.signingPolicy(e);else if(null!=e)throw Error("The credentials argument must implement the TokenCredential interface");if(T.logger.info("ServiceClient: using default request policies"),t=((e,a)=>{const t=[];a.generateClientRequestIdHeader&&t.push(j.generateClientRequestIdPolicy(a.clientRequestIdHeaderName)),e&&t.push(e);const o=i(a.userAgentHeaderName,w.getDefaultUserAgentHeaderName),s=i(a.userAgent,w.getDefaultUserAgentValue);return o&&s&&t.push(w.userAgentPolicy({key:o,value:s})),t.push(m.redirectPolicy()),t.push(E.rpRegistrationPolicy(a.rpRegistrationRetryTimeout)),a.noRetryPolicy||(t.push(c.exponentialRetryPolicy()),t.push(O.systemErrorRetryPolicy()),t.push(R.throttlingRetryPolicy())),t.push(l.deserializationPolicy(a.deserializationContentTypes)),p.isNode&&t.push(P.proxyPolicy(a.proxySettings)),t.push(u.logPolicy({logger:T.logger.info})),t})(o,a),a.requestPolicyFactories){const e=a.requestPolicyFactories(t);e&&(t=e)}}this._requestPolicyFactories=t}sendRequest(e){if(null==e||"object"!=typeof e)throw Error("options cannot be null or undefined and it must be of type object.");let a;try{f.isWebResourceLike(e)?(e.validateRequestProperties(),a=e):(a=new f.WebResource,a=a.prepare(e))}catch(e){return Promise.reject(e)}let t=this._httpClient;if(this._requestPolicyFactories&&this._requestPolicyFactories.length>0)for(let e=this._requestPolicyFactories.length-1;e>=0;--e)t=this._requestPolicyFactories[e].create(t,this._requestPolicyOptions);return t.sendRequest(a)}async sendOperationRequest(e,a,t){var i;"function"==typeof e.options&&(t=e.options,e.options=void 0);const s=null===(i=e.options)||void 0===i?void 0:i.serializerOptions,r=new f.WebResource;let l;try{const t=a.baseUrl||this.baseUri;if(!t)throw Error("If operationSpec.baseUrl is not specified, then the ServiceClient must have a baseUri string property that contains the base URL to use.");r.method=a.httpMethod,r.operationSpec=a;const i=k.URLBuilder.parse(t);if(a.path&&i.appendPath(a.path),a.urlParameters&&a.urlParameters.length>0)for(const t of a.urlParameters){let r=o(this,e,t,a.serializer);r=a.serializer.serialize(t.mapper,r,h.getPathStringFromParameter(t),s),t.skipEncoding||(r=encodeURIComponent(r)),i.replaceAll(`{${t.mapper.serializedName||h.getPathStringFromParameter(t)}}`,r)}if(a.queryParameters&&a.queryParameters.length>0)for(const t of a.queryParameters){let r=o(this,e,t,a.serializer);if(null!=r){if(r=a.serializer.serialize(t.mapper,r,h.getPathStringFromParameter(t),s),null!=t.collectionFormat)if(t.collectionFormat===N.QueryCollectionFormat.Multi){if(0===r.length)continue;for(const e in r){const a=r[e];r[e]=null==a?"":""+a}}else t.collectionFormat!==N.QueryCollectionFormat.Ssv&&t.collectionFormat!==N.QueryCollectionFormat.Tsv||(r=r.join(t.collectionFormat));if(!t.skipEncoding)if(Array.isArray(r))for(const e in r)null!=r[e]&&(r[e]=encodeURIComponent(r[e]));else r=encodeURIComponent(r);null!=t.collectionFormat&&t.collectionFormat!==N.QueryCollectionFormat.Multi&&t.collectionFormat!==N.QueryCollectionFormat.Ssv&&t.collectionFormat!==N.QueryCollectionFormat.Tsv&&(r=r.join(t.collectionFormat)),i.setQueryParameter(t.mapper.serializedName||h.getPathStringFromParameter(t),r)}}r.url=""+i;const m=a.contentType||this.requestContentType;if(m&&a.requestBody&&r.headers.set("Content-Type",m),a.headerParameters)for(const t of a.headerParameters){let i=o(this,e,t,a.serializer);if(null!=i){i=a.serializer.serialize(t.mapper,i,h.getPathStringFromParameter(t),s);const e=t.mapper.headerCollectionPrefix;if(e)for(const a of Object.keys(i))r.headers.set(e+a,i[a]);else r.headers.set(t.mapper.serializedName||h.getPathStringFromParameter(t),i)}}const c=e.options;if(c){if(c.customHeaders)for(const e in c.customHeaders)r.headers.set(e,c.customHeaders[e]);c.abortSignal&&(r.abortSignal=c.abortSignal),c.timeout&&(r.timeout=c.timeout),c.onUploadProgress&&(r.onUploadProgress=c.onUploadProgress),c.onDownloadProgress&&(r.onDownloadProgress=c.onDownloadProgress),c.spanOptions&&(r.spanOptions=c.spanOptions),c.tracingContext&&(r.tracingContext=c.tracingContext),null!=c.shouldDeserialize&&(r.shouldDeserialize=c.shouldDeserialize)}let u,f;r.withCredentials=this._withCredentials,((e,a,t,i)=>{var s,r,n,l,m,c;const u=null!==(r=null===(s=t.options)||void 0===s?void 0:s.serializerOptions)&&void 0!==r?r:{},g={rootName:null!==(n=u.rootName)&&void 0!==n?n:"",includeRoot:null!==(l=u.includeRoot)&&void 0!==l&&l,xmlCharKey:null!==(m=u.xmlCharKey)&&void 0!==m?m:v.XML_CHARKEY},f=u.xmlCharKey;if(i.requestBody&&i.requestBody.mapper){a.body=o(e,t,i.requestBody,i.serializer);const s=i.requestBody.mapper,{required:r,xmlName:n,xmlElementName:l,serializedName:m,xmlNamespace:u,xmlNamespacePrefix:y}=s,b=s.type.name;try{if(null!=a.body||r){const e=h.getPathStringFromParameter(i.requestBody);a.body=i.serializer.serialize(s,a.body,e,g);const t=b===d.MapperType.Stream;if(i.isXML){const e=y?"xmlns:"+y:"xmlns",i=((e,a,t,i,o)=>{if(e&&!["Composite","Sequence","Dictionary"].includes(t)){const t={};return t[o.xmlCharKey]=i,t[v.XML_ATTRKEY]={[a]:e},t}return i})(u,e,b,a.body,g);b===d.MapperType.Sequence?a.body=_.stringifyXML(p.prepareXMLRootList(i,l||n||m,e,u),{rootName:n||m,xmlCharKey:f}):t||(a.body=_.stringifyXML(i,{rootName:n||m,xmlCharKey:f}))}else{if(b===d.MapperType.String&&((null===(c=i.contentType)||void 0===c?void 0:c.match("text/plain"))||"text"===i.mediaType))return;t||(a.body=JSON.stringify(a.body))}}}catch(e){throw Error(`Error "${e.message}" occurred in serializing the payload - ${JSON.stringify(m,void 0," ")}.`)}}else if(i.formDataParameters&&i.formDataParameters.length>0){a.formData={};for(const s of i.formDataParameters){const r=o(e,t,s,i.serializer);if(null!=r){const e=s.mapper.serializedName||h.getPathStringFromParameter(s);a.formData[e]=i.serializer.serialize(s.mapper,r,h.getPathStringFromParameter(s),g)}}}})(this,r,e,a),void 0===r.streamResponseStatusCodes&&(r.streamResponseStatusCodes=g.getStreamResponseStatusCodes(a));try{u=await this.sendRequest(r)}catch(e){f=e}f?(f.response&&(f.details=n(f.response,a.responses[f.statusCode]||a.responses.default)),l=Promise.reject(f)):l=Promise.resolve(n(u,a.responses[u.status]))}catch(e){l=Promise.reject(e)}const m=t;return m&&l.then((e=>m(null,e._response.parsedBody,e._response.request,e._response))).catch((e=>m(e))),l}}})),x.register("hAVxy",(function(e,t){function i(e){const a=[];let t="";if(e){const i=e.split(".");for(const e of i)"\\"===e.charAt(e.length-1)?t+=e.substr(0,e.length-1)+".":(t+=e,a.push(t),t="")}return a}function o(e,a,t){const i=a.type.className;if(!i)throw Error(`Class name for model "${t}" is not provided in the mapper "${JSON.stringify(a,void 0,2)}".`);return e.modelMappers[i]}function s(e,a,t){let i=a.type.modelProperties;if(!i){const s=o(e,a,t);if(!s)throw Error(`mapper() cannot be null or undefined for model "${a.type.className}".`);if(i=null==s?void 0:s.type.modelProperties,!i)throw Error(`modelProperties cannot be null or undefined in the mapper "${JSON.stringify(s)}" of type "${a.type.className}" for object "${t}".`)}return i}function r(e,a,t,i){if(!t||!e.xmlNamespace)return a;const o={[e.xmlNamespacePrefix?"xmlns:"+e.xmlNamespacePrefix:"xmlns"]:e.xmlNamespace};if(["Composite"].includes(e.type.name)){if(a[u.XML_ATTRKEY])return a;{const e=Object.assign({},a);return e[u.XML_ATTRKEY]=o,e}}const s={};return s[i.xmlCharKey]=a,s[u.XML_ATTRKEY]=o,s}function n(e,a){return[u.XML_ATTRKEY,a.xmlCharKey].includes(e)}function p(e,a,t,i){const o=d(e,a);if(o){const s=o[i];if(null!=s){const i=t[s];if(null!=i){const t=a.type.uberParent||a.type.className,o=e.modelMappers.discriminators[i===t?i:t+"."+i];o&&(a=o)}}}return a}function d(e,a){return a.type.polymorphicDiscriminator||l(e,a.type.uberParent)||l(e,a.type.className)}function l(e,a){return a&&e.modelMappers[a]&&e.modelMappers[a].type.polymorphicDiscriminator}a(e.exports,"Serializer",(()=>h)),a(e.exports,"MapperType",(()=>g));var m=x("kAUTR"),c=x("aQqza"),u=x("kCpHd");class h{constructor(e={},a){this.modelMappers=e,this.isXML=a}validateConstraints(e,a,t){const i=(e,i)=>{throw Error(`"${t}" with value "${a}" should satisfy the constraint "${e}": ${i}.`)};if(e.constraints&&null!=a){const t=a,{ExclusiveMaximum:o,ExclusiveMinimum:s,InclusiveMaximum:r,InclusiveMinimum:n,MaxItems:p,MaxLength:d,MinItems:l,MinLength:m,MultipleOf:c,Pattern:u,UniqueItems:h}=e.constraints;null==o||o>t||i("ExclusiveMaximum",o),null==s||t>s||i("ExclusiveMinimum",s),null!=r&&t>r&&i("InclusiveMaximum",r),null!=n&&n>t&&i("InclusiveMinimum",n);const g=a;if(null!=p&&g.length>p&&i("MaxItems",p),null!=d&&g.length>d&&i("MaxLength",d),null!=l&&l>g.length&&i("MinItems",l),null!=m&&m>g.length&&i("MinLength",m),null!=c&&t%c!=0&&i("MultipleOf",c),u){const e="string"==typeof u?RegExp(u):u;"string"==typeof a&&null!==a.match(e)||i("Pattern",u)}h&&g.some(((e,a,t)=>t.indexOf(e)!==a))&&i("UniqueItems",h)}}serialize(e,a,t,n={}){var l,h,g;const f={rootName:null!==(l=n.rootName)&&void 0!==l?l:"",includeRoot:null!==(h=n.includeRoot)&&void 0!==h&&h,xmlCharKey:null!==(g=n.xmlCharKey)&&void 0!==g?g:u.XML_CHARKEY};let y={};const v=e.type.name;t||(t=e.serializedName),null!==v.match(/^Sequence$/i)&&(y=[]),e.isConstant&&(a=e.defaultValue);const{required:b,nullable:x}=e;if(b&&x&&void 0===a)throw Error(t+" cannot be undefined.");if(b&&!x&&null==a)throw Error(t+" cannot be null or undefined.");if(!b&&!1===x&&null===a)throw Error(t+" cannot be null.");return null==a?y=a:(this.validateConstraints(e,a,t),null!==v.match(/^any$/i)?y=a:null!==v.match(/^(Number|String|Boolean|Object|Stream|Uuid)$/i)?y=((e,a,t)=>{if(null!=t)if(null!==e.match(/^Number$/i)){if("number"!=typeof t)throw Error(`${a} with value ${t} must be of type number.`)}else if(null!==e.match(/^String$/i)){if("string"!=typeof t.valueOf())throw Error(`${a} with value "${t}" must be of type string.`)}else if(null!==e.match(/^Uuid$/i)){if("string"!=typeof t.valueOf()||!c.isValidUuid(t))throw Error(`${a} with value "${t}" must be of type string and a valid uuid.`)}else if(null!==e.match(/^Boolean$/i)){if("boolean"!=typeof t)throw Error(`${a} with value ${t} must be of type boolean.`)}else if(null!==e.match(/^Stream$/i)){const e=typeof t;if(!("string"===e||"function"===e||t instanceof ArrayBuffer||ArrayBuffer.isView(t)||("function"==typeof Blob||"object"==typeof Blob)&&t instanceof Blob))throw Error(a+" must be a string, Blob, ArrayBuffer, ArrayBufferView, or a function returning NodeJS.ReadableStream.")}return t})(v,t,a):null!==v.match(/^Enum$/i)?y=((e,a,t)=>{if(!a)throw Error(`Please provide a set of allowedValues to validate ${e} as an Enum Type.`);if(!a.some((e=>"string"==typeof e.valueOf()?e.toLowerCase()===t.toLowerCase():e===t)))throw Error(`${t} is not a valid value for ${e}. The valid values are: ${JSON.stringify(a)}.`);return t})(t,e.type.allowedValues,a):null!==v.match(/^(Date|DateTime|TimeSpan|DateTimeRfc1123|UnixTime)$/i)?y=((e,a,t)=>{if(null!=a)if(null!==e.match(/^Date$/i)){if(!(a instanceof Date||"string"==typeof a.valueOf()&&!isNaN(Date.parse(a))))throw Error(t+" must be an instanceof Date or a string in ISO8601 format.");a=a instanceof Date?a.toISOString().substring(0,10):new Date(a).toISOString().substring(0,10)}else if(null!==e.match(/^DateTime$/i)){if(!(a instanceof Date||"string"==typeof a.valueOf()&&!isNaN(Date.parse(a))))throw Error(t+" must be an instanceof Date or a string in ISO8601 format.");a=a instanceof Date?a.toISOString():new Date(a).toISOString()}else if(null!==e.match(/^DateTimeRfc1123$/i)){if(!(a instanceof Date||"string"==typeof a.valueOf()&&!isNaN(Date.parse(a))))throw Error(t+" must be an instanceof Date or a string in RFC-1123 format.");a=a instanceof Date?a.toUTCString():new Date(a).toUTCString()}else if(null!==e.match(/^UnixTime$/i)){if(!(a instanceof Date||"string"==typeof a.valueOf()&&!isNaN(Date.parse(a))))throw Error(t+" must be an instanceof Date or a string in RFC-1123/ISO8601 format for it to be serialized in UnixTime/Epoch format.");a=(e=>{if(e)return"string"==typeof e.valueOf()&&(e=new Date(e)),Math.floor(e.getTime()/1e3)})(a)}else if(null!==e.match(/^TimeSpan$/i)&&!c.isDuration(a))throw Error(`${t} must be a string in ISO 8601 format. Instead was "${a}".`);return a})(v,a,t):null!==v.match(/^ByteArray$/i)?y=((e,a)=>{let t="";if(null!=a){if(!(a instanceof Uint8Array))throw Error(e+" must be of type Uint8Array.");t=m.encodeByteArray(a)}return t})(t,a):null!==v.match(/^Base64Url$/i)?y=((e,a)=>{let t="";if(null!=a){if(!(a instanceof Uint8Array))throw Error(e+" must be of type Uint8Array.");t=(e=>{if(e){if(!(e instanceof Uint8Array))throw Error("Please provide an input of type Uint8Array for converting to Base64Url.");return((e,a)=>{let t=e.length;for(;t-1>=0&&"="===e[t-1];)--t;return e.substr(0,t)})(m.encodeByteArray(e)).replace(/\+/g,"-").replace(/\//g,"_")}})(a)||""}return t})(t,a):null!==v.match(/^Sequence$/i)?y=((e,a,t,i,o,s)=>{if(!Array.isArray(t))throw Error(i+" must be of type Array.");const r=a.type.element;if(!r||"object"!=typeof r)throw Error(`element" metadata for an Array must be defined in the mapper and it must of type "object" in ${i}.`);const n=[];for(let a=0;t.length>a;a++){const p=e.serialize(r,t[a],i,s);if(o&&r.xmlNamespace){const e=r.xmlNamespacePrefix?"xmlns:"+r.xmlNamespacePrefix:"xmlns";"Composite"===r.type.name?(n[a]=Object.assign({},p),n[a][u.XML_ATTRKEY]={[e]:r.xmlNamespace}):(n[a]={},n[a][s.xmlCharKey]=p,n[a][u.XML_ATTRKEY]={[e]:r.xmlNamespace})}else n[a]=p}return n})(this,e,a,t,!!this.isXML,f):null!==v.match(/^Dictionary$/i)?y=((e,a,t,i,o,s)=>{if("object"!=typeof t)throw Error(i+" must be of type object.");const n=a.type.value;if(!n||"object"!=typeof n)throw Error(`"value" metadata for a Dictionary must be defined in the mapper and it must of type "object" in ${i}.`);const p={};for(const a of Object.keys(t)){const d=e.serialize(n,t[a],i,s);p[a]=r(n,d,o,s)}if(o&&a.xmlNamespace){const e=p;return e[u.XML_ATTRKEY]={[a.xmlNamespacePrefix?"xmlns:"+a.xmlNamespacePrefix:"xmlns"]:a.xmlNamespace},e}return p})(this,e,a,t,!!this.isXML,f):null!==v.match(/^Composite$/i)&&(y=((e,a,t,n,l,m)=>{if(d(e,a)&&(a=p(e,a,t,"clientName")),null!=t){const p={},c=s(e,a,n);for(const o of Object.keys(c)){const s=c[o];if(s.readOnly)continue;let h,g=p;if(e.isXML)h=s.xmlIsWrapped?s.xmlName:s.xmlElementName||s.xmlName;else{const e=i(s.serializedName);h=e.pop();for(const a of e)null!=g[a]||null==t[o]&&void 0===s.defaultValue||(g[a]={}),g=g[a]}if(null!=g){if(l&&a.xmlNamespace){const e=a.xmlNamespacePrefix?"xmlns:"+a.xmlNamespacePrefix:"xmlns";g[u.XML_ATTRKEY]=Object.assign(Object.assign({},g[u.XML_ATTRKEY]),{[e]:a.xmlNamespace})}const i=""!==s.serializedName?n+"."+s.serializedName:n;let p=t[o];const c=d(e,a);c&&c.clientName===o&&null==p&&(p=a.serializedName);const f=e.serialize(s,p,i,m);if(void 0!==f&&null!=h){const e=r(s,f,l,m);l&&s.xmlIsAttribute?(g[u.XML_ATTRKEY]=g[u.XML_ATTRKEY]||{},g[u.XML_ATTRKEY][h]=f):g[h]=l&&s.xmlIsWrapped?{[s.xmlElementName]:e}:e}}}const h=((e,a,t)=>{const i=a.type.additionalProperties;if(!i&&a.type.className){const i=o(e,a,t);return null==i?void 0:i.type.additionalProperties}return i})(e,a,n);if(h){const a=Object.keys(c);for(const i in t)a.every((e=>e!==i))&&(p[i]=e.serialize(h,t[i],n+'["'+i+'"]',m))}return p}return t})(this,e,a,t,!!this.isXML,f))),y}deserialize(e,a,t,o={}){var r,l,c;const h={rootName:null!==(r=o.rootName)&&void 0!==r?r:"",includeRoot:null!==(l=o.includeRoot)&&void 0!==l&&l,xmlCharKey:null!==(c=o.xmlCharKey)&&void 0!==c?c:u.XML_CHARKEY};if(null==a)return this.isXML&&"Sequence"===e.type.name&&!e.xmlIsWrapped&&(a=[]),void 0!==e.defaultValue&&(a=e.defaultValue),a;let g;const f=e.type.name;if(t||(t=e.serializedName),null!==f.match(/^Composite$/i))g=((e,a,t,o,r)=>{var l;d(e,a)&&(a=p(e,a,t,"serializedName"));const m=s(e,a,o);let c={};const h=[];for(const s of Object.keys(m)){const n=m[s],p=i(m[s].serializedName);h.push(p[0]);const{serializedName:d,xmlName:g,xmlElementName:f}=n;let y=o;""!==d&&void 0!==d&&(y=o+"."+d);const v=n.headerCollectionPrefix;if(v){const a={};for(const i of Object.keys(t))i.startsWith(v)&&(a[i.substring(v.length)]=e.deserialize(n.type.value,t[i],y,r)),h.push(i);c[s]=a}else if(e.isXML)if(n.xmlIsAttribute&&t[u.XML_ATTRKEY])c[s]=e.deserialize(n,t[u.XML_ATTRKEY][g],y,r);else{const a=f||g||d;if(n.xmlIsWrapped){const a=t[g],i=null!==(l=null==a?void 0:a[f])&&void 0!==l?l:[];c[s]=e.deserialize(n,i,y,r)}else c[s]=e.deserialize(n,t[a],y,r)}else{let i,o=t;for(const e of p){if(!o)break;o=o[e]}i=o;const d=a.type.polymorphicDiscriminator;let l;if(d&&s===d.clientName&&null==i&&(i=a.serializedName),Array.isArray(t[s])&&""===m[s].serializedName){i=t[s];const a=e.deserialize(n,i,y,r);for(const[e,t]of Object.entries(c))({}).hasOwnProperty.call(a,e)||(a[e]=t);c=a}else void 0===i&&void 0===n.defaultValue||(l=e.deserialize(n,i,y,r),c[s]=l)}}const g=a.type.additionalProperties;if(g){const a=e=>{for(const a in m)if(i(m[a].serializedName)[0]===e)return!1;return!0};for(const i in t)a(i)&&(c[i]=e.deserialize(g,t[i],o+'["'+i+'"]',r))}else if(t)for(const e of Object.keys(t))void 0!==c[e]||h.includes(e)||n(e,r)||(c[e]=t[e]);return c})(this,e,a,t,h);else{if(this.isXML){const e=h.xmlCharKey,t=a;null!=t[u.XML_ATTRKEY]&&null!=t[e]&&(a=t[e])}null!==f.match(/^Number$/i)?(g=parseFloat(a),isNaN(g)&&(g=a)):null!==f.match(/^Boolean$/i)?g="true"===a||"false"!==a&&a:null!==f.match(/^(String|Enum|Object|Stream|Uuid|TimeSpan|any)$/i)?g=a:null!==f.match(/^(Date|DateTime|DateTimeRfc1123)$/i)?g=new Date(a):null!==f.match(/^UnixTime$/i)?g=(e=>{if(e)return new Date(1e3*e)})(a):null!==f.match(/^ByteArray$/i)?g=m.decodeString(a):null!==f.match(/^Base64Url$/i)?g=(e=>{if(e){if(e&&"string"!=typeof e.valueOf())throw Error("Please provide an input of type string for converting to Uint8Array");return e=e.replace(/-/g,"+").replace(/_/g,"/"),m.decodeString(e)}})(a):null!==f.match(/^Sequence$/i)?g=((e,a,t,i,o)=>{const s=a.type.element;if(!s||"object"!=typeof s)throw Error('element" metadata for an Array must be defined in the mapper and it must of type "object" in '+i);if(t){Array.isArray(t)||(t=[t]);const a=[];for(let r=0;t.length>r;r++)a[r]=e.deserialize(s,t[r],`${i}[${r}]`,o);return a}return t})(this,e,a,t,h):null!==f.match(/^Dictionary$/i)&&(g=((e,a,t,i,o)=>{const s=a.type.value;if(!s||"object"!=typeof s)throw Error('"value" metadata for a Dictionary must be defined in the mapper and it must of type "object" in '+i);if(t){const a={};for(const r of Object.keys(t))a[r]=e.deserialize(s,t[r],i,o);return a}return t})(this,e,a,t,h))}return e.isConstant&&(g=e.defaultValue),g}}const g=(e=>{const a={};for(const e of["Base64Url","Boolean","ByteArray","Composite","Date","DateTime","DateTimeRfc1123","Dictionary","Enum","Number","Object","Sequence","String","Stream","TimeSpan","UnixTime"])a[e]=e;return a})()})),x.register("kAUTR",((e,t)=>{function i(e){return(e instanceof Buffer?e:Buffer.from(e.buffer)).toString("base64")}function o(e){return Buffer.from(e,"base64")}a(e.exports,"encodeByteArray",(()=>i)),a(e.exports,"decodeString",(()=>o))})),x.register("ZMfJZ",(function(e,t){function i(e,a){return{create(t,i){return new c(t,i,e,a)}}}a(e.exports,"deserializationPolicy",(()=>i)),a(e.exports,"DefaultDeserializationOptions",(()=>m));var o=x("hwe43"),s=x("kCpHd"),r=x("hAVxy"),n=x("7nYXX"),p=x("4sZaV");const d=["application/json","text/json"],l=["application/xml","application/atom+xml"],m={expectedContentTypes:{json:d,xml:l}};class c extends o.BaseRequestPolicy{constructor(e,a,t,i={}){var o;super(e,a),this.jsonContentTypes=t&&t.json||d,this.xmlContentTypes=t&&t.xml||l,this.xmlCharKey=null!==(o=i.xmlCharKey)&&void 0!==o?o:s.XML_CHARKEY}async sendRequest(e){return this._nextPolicy.sendRequest(e).then((e=>((e,a,t,i={})=>{var o,d,l;const m={rootName:null!==(o=i.rootName)&&void 0!==o?o:"",includeRoot:null!==(d=i.includeRoot)&&void 0!==d&&d,xmlCharKey:null!==(l=i.xmlCharKey)&&void 0!==l?l:s.XML_CHARKEY};return((e,a,t,i)=>{var o;const s=e=>{const a=new n.RestError(`Error "${e}" occurred while parsing the response body - ${t.bodyAsText}.`,e.code||n.RestError.PARSE_ERROR,t.status,t.request,t);return Promise.reject(a)};if(!(null===(o=t.request.streamResponseStatusCodes)||void 0===o?void 0:o.has(t.status))&&!t.request.streamResponseBody&&t.bodyAsText){const o=t.bodyAsText,r=t.headers.get("Content-Type")||"",n=r?r.split(";").map((e=>e.toLowerCase())):[];if(0===n.length||n.some((a=>-1!==e.indexOf(a))))return new Promise((e=>{t.parsedBody=JSON.parse(o),e(t)})).catch(s);if(n.some((e=>-1!==a.indexOf(e))))return p.parseXML(o,i).then((e=>(t.parsedBody=e,t))).catch(s)}return Promise.resolve(t)})(e,a,t,m).then((e=>{if(!(e=>{const a=e.request.shouldDeserialize;let t;return t=void 0===a||("boolean"==typeof a?a:a(e)),t})(e))return e;const a=e.request.operationSpec;if(!a||!a.responses)return e;const o=(e=>{let a;const t=e.request,i=t.operationSpec;if(i){const o=t.operationResponseGetter;a=o?o(i,e):i.responses[e.status]}return a})(e),{error:s,shouldReturnResponse:p}=((e,a,t)=>{var i;const o=e.status>=200&&300>e.status;if((e=>{const a=Object.keys(e.responses);return 0===a.length||1===a.length&&"default"===a[0]})(a)?o:t){if(!t)return{error:null,shouldReturnResponse:!1};if(!t.isError)return{error:null,shouldReturnResponse:!1}}const s=null!=t?t:a.responses.default,p=(null===(i=e.request.streamResponseStatusCodes)||void 0===i?void 0:i.has(e.status))||e.request.streamResponseBody,d=new n.RestError(p?"Unexpected status code: "+e.status:e.bodyAsText,void 0,e.status,e.request,e);if(!s)throw d;const l=s.bodyMapper,m=s.headersMapper;try{if(e.parsedBody){const t=e.parsedBody;let i;if(l){let e=t;a.isXML&&l.type.name===r.MapperType.Sequence&&(e="object"==typeof t?t[l.xmlElementName]:[]),i=a.serializer.deserialize(l,e,"error.response.parsedBody")}const o=t.error||i||t;d.code=o.code,o.message&&(d.message=o.message),l&&(d.response.parsedBody=i)}e.headers&&m&&(d.response.parsedHeaders=a.serializer.deserialize(m,e.headers.rawHeaders(),"operationRes.parsedHeaders"))}catch(a){d.message=`Error "${a.message}" occurred in deserializing the responseBody - "${e.bodyAsText}" for the default response.`}return{error:d,shouldReturnResponse:!1}})(e,a,o);if(s)throw s;if(p)return e;if(o){if(o.bodyMapper){let t=e.parsedBody;a.isXML&&o.bodyMapper.type.name===r.MapperType.Sequence&&(t="object"==typeof t?t[o.bodyMapper.xmlElementName]:[]);try{e.parsedBody=a.serializer.deserialize(o.bodyMapper,t,"operationRes.parsedBody",i)}catch(a){throw new n.RestError(`Error ${a} occurred in deserializing the responseBody - ${e.bodyAsText}`,void 0,e.status,e.request,e)}}else"HEAD"===a.httpMethod&&(e.parsedBody=t.status>=200&&300>t.status);o.headersMapper&&(e.parsedHeaders=a.serializer.deserialize(o.headersMapper,e.headers.rawHeaders(),"operationRes.parsedHeaders",i))}return e}))})(this.jsonContentTypes,this.xmlContentTypes,e,{xmlCharKey:this.xmlCharKey})))}}})),x.register("hwe43",(function(e,t){a(e.exports,"BaseRequestPolicy",(()=>o)),a(e.exports,"RequestPolicyOptions",(()=>s));var i=x("jprbl");class o{constructor(e,a){this._nextPolicy=e,this._options=a}shouldLog(e){return this._options.shouldLog(e)}log(e,a){this._options.log(e,a)}}class s{constructor(e){this._logger=e}shouldLog(e){return!!this._logger&&e!==i.HttpPipelineLogLevel.OFF&&this._logger.minimumLogLevel>=e}log(e,a){this._logger&&this.shouldLog(e)&&this._logger.log(e,a)}}})),x.register("jprbl",((e,t)=>{var i;a(e.exports,"HttpPipelineLogLevel",(()=>i)),(e=>{e[e.OFF=0]="OFF",e[e.ERROR=1]="ERROR",e[e.WARNING=2]="WARNING",e[e.INFO=3]="INFO"})(i||(i={}))})),x.register("4sZaV",((e,t)=>{function i(e,a={}){var t;return d.rootName=a.rootName,d.charkey=null!==(t=a.xmlCharKey)&&void 0!==t?t:r.XML_CHARKEY,new s.Builder(d).buildObject(e)}function o(e,a={}){var t;p.explicitRoot=!!a.includeRoot,p.charkey=null!==(t=a.xmlCharKey)&&void 0!==t?t:r.XML_CHARKEY;const i=new s.Parser(p);return new Promise(((a,t)=>{e?i.parseString(e,((e,i)=>{e?t(e):a(i)})):t(Error("Document is empty"))}))}a(e.exports,"stringifyXML",(()=>i)),a(e.exports,"parseXML",(()=>o));var s=x("9mW3h"),r=x("kCpHd");const n={explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:r.XML_ATTRKEY,explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:void 0,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:void 0,attrValueProcessors:void 0,tagNameProcessors:void 0,valueProcessors:void 0,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:void 0,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1},p=Object.assign({},n);p.explicitArray=!1;const d=Object.assign({},n);d.explicitArray=!1,d.renderOpts={pretty:!1}})),x.register("9mW3h",(function(e,a){var t,i,o,s,r;r={}.hasOwnProperty,i=x("2SOKK"),t=x("kCOgH"),o=x("fBWps"),s=x("7Hz2s"),e.exports.defaults=i.defaults,e.exports.processors=s,e.exports.ValidationError=function(e){function a(e){this.message=e}return function(e,a){function t(){this.constructor=e}for(var i in a)r.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,Error),a}(),e.exports.Builder=t.Builder,e.exports.Parser=o.Parser,e.exports.parseString=o.parseString,e.exports.parseStringPromise=o.parseStringPromise})),x.register("2SOKK",((e,a)=>{e.exports.defaults={.1:{explicitCharkey:!1,trim:!0,normalize:!0,normalizeTags:!1,attrkey:"@",charkey:"#",explicitArray:!1,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!1,validator:null,xmlns:!1,explicitChildren:!1,childkey:"@@",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:!1,trim:!1,normalize:!1,normalizeTags:!1,attrkey:"$",charkey:"_",explicitArray:!0,ignoreAttrs:!1,mergeAttrs:!1,explicitRoot:!0,validator:null,xmlns:!1,explicitChildren:!1,preserveChildrenOrder:!1,childkey:"$$",charsAsChildren:!1,includeWhiteChars:!1,async:!1,strict:!0,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:!0},doctype:null,renderOpts:{pretty:!0,indent:" ",newline:"\n"},headless:!1,chunkSize:1e4,emptyTag:"",cdata:!1}}})),x.register("kCOgH",(function(e,a){var t,i,o,s,r,n;n={}.hasOwnProperty,t=x("3rkOz"),i=x("2SOKK").defaults,s=e=>!("string"!=typeof e||0>e.indexOf("&")&&0>e.indexOf(">")&&0>e.indexOf("<")),r=e=>"",o=e=>e.replace("]]>","]]]]>"),e.exports.Builder=function(){function e(e){var a,t;for(a in this.options={},t=i[.2])n.call(t,a)&&(this.options[a]=t[a]);for(a in e)n.call(e,a)&&(this.options[a]=e[a])}return e.prototype.buildObject=function(e){var a,o,p,d,l,m;return a=this.options.attrkey,o=this.options.charkey,1===Object.keys(e).length&&this.options.rootName===i[.2].rootName?e=e[l=Object.keys(e)[0]]:l=this.options.rootName,m=this,p=(e,t)=>{var i,d,l,c,u;if("object"!=typeof t)m.options.cdata&&s(t)?e.raw(r(t)):e.txt(t);else if(Array.isArray(t)){for(c in t)if(n.call(t,c))for(u in d=t[c])l=d[u],e=p(e.ele(u),l).up()}else for(u in t)if(n.call(t,u))if(d=t[u],u===a){if("object"==typeof d)for(i in d)e=e.att(i,d[i])}else if(u===o)e=m.options.cdata&&s(d)?e.raw(r(d)):e.txt(d);else if(Array.isArray(d))for(c in d)n.call(d,c)&&(e="string"==typeof(l=d[c])?m.options.cdata&&s(l)?e.ele(u).raw(r(l)).up():e.ele(u,l).up():p(e.ele(u),l).up());else"object"==typeof d?e=p(e.ele(u),d).up():"string"==typeof d&&m.options.cdata&&s(d)?e=e.ele(u).raw(r(d)).up():(null==d&&(d=""),e=e.ele(u,""+d).up());return e},d=t.create(l,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars}),p(d,e).end(this.options.renderOpts)},e}()})),x.register("3rkOz",((e,a)=>{var t,i,o,s,r,n,p,d,l,m;m=x("7duh5"),d=m.assign,l=m.isFunction,o=x("f73LL"),s=x("cOOFK"),r=x("gV33u"),p=x("6PL6y"),n=x("k2UUh"),t=x("gFlcX"),i=x("675ae"),e.exports.create=(e,a,t,i)=>{var o,r;if(null==e)throw Error("Root element needs a name.");return i=d({},a,t,i),r=(o=new s(i)).element(e),i.headless||(o.declaration(i),null==i.pubID&&null==i.sysID||o.dtd(i)),r},e.exports.begin=(e,a,t)=>{var i;return l(e)&&(a=(i=[e,a])[0],t=i[1],e={}),a?new r(e,a,t):new s(e)},e.exports.stringWriter=e=>new p(e),e.exports.streamWriter=(e,a)=>new n(e,a),e.exports.implementation=new o,e.exports.nodeType=t,e.exports.writerState=i})),x.register("7duh5",((e,a)=>{var t,i,o,s,r,n,p,d,l;d=[].slice,l={}.hasOwnProperty,t=function(){var e,a,t,i,o,s;if(s=arguments[0],o=2>arguments.length?[]:d.call(arguments,1),r(Object.assign))Object.assign.apply(null,arguments);else for(e=0,t=o.length;t>e;e++)if(null!=(i=o[e]))for(a in i)l.call(i,a)&&(s[a]=i[a]);return s},r=e=>!!e&&"[object Function]"==={}.toString.call(e),n=e=>{var a;return!!e&&("function"==(a=typeof e)||"object"===a)},o=e=>r(Array.isArray)?Array.isArray(e):"[object Array]"==={}.toString.call(e),s=e=>{var a;if(o(e))return!e.length;for(a in e)if(l.call(e,a))return!1;return!0},p=e=>{var a,t;return n(e)&&(t=Object.getPrototypeOf(e))&&(a=t.constructor)&&"function"==typeof a&&a instanceof a&&(()=>{}).toString.call(a)===(()=>{}).toString.call(Object)},i=e=>r(e.valueOf)?e.valueOf():e,e.exports.assign=t,e.exports.isFunction=r,e.exports.isObject=n,e.exports.isArray=o,e.exports.isEmpty=s,e.exports.isPlainObject=p,e.exports.getValue=i})),x.register("f73LL",((e,a)=>{e.exports=(()=>{function e(){}return e.prototype.hasFeature=(e,a)=>!0,e.prototype.createDocumentType=(e,a,t)=>{throw Error("This DOM method is not implemented.")},e.prototype.createDocument=(e,a,t)=>{throw Error("This DOM method is not implemented.")},e.prototype.createHTMLDocument=e=>{throw Error("This DOM method is not implemented.")},e.prototype.getFeature=(e,a)=>{throw Error("This DOM method is not implemented.")},e})()})),x.register("cOOFK",(function(e,a){var t,i,o,s,r,n,p,d;d={}.hasOwnProperty,p=x("7duh5").isPlainObject,o=x("f73LL"),i=x("dVDYB"),s=x("aMM3v"),t=x("gFlcX"),n=x("dygCE"),r=x("6PL6y"),e.exports=function(e){function a(e){a.__super__.constructor.call(this,null),this.name="#document",this.type=t.Document,this.documentURI=null,this.domConfig=new i,e||(e={}),e.writer||(e.writer=new r),this.options=e,this.stringify=new n(e)}return function(e,a){function t(){this.constructor=e}for(var i in a)d.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"implementation",{value:new o}),Object.defineProperty(a.prototype,"doctype",{get(){var e,a,i,o;for(a=0,i=(o=this.children).length;i>a;a++)if((e=o[a]).type===t.DocType)return e;return null}}),Object.defineProperty(a.prototype,"documentElement",{get(){return this.rootObject||null}}),Object.defineProperty(a.prototype,"inputEncoding",{get:()=>null}),Object.defineProperty(a.prototype,"strictErrorChecking",{get:()=>!1}),Object.defineProperty(a.prototype,"xmlEncoding",{get(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].encoding:null}}),Object.defineProperty(a.prototype,"xmlStandalone",{get(){return 0!==this.children.length&&this.children[0].type===t.Declaration&&"yes"===this.children[0].standalone}}),Object.defineProperty(a.prototype,"xmlVersion",{get(){return 0!==this.children.length&&this.children[0].type===t.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(a.prototype,"URL",{get(){return this.documentURI}}),Object.defineProperty(a.prototype,"origin",{get:()=>null}),Object.defineProperty(a.prototype,"compatMode",{get:()=>null}),Object.defineProperty(a.prototype,"characterSet",{get:()=>null}),Object.defineProperty(a.prototype,"contentType",{get:()=>null}),a.prototype.end=function(e){var a;return a={},e?p(e)&&(a=e,e=this.options.writer):e=this.options.writer,e.document(this,e.filterOptions(a))},a.prototype.toString=function(e){return this.options.writer.document(this,this.options.writer.filterOptions(e))},a.prototype.createElement=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createDocumentFragment=function(){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createTextNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createComment=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createCDATASection=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createProcessingInstruction=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createAttribute=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createEntityReference=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagName=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.importNode=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createElementNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createAttributeNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagNameNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementById=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.adoptNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.normalizeDocument=function(){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.renameNode=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByClassName=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createEvent=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createRange=function(){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createNodeIterator=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.createTreeWalker=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a}(s)})),x.register("dVDYB",(function(e,a){var t,i;t=x("30NdQ"),i=x("cpBhr"),e.exports=function(){function e(){this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=Object.create(this.defaultParams)}return Object.defineProperty(e.prototype,"parameterNames",{get(){return new i(Object.keys(this.defaultParams))}}),e.prototype.getParameter=function(e){return this.params.hasOwnProperty(e)?this.params[e]:null},e.prototype.canSetParameter=(e,a)=>!0,e.prototype.setParameter=function(e,a){return null!=a?this.params[e]=a:delete this.params[e]},e}()})),x.register("30NdQ",((e,a)=>{e.exports=(()=>{function e(){}return e.prototype.handleError=e=>{throw Error(e)},e})()})),x.register("cpBhr",(function(e,a){e.exports=function(){function e(e){this.arr=e||[]}return Object.defineProperty(e.prototype,"length",{get(){return this.arr.length}}),e.prototype.item=function(e){return this.arr[e]||null},e.prototype.contains=function(e){return-1!==this.arr.indexOf(e)},e}()})),x.register("aMM3v",(function(e,a){var t,i,o,s,r,n,p,d,l,m,c,u,h,g,f,y,v,b;b={}.hasOwnProperty,v=x("7duh5"),y=v.isObject,f=v.isFunction,g=v.isEmpty,h=v.getValue,d=null,o=null,s=null,r=null,n=null,c=null,u=null,m=null,p=null,i=null,l=null,t=null,e.exports=function(){function e(e){this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,d||(d=x("5JRyR"),o=x("jJvtY"),s=x("fHx8M"),r=x("6FDK1"),n=x("g5rcf"),c=x("g64jR"),u=x("kNEyj"),m=x("hPpEd"),p=x("iBC4A"),i=x("gFlcX"),l=x("6rpz7"),x("hiJfg"),t=x("4qSoy"))}return Object.defineProperty(e.prototype,"nodeName",{get(){return this.name}}),Object.defineProperty(e.prototype,"nodeType",{get(){return this.type}}),Object.defineProperty(e.prototype,"nodeValue",{get(){return this.value}}),Object.defineProperty(e.prototype,"parentNode",{get(){return this.parent}}),Object.defineProperty(e.prototype,"childNodes",{get(){return this.childNodeList&&this.childNodeList.nodes||(this.childNodeList=new l(this.children)),this.childNodeList}}),Object.defineProperty(e.prototype,"firstChild",{get(){return this.children[0]||null}}),Object.defineProperty(e.prototype,"lastChild",{get(){return this.children[this.children.length-1]||null}}),Object.defineProperty(e.prototype,"previousSibling",{get(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e-1]||null}}),Object.defineProperty(e.prototype,"nextSibling",{get(){var e;return e=this.parent.children.indexOf(this),this.parent.children[e+1]||null}}),Object.defineProperty(e.prototype,"ownerDocument",{get(){return this.document()||null}}),Object.defineProperty(e.prototype,"textContent",{get(){var e,a,t,o,s;if(this.nodeType===i.Element||this.nodeType===i.DocumentFragment){for(s="",a=0,t=(o=this.children).length;t>a;a++)(e=o[a]).textContent&&(s+=e.textContent);return s}return null},set(e){throw Error("This DOM method is not implemented."+this.debugInfo())}}),e.prototype.setParent=function(e){var a,t,i,o;for(this.parent=e,e&&(this.options=e.options,this.stringify=e.stringify),o=[],a=0,t=(i=this.children).length;t>a;a++)o.push(i[a].setParent(this));return o},e.prototype.element=function(e,a,t){var i,o,s,r,n,p,d,l,m;if(n=null,null===a&&null==t&&(a={},t=null),null==a&&(a={}),a=h(a),y(a)||(t=(l=[a,t])[0],a=l[1]),null!=e&&(e=h(e)),Array.isArray(e))for(o=0,p=e.length;p>o;o++)n=this.element(e[o]);else if(f(e))n=this.element(e.apply());else if(y(e)){for(r in e)if(b.call(e,r))if(f(m=e[r])&&(m=m.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&0===r.indexOf(this.stringify.convertAttKey))n=this.attribute(r.substr(this.stringify.convertAttKey.length),m);else if(!this.options.separateArrayItems&&Array.isArray(m)&&g(m))n=this.dummy();else if(y(m)&&g(m))n=this.element(r);else if(this.options.keepNullNodes||null!=m)if(!this.options.separateArrayItems&&Array.isArray(m))for(s=0,d=m.length;d>s;s++)(i={})[r]=m[s],n=this.element(i);else y(m)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===r.indexOf(this.stringify.convertTextKey)?n=this.element(m):(n=this.element(r)).element(m):n=this.element(r,m);else n=this.dummy()}else n=this.options.keepNullNodes||null!==t?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&0===e.indexOf(this.stringify.convertTextKey)?this.text(t):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&0===e.indexOf(this.stringify.convertCDataKey)?this.cdata(t):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&0===e.indexOf(this.stringify.convertCommentKey)?this.comment(t):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&0===e.indexOf(this.stringify.convertRawKey)?this.raw(t):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&0===e.indexOf(this.stringify.convertPIKey)?this.instruction(e.substr(this.stringify.convertPIKey.length),t):this.node(e,a,t):this.dummy();if(null==n)throw Error("Could not create any elements with: "+e+". "+this.debugInfo());return n},e.prototype.insertBefore=function(e,a,t){var i,o,s,r,n;if(null!=e?e.type:void 0)return r=a,(s=e).setParent(this),r?(o=children.indexOf(r),n=children.splice(o),children.push(s),[].push.apply(children,n)):children.push(s),s;if(this.isRoot)throw Error("Cannot insert elements at root level. "+this.debugInfo(e));return o=this.parent.children.indexOf(this),n=this.parent.children.splice(o),i=this.parent.element(e,a,t),[].push.apply(this.parent.children,n),i},e.prototype.insertAfter=function(e,a,t){var i,o,s;if(this.isRoot)throw Error("Cannot insert elements at root level. "+this.debugInfo(e));return o=this.parent.children.indexOf(this),s=this.parent.children.splice(o+1),i=this.parent.element(e,a,t),[].push.apply(this.parent.children,s),i},e.prototype.remove=function(){var e;if(this.isRoot)throw Error("Cannot remove the root element. "+this.debugInfo());return e=this.parent.children.indexOf(this),[].splice.apply(this.parent.children,[e,e-e+1].concat([])),this.parent},e.prototype.node=function(e,a,t){var i,o;return null!=e&&(e=h(e)),a||(a={}),a=h(a),y(a)||(t=(o=[a,t])[0],a=o[1]),i=new d(this,e,a),null!=t&&i.text(t),this.children.push(i),i},e.prototype.text=function(e){var a;return y(e)&&this.element(e),a=new u(this,e),this.children.push(a),this},e.prototype.cdata=function(e){var a;return a=new o(this,e),this.children.push(a),this},e.prototype.comment=function(e){var a;return a=new s(this,e),this.children.push(a),this},e.prototype.commentBefore=function(e){var a,t;return a=this.parent.children.indexOf(this),t=this.parent.children.splice(a),this.parent.comment(e),[].push.apply(this.parent.children,t),this},e.prototype.commentAfter=function(e){var a,t;return a=this.parent.children.indexOf(this),t=this.parent.children.splice(a+1),this.parent.comment(e),[].push.apply(this.parent.children,t),this},e.prototype.raw=function(e){var a;return a=new c(this,e),this.children.push(a),this},e.prototype.dummy=function(){return new p(this)},e.prototype.instruction=function(e,a){var t,i,o,s;if(null!=e&&(e=h(e)),null!=a&&(a=h(a)),Array.isArray(e))for(o=0,s=e.length;s>o;o++)this.instruction(t=e[o]);else if(y(e))for(t in e)b.call(e,t)&&this.instruction(t,e[t]);else f(a)&&(a=a.apply()),i=new m(this,e,a),this.children.push(i);return this},e.prototype.instructionBefore=function(e,a){var t,i;return t=this.parent.children.indexOf(this),i=this.parent.children.splice(t),this.parent.instruction(e,a),[].push.apply(this.parent.children,i),this},e.prototype.instructionAfter=function(e,a){var t,i;return t=this.parent.children.indexOf(this),i=this.parent.children.splice(t+1),this.parent.instruction(e,a),[].push.apply(this.parent.children,i),this},e.prototype.declaration=function(e,a,t){var o,s;return o=this.document(),s=new r(o,e,a,t),0===o.children.length?o.children.unshift(s):o.children[0].type===i.Declaration?o.children[0]=s:o.children.unshift(s),o.root()||o},e.prototype.dtd=function(e,a){var t,o,s,r,p,d,l,m,c;for(t=this.document(),o=new n(t,e,a),s=r=0,d=(m=t.children).length;d>r;s=++r)if(m[s].type===i.DocType)return t.children[s]=o,o;for(s=p=0,l=(c=t.children).length;l>p;s=++p)if(c[s].isRoot)return t.children.splice(s,0,o),o;return t.children.push(o),o},e.prototype.up=function(){if(this.isRoot)throw Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent},e.prototype.root=function(){var e;for(e=this;e;){if(e.type===i.Document)return e.rootObject;if(e.isRoot)return e;e=e.parent}},e.prototype.document=function(){var e;for(e=this;e;){if(e.type===i.Document)return e;e=e.parent}},e.prototype.end=function(e){return this.document().end(e)},e.prototype.prev=function(){var e;if(1>(e=this.parent.children.indexOf(this)))throw Error("Already at the first node. "+this.debugInfo());return this.parent.children[e-1]},e.prototype.next=function(){var e;if(-1===(e=this.parent.children.indexOf(this))||e===this.parent.children.length-1)throw Error("Already at the last node. "+this.debugInfo());return this.parent.children[e+1]},e.prototype.importDocument=function(e){var a;return(a=e.root().clone()).parent=this,a.isRoot=!1,this.children.push(a),this},e.prototype.debugInfo=function(e){var a,t;return null!=(e=e||this.name)||(null!=(a=this.parent)?a.name:void 0)?null==e?"parent: <"+this.parent.name+">":(null!=(t=this.parent)?t.name:void 0)?"node: <"+e+">, parent: <"+this.parent.name+">":"node: <"+e+">":""},e.prototype.ele=function(e,a,t){return this.element(e,a,t)},e.prototype.nod=function(e,a,t){return this.node(e,a,t)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,a){return this.instruction(e,a)},e.prototype.doc=function(){return this.document()},e.prototype.dec=function(e,a,t){return this.declaration(e,a,t)},e.prototype.e=function(e,a,t){return this.element(e,a,t)},e.prototype.n=function(e,a,t){return this.node(e,a,t)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,a){return this.instruction(e,a)},e.prototype.u=function(){return this.up()},e.prototype.importXMLBuilder=function(e){return this.importDocument(e)},e.prototype.replaceChild=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.removeChild=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.appendChild=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.hasChildNodes=function(){return 0!==this.children.length},e.prototype.cloneNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.normalize=function(){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isSupported=(e,a)=>!0,e.prototype.hasAttributes=function(){return 0!==this.attribs.length},e.prototype.compareDocumentPosition=function(e){var a,i;return(a=this)===e?0:this.document()!==e.document()?(i=t.Disconnected|t.ImplementationSpecific,.5>Math.random()?i|=t.Preceding:i|=t.Following,i):a.isAncestor(e)?t.Contains|t.Preceding:a.isDescendant(e)?t.Contains|t.Following:a.isPreceding(e)?t.Preceding:t.Following},e.prototype.isSameNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupPrefix=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isDefaultNamespace=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.lookupNamespaceURI=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.isEqualNode=function(e){var a,t,i;if(e.nodeType!==this.nodeType)return!1;if(e.children.length!==this.children.length)return!1;for(a=t=0,i=this.children.length-1;0>i?t>=i:i>=t;a=0>i?--t:++t)if(!this.children[a].isEqualNode(e.children[a]))return!1;return!0},e.prototype.getFeature=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.setUserData=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.getUserData=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},e.prototype.contains=function(e){return!!e&&(e===this||this.isDescendant(e))},e.prototype.isDescendant=function(e){var a,t,i,o;for(t=0,i=(o=this.children).length;i>t;t++){if(e===(a=o[t]))return!0;if(a.isDescendant(e))return!0}return!1},e.prototype.isAncestor=function(e){return e.isDescendant(this)},e.prototype.isPreceding=function(e){var a,t;return a=this.treePosition(e),t=this.treePosition(this),-1!==a&&-1!==t&&t>a},e.prototype.isFollowing=function(e){var a,t;return a=this.treePosition(e),t=this.treePosition(this),-1!==a&&-1!==t&&a>t},e.prototype.treePosition=function(e){var a,t;return t=0,a=!1,this.foreachTreeNode(this.document(),(i=>{if(t++,!a&&i===e)return a=!0})),a?t:-1},e.prototype.foreachTreeNode=function(e,a){var t,i,o,s,r;for(e||(e=this.document()),i=0,o=(s=e.children).length;o>i;i++){if(r=a(t=s[i]))return r;if(r=this.foreachTreeNode(t,a))return r}},e}()})),x.register("5JRyR",(function(e,a){var t,i,o,s,r,n,p,d,l;l={}.hasOwnProperty,d=x("7duh5"),p=d.isObject,n=d.isFunction,r=d.getValue,s=x("aMM3v"),t=x("gFlcX"),i=x("ioxTH"),o=x("hiJfg"),e.exports=function(e){function a(e,i,o){var s,r,n,p;if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(i),this.type=t.Element,this.attribs={},this.schemaTypeInfo=null,null!=o&&this.attribute(o),e.type===t.Document&&(this.isRoot=!0,this.documentObject=e,e.rootObject=this,e.children))for(r=0,n=(p=e.children).length;n>r;r++)if((s=p[r]).type===t.DocType){s.name=this.name;break}}return function(e,a){function t(){this.constructor=e}for(var i in a)l.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"tagName",{get(){return this.name}}),Object.defineProperty(a.prototype,"namespaceURI",{get:()=>""}),Object.defineProperty(a.prototype,"prefix",{get:()=>""}),Object.defineProperty(a.prototype,"localName",{get(){return this.name}}),Object.defineProperty(a.prototype,"id",{get(){throw Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"className",{get(){throw Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"classList",{get(){throw Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"attributes",{get(){return this.attributeMap&&this.attributeMap.nodes||(this.attributeMap=new o(this.attribs)),this.attributeMap}}),a.prototype.clone=function(){var e,a,t;for(e in(a=Object.create(this)).isRoot&&(a.documentObject=null),a.attribs={},t=this.attribs)l.call(t,e)&&(a.attribs[e]=t[e].clone());return a.children=[],this.children.forEach((e=>{var t;return(t=e.clone()).parent=a,a.children.push(t)})),a},a.prototype.attribute=function(e,a){var t;if(null!=e&&(e=r(e)),p(e))for(t in e)l.call(e,t)&&this.attribute(t,e[t]);else n(a)&&(a=a.apply()),this.options.keepNullAttributes&&null==a?this.attribs[e]=new i(this,e,""):null!=a&&(this.attribs[e]=new i(this,e,a));return this},a.prototype.removeAttribute=function(e){var a,t;if(null==e)throw Error("Missing attribute name. "+this.debugInfo());if(e=r(e),Array.isArray(e))for(a=0,t=e.length;t>a;a++)delete this.attribs[e[a]];else delete this.attribs[e];return this},a.prototype.toString=function(e){return this.options.writer.element(this,this.options.writer.filterOptions(e))},a.prototype.att=function(e,a){return this.attribute(e,a)},a.prototype.a=function(e,a){return this.attribute(e,a)},a.prototype.getAttribute=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e].value:null},a.prototype.setAttribute=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getAttributeNode=function(e){return this.attribs.hasOwnProperty(e)?this.attribs[e]:null},a.prototype.setAttributeNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.removeAttributeNode=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagName=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getAttributeNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.setAttributeNS=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.removeAttributeNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getAttributeNodeNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.setAttributeNodeNS=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagNameNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.hasAttribute=function(e){return this.attribs.hasOwnProperty(e)},a.prototype.hasAttributeNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.setIdAttribute=function(e,a){return this.attribs.hasOwnProperty(e)?this.attribs[e].isId:a},a.prototype.setIdAttributeNS=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.setIdAttributeNode=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagName=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByTagNameNS=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.getElementsByClassName=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.isEqualNode=function(e){var t,i,o;if(!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(e))return!1;if(e.namespaceURI!==this.namespaceURI)return!1;if(e.prefix!==this.prefix)return!1;if(e.localName!==this.localName)return!1;if(e.attribs.length!==this.attribs.length)return!1;for(t=i=0,o=this.attribs.length-1;0>o?i>=o:o>=i;t=0>o?--i:++i)if(!this.attribs[t].isEqualNode(e.attribs[t]))return!1;return!0},a}(s)})),x.register("gFlcX",((e,a)=>{e.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}})),x.register("ioxTH",(function(e,a){var t;t=x("gFlcX"),x("aMM3v"),e.exports=function(){function e(e,a,i){if(this.parent=e,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),null==a)throw Error("Missing attribute name. "+this.debugInfo(a));this.name=this.stringify.name(a),this.value=this.stringify.attValue(i),this.type=t.Attribute,this.isId=!1,this.schemaTypeInfo=null}return Object.defineProperty(e.prototype,"nodeType",{get(){return this.type}}),Object.defineProperty(e.prototype,"ownerElement",{get(){return this.parent}}),Object.defineProperty(e.prototype,"textContent",{get(){return this.value},set(e){return this.value=e||""}}),Object.defineProperty(e.prototype,"namespaceURI",{get:()=>""}),Object.defineProperty(e.prototype,"prefix",{get:()=>""}),Object.defineProperty(e.prototype,"localName",{get(){return this.name}}),Object.defineProperty(e.prototype,"specified",{get:()=>!0}),e.prototype.clone=function(){return Object.create(this)},e.prototype.toString=function(e){return this.options.writer.attribute(this,this.options.writer.filterOptions(e))},e.prototype.debugInfo=function(e){return null==(e=e||this.name)?"parent: <"+this.parent.name+">":"attribute: {"+e+"}, parent: <"+this.parent.name+">"},e.prototype.isEqualNode=function(e){return e.namespaceURI===this.namespaceURI&&e.prefix===this.prefix&&e.localName===this.localName&&e.value===this.value},e}()})),x.register("hiJfg",(function(e,a){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get(){return Object.keys(this.nodes).length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.getNamedItem=function(e){return this.nodes[e]},e.prototype.setNamedItem=function(e){var a;return a=this.nodes[e.nodeName],this.nodes[e.nodeName]=e,a||null},e.prototype.removeNamedItem=function(e){var a;return a=this.nodes[e],delete this.nodes[e],a||null},e.prototype.item=function(e){return this.nodes[Object.keys(this.nodes)[e]]||null},e.prototype.getNamedItemNS=(e,a)=>{throw Error("This DOM method is not implemented.")},e.prototype.setNamedItemNS=e=>{throw Error("This DOM method is not implemented.")},e.prototype.removeNamedItemNS=(e,a)=>{throw Error("This DOM method is not implemented.")},e}()})),x.register("jJvtY",(function(e,a){var t,i,o;o={}.hasOwnProperty,t=x("gFlcX"),i=x("2aENU"),e.exports=function(e){function a(e,i){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=t.CData,this.value=this.stringify.cdata(i)}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(e){return this.options.writer.cdata(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("2aENU",(function(e,a){var t,i;i={}.hasOwnProperty,t=x("aMM3v"),e.exports=function(e){function a(e){a.__super__.constructor.call(this,e),this.value=""}return function(e,a){function t(){this.constructor=e}for(var o in a)i.call(a,o)&&(e[o]=a[o]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"data",{get(){return this.value},set(e){return this.value=e||""}}),Object.defineProperty(a.prototype,"length",{get(){return this.value.length}}),Object.defineProperty(a.prototype,"textContent",{get(){return this.value},set(e){return this.value=e||""}}),a.prototype.clone=function(){return Object.create(this)},a.prototype.substringData=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.appendData=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.insertData=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.deleteData=function(e,a){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.replaceData=function(e,a,t){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.isEqualNode=function(e){return!!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.data===this.data},a}(t)})),x.register("fHx8M",(function(e,a){var t,i,o;o={}.hasOwnProperty,t=x("gFlcX"),i=x("2aENU"),e.exports=function(e){function a(e,i){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=t.Comment,this.value=this.stringify.comment(i)}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(e){return this.options.writer.comment(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("6FDK1",(function(e,a){var t,i,o,s;s={}.hasOwnProperty,o=x("7duh5").isObject,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e,i,s,r){var n;a.__super__.constructor.call(this,e),o(i)&&(i=(n=i).version,s=n.encoding,r=n.standalone),i||(i="1.0"),this.type=t.Declaration,this.version=this.stringify.xmlVersion(i),null!=s&&(this.encoding=this.stringify.xmlEncoding(s)),null!=r&&(this.standalone=this.stringify.xmlStandalone(r))}return function(e,a){function t(){this.constructor=e}for(var i in a)s.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.toString=function(e){return this.options.writer.declaration(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("g5rcf",(function(e,a){var t,i,o,s,r,n,p,d,l;l={}.hasOwnProperty,d=x("7duh5").isObject,p=x("aMM3v"),t=x("gFlcX"),i=x("iI0ao"),s=x("dvk9A"),o=x("j6K8N"),r=x("9klpB"),n=x("hiJfg"),e.exports=function(e){function a(e,i,o){var s,r,n,p,l,m;if(a.__super__.constructor.call(this,e),this.type=t.DocType,e.children)for(r=0,n=(p=e.children).length;n>r;r++)if((s=p[r]).type===t.Element){this.name=s.name;break}this.documentObject=e,d(i)&&(i=(l=i).pubID,o=l.sysID),null==o&&(o=(m=[i,o])[0],i=m[1]),null!=i&&(this.pubID=this.stringify.dtdPubID(i)),null!=o&&(this.sysID=this.stringify.dtdSysID(o))}return function(e,a){function t(){this.constructor=e}for(var i in a)l.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"entities",{get(){var e,a,i,o,s;for(o={},a=0,i=(s=this.children).length;i>a;a++)(e=s[a]).type!==t.EntityDeclaration||e.pe||(o[e.name]=e);return new n(o)}}),Object.defineProperty(a.prototype,"notations",{get(){var e,a,i,o,s;for(o={},a=0,i=(s=this.children).length;i>a;a++)(e=s[a]).type===t.NotationDeclaration&&(o[e.name]=e);return new n(o)}}),Object.defineProperty(a.prototype,"publicId",{get(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get(){return this.sysID}}),Object.defineProperty(a.prototype,"internalSubset",{get(){throw Error("This DOM method is not implemented."+this.debugInfo())}}),a.prototype.element=function(e,a){var t;return t=new o(this,e,a),this.children.push(t),this},a.prototype.attList=function(e,a,t,o,s){var r;return r=new i(this,e,a,t,o,s),this.children.push(r),this},a.prototype.entity=function(e,a){var t;return t=new s(this,!1,e,a),this.children.push(t),this},a.prototype.pEntity=function(e,a){var t;return t=new s(this,!0,e,a),this.children.push(t),this},a.prototype.notation=function(e,a){var t;return t=new r(this,e,a),this.children.push(t),this},a.prototype.toString=function(e){return this.options.writer.docType(this,this.options.writer.filterOptions(e))},a.prototype.ele=function(e,a){return this.element(e,a)},a.prototype.att=function(e,a,t,i,o){return this.attList(e,a,t,i,o)},a.prototype.ent=function(e,a){return this.entity(e,a)},a.prototype.pent=function(e,a){return this.pEntity(e,a)},a.prototype.not=function(e,a){return this.notation(e,a)},a.prototype.up=function(){return this.root()||this.documentObject},a.prototype.isEqualNode=function(e){return!!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.name===this.name&&e.publicId===this.publicId&&e.systemId===this.systemId},a}(p)})),x.register("iI0ao",(function(e,a){var t,i,o;o={}.hasOwnProperty,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e,i,o,s,r,n){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing DTD element name. "+this.debugInfo());if(null==o)throw Error("Missing DTD attribute name. "+this.debugInfo(i));if(!s)throw Error("Missing DTD attribute type. "+this.debugInfo(i));if(!r)throw Error("Missing DTD attribute default. "+this.debugInfo(i));if(0!==r.indexOf("#")&&(r="#"+r),!r.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(i));if(n&&!r.match(/^(#FIXED|#DEFAULT)$/))throw Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(i));this.elementName=this.stringify.name(i),this.type=t.AttributeDeclaration,this.attributeName=this.stringify.name(o),this.attributeType=this.stringify.dtdAttType(s),n&&(this.defaultValue=this.stringify.dtdAttDefault(n)),this.defaultValueType=r}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.toString=function(e){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("dvk9A",(function(e,a){var t,i,o,s;s={}.hasOwnProperty,o=x("7duh5").isObject,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e,i,s,r){if(a.__super__.constructor.call(this,e),null==s)throw Error("Missing DTD entity name. "+this.debugInfo(s));if(null==r)throw Error("Missing DTD entity value. "+this.debugInfo(s));if(this.pe=!!i,this.name=this.stringify.name(s),this.type=t.EntityDeclaration,o(r)){if(!r.pubID&&!r.sysID)throw Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(s));if(r.pubID&&!r.sysID)throw Error("System identifier is required for a public external entity. "+this.debugInfo(s));if(this.internal=!1,null!=r.pubID&&(this.pubID=this.stringify.dtdPubID(r.pubID)),null!=r.sysID&&(this.sysID=this.stringify.dtdSysID(r.sysID)),null!=r.nData&&(this.nData=this.stringify.dtdNData(r.nData)),this.pe&&this.nData)throw Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(s))}else this.value=this.stringify.dtdEntityValue(r),this.internal=!0}return function(e,a){function t(){this.constructor=e}for(var i in a)s.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"publicId",{get(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get(){return this.sysID}}),Object.defineProperty(a.prototype,"notationName",{get(){return this.nData||null}}),Object.defineProperty(a.prototype,"inputEncoding",{get:()=>null}),Object.defineProperty(a.prototype,"xmlEncoding",{get:()=>null}),Object.defineProperty(a.prototype,"xmlVersion",{get:()=>null}),a.prototype.toString=function(e){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("j6K8N",(function(e,a){var t,i,o;o={}.hasOwnProperty,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e,i,o){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing DTD element name. "+this.debugInfo());o||(o="(#PCDATA)"),Array.isArray(o)&&(o="("+o.join(",")+")"),this.name=this.stringify.name(i),this.type=t.ElementDeclaration,this.value=this.stringify.dtdElementValue(o)}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.toString=function(e){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("9klpB",(function(e,a){var t,i,o;o={}.hasOwnProperty,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e,i,o){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing DTD notation name. "+this.debugInfo(i));if(!o.pubID&&!o.sysID)throw Error("Public or system identifiers are required for an external entity. "+this.debugInfo(i));this.name=this.stringify.name(i),this.type=t.NotationDeclaration,null!=o.pubID&&(this.pubID=this.stringify.dtdPubID(o.pubID)),null!=o.sysID&&(this.sysID=this.stringify.dtdSysID(o.sysID))}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"publicId",{get(){return this.pubID}}),Object.defineProperty(a.prototype,"systemId",{get(){return this.sysID}}),a.prototype.toString=function(e){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("g64jR",(function(e,a){var t,i,o;o={}.hasOwnProperty,t=x("gFlcX"),i=x("aMM3v"),e.exports=function(e){function a(e,i){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing raw text. "+this.debugInfo());this.type=t.Raw,this.value=this.stringify.raw(i)}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(e){return this.options.writer.raw(this,this.options.writer.filterOptions(e))},a}(i)})),x.register("kNEyj",(function(e,a){var t,i,o;o={}.hasOwnProperty,t=x("gFlcX"),i=x("2aENU"),e.exports=function(e){function a(e,i){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=t.Text,this.value=this.stringify.text(i)}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),Object.defineProperty(a.prototype,"isElementContentWhitespace",{get(){throw Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(a.prototype,"wholeText",{get(){var e,a,t;for(t="",a=this.previousSibling;a;)t=a.data+t,a=a.previousSibling;for(t+=this.data,e=this.nextSibling;e;)t+=e.data,e=e.nextSibling;return t}}),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(e){return this.options.writer.text(this,this.options.writer.filterOptions(e))},a.prototype.splitText=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a.prototype.replaceWholeText=function(e){throw Error("This DOM method is not implemented."+this.debugInfo())},a}(i)})),x.register("hPpEd",(function(e,a){var t,i,o;o={}.hasOwnProperty,t=x("gFlcX"),i=x("2aENU"),e.exports=function(e){function a(e,i,o){if(a.__super__.constructor.call(this,e),null==i)throw Error("Missing instruction target. "+this.debugInfo());this.type=t.ProcessingInstruction,this.target=this.stringify.insTarget(i),this.name=this.target,o&&(this.value=this.stringify.insValue(o))}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=function(e){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(e))},a.prototype.isEqualNode=function(e){return!!a.__super__.isEqualNode.apply(this,arguments).isEqualNode(e)&&e.target===this.target},a}(i)})),x.register("iBC4A",(function(e,a){var t,i,o;o={}.hasOwnProperty,i=x("aMM3v"),t=x("gFlcX"),e.exports=function(e){function a(e){a.__super__.constructor.call(this,e),this.type=t.Dummy}return function(e,a){function t(){this.constructor=e}for(var i in a)o.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.clone=function(){return Object.create(this)},a.prototype.toString=e=>"",a}(i)})),x.register("6rpz7",(function(e,a){e.exports=function(){function e(e){this.nodes=e}return Object.defineProperty(e.prototype,"length",{get(){return this.nodes.length||0}}),e.prototype.clone=function(){return this.nodes=null},e.prototype.item=function(e){return this.nodes[e]||null},e}()})),x.register("4qSoy",((e,a)=>{e.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}})),x.register("dygCE",(function(e,a){var t,i;t=(e,a)=>function(){return e.apply(a,arguments)},i={}.hasOwnProperty,e.exports=function(){function e(e){var a,o;for(a in this.assertLegalName=t(this.assertLegalName,this),this.assertLegalChar=t(this.assertLegalChar,this),e||(e={}),this.options=e,this.options.version||(this.options.version="1.0"),o=e.stringify||{})i.call(o,a)&&(this[a]=o[a])}return e.prototype.name=function(e){return this.options.noValidation?e:this.assertLegalName(""+e||"")},e.prototype.text=function(e){return this.options.noValidation?e:this.assertLegalChar(this.textEscape(""+e||""))},e.prototype.cdata=function(e){return this.options.noValidation?e:(e=(e=""+e||"").replace("]]>","]]]]>"),this.assertLegalChar(e))},e.prototype.comment=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/--/))throw Error("Comment text cannot contain double-hypen: "+e);return this.assertLegalChar(e)},e.prototype.raw=function(e){return this.options.noValidation?e:""+e||""},e.prototype.attValue=function(e){return this.options.noValidation?e:this.assertLegalChar(this.attEscape(e=""+e||""))},e.prototype.insTarget=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.insValue=function(e){if(this.options.noValidation)return e;if((e=""+e||"").match(/\?>/))throw Error("Invalid processing instruction value: "+e);return this.assertLegalChar(e)},e.prototype.xmlVersion=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/1\.[0-9]+/))throw Error("Invalid version number: "+e);return e},e.prototype.xmlEncoding=function(e){if(this.options.noValidation)return e;if(!(e=""+e||"").match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw Error("Invalid encoding: "+e);return this.assertLegalChar(e)},e.prototype.xmlStandalone=function(e){return this.options.noValidation?e:e?"yes":"no"},e.prototype.dtdPubID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdSysID=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdElementValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttType=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdAttDefault=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdEntityValue=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.dtdNData=function(e){return this.options.noValidation?e:this.assertLegalChar(""+e||"")},e.prototype.convertAttKey="@",e.prototype.convertPIKey="?",e.prototype.convertTextKey="#text",e.prototype.convertCDataKey="#cdata",e.prototype.convertCommentKey="#comment",e.prototype.convertRawKey="#raw",e.prototype.assertLegalChar=function(e){var a;if(this.options.noValidation)return e;if("1.0"===this.options.version){if(a=e.match(/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/))throw Error("Invalid character in string: "+e+" at index "+a.index)}else if("1.1"===this.options.version&&(a=e.match(/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/)))throw Error("Invalid character in string: "+e+" at index "+a.index);return e},e.prototype.assertLegalName=function(e){if(this.options.noValidation)return e;if(this.assertLegalChar(e),!e.match(/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/))throw Error("Invalid character in name");return e},e.prototype.textEscape=function(e){return this.options.noValidation?e:e.replace(this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,"&").replace(//g,">").replace(/\r/g," ")},e.prototype.attEscape=function(e){return this.options.noValidation?e:e.replace(this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g,"&").replace(/t;t++)o+=this.writeChildNode(s[t],a,0);return a.pretty&&o.slice(-a.newline.length)===a.newline&&(o=o.slice(0,-a.newline.length)),o},a}(t)})),x.register("befF3",(function(e,a){var t,i,o,s;s={}.hasOwnProperty,o=x("7duh5").assign,t=x("gFlcX"),x("6FDK1"),x("g5rcf"),x("jJvtY"),x("fHx8M"),x("5JRyR"),x("g64jR"),x("kNEyj"),x("hPpEd"),x("iBC4A"),x("iI0ao"),x("j6K8N"),x("dvk9A"),x("9klpB"),i=x("675ae"),e.exports=function(){function e(e){var a,t,i;for(a in e||(e={}),this.options=e,t=e.writer||{})s.call(t,a)&&(i=t[a],this["_"+a]=this[a],this[a]=i)}return e.prototype.filterOptions=function(e){var a,t,s,r,n,p,d,l;return e||(e={}),e=o({},this.options,e),(a={writer:this}).pretty=e.pretty||!1,a.allowEmpty=e.allowEmpty||!1,a.indent=null!=(t=e.indent)?t:" ",a.newline=null!=(s=e.newline)?s:"\n",a.offset=null!=(r=e.offset)?r:0,a.dontPrettyTextNodes=null!=(n=null!=(p=e.dontPrettyTextNodes)?p:e.dontprettytextnodes)?n:0,a.spaceBeforeSlash=null!=(d=null!=(l=e.spaceBeforeSlash)?l:e.spacebeforeslash)?d:"",!0===a.spaceBeforeSlash&&(a.spaceBeforeSlash=" "),a.suppressPrettyCount=0,a.user={},a.state=i.None,a},e.prototype.indent=(e,a,t)=>{var i;return!a.pretty||a.suppressPrettyCount?"":a.pretty&&(i=(t||0)+a.offset+1)>0?Array(i).join(a.indent):""},e.prototype.endline=(e,a,t)=>!a.pretty||a.suppressPrettyCount?"":a.newline,e.prototype.attribute=function(e,a,t){var i;return this.openAttribute(e,a,t),i=" "+e.name+'="'+e.value+'"',this.closeAttribute(e,a,t),i},e.prototype.cdata=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+""+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.comment=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+"\x3c!-- ",a.state=i.InsideTag,o+=e.value,a.state=i.CloseTag,o+=" --\x3e"+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.declaration=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+"",o+=this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.docType=function(e,a,t){var o,s,r,n;if(t||(t=0),this.openNode(e,a,t),a.state=i.OpenTag,r=this.indent(e,a,t),r+="0){for(r+=" [",r+=this.endline(e,a,t),a.state=i.InsideTag,o=0,s=(n=e.children).length;s>o;o++)r+=this.writeChildNode(n[o],a,t+1);a.state=i.CloseTag,r+="]"}return a.state=i.CloseTag,r+=a.spaceBeforeSlash+">",r+=this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),r},e.prototype.element=function(e,a,o){var r,n,p,d,l,m,c,u,h,g,f,y,v;for(u in o||(o=0),h=!1,g="",this.openNode(e,a,o),a.state=i.OpenTag,g+=this.indent(e,a,o)+"<"+e.name,f=e.attribs)s.call(f,u)&&(g+=this.attribute(f[u],a,o));if(p=0===(n=e.children.length)?null:e.children[0],0===n||e.children.every((e=>(e.type===t.Text||e.type===t.Raw)&&""===e.value)))a.allowEmpty?(g+=">",a.state=i.CloseTag,g+=""+this.endline(e,a,o)):(a.state=i.CloseTag,g+=a.spaceBeforeSlash+"/>"+this.endline(e,a,o));else if(!a.pretty||1!==n||p.type!==t.Text&&p.type!==t.Raw||null==p.value){if(a.dontPrettyTextNodes)for(d=0,m=(y=e.children).length;m>d;d++)if(((r=y[d]).type===t.Text||r.type===t.Raw)&&null!=r.value){a.suppressPrettyCount++,h=!0;break}for(g+=">"+this.endline(e,a,o),a.state=i.InsideTag,l=0,c=(v=e.children).length;c>l;l++)g+=this.writeChildNode(r=v[l],a,o+1);a.state=i.CloseTag,g+=this.indent(e,a,o)+"",h&&a.suppressPrettyCount--,g+=this.endline(e,a,o),a.state=i.None}else g+=">",a.state=i.InsideTag,a.suppressPrettyCount++,h=!0,g+=this.writeChildNode(p,a,o+1),a.suppressPrettyCount--,h=!1,a.state=i.CloseTag,g+=""+this.endline(e,a,o);return this.closeNode(e,a,o),g},e.prototype.writeChildNode=function(e,a,i){switch(e.type){case t.CData:return this.cdata(e,a,i);case t.Comment:return this.comment(e,a,i);case t.Element:return this.element(e,a,i);case t.Raw:return this.raw(e,a,i);case t.Text:return this.text(e,a,i);case t.ProcessingInstruction:return this.processingInstruction(e,a,i);case t.Dummy:return"";case t.Declaration:return this.declaration(e,a,i);case t.DocType:return this.docType(e,a,i);case t.AttributeDeclaration:return this.dtdAttList(e,a,i);case t.ElementDeclaration:return this.dtdElement(e,a,i);case t.EntityDeclaration:return this.dtdEntity(e,a,i);case t.NotationDeclaration:return this.dtdNotation(e,a,i);default:throw Error("Unknown XML node type: "+e.constructor.name)}},e.prototype.processingInstruction=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+"",o+=this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.raw=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t),a.state=i.InsideTag,o+=e.value,a.state=i.CloseTag,o+=this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.text=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t),a.state=i.InsideTag,o+=e.value,a.state=i.CloseTag,o+=this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.dtdAttList=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+""+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.dtdElement=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+""+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.dtdEntity=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+""+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.dtdNotation=function(e,a,t){var o;return this.openNode(e,a,t),a.state=i.OpenTag,o=this.indent(e,a,t)+""+this.endline(e,a,t),a.state=i.None,this.closeNode(e,a,t),o},e.prototype.openNode=(e,a,t)=>{},e.prototype.closeNode=(e,a,t)=>{},e.prototype.openAttribute=(e,a,t)=>{},e.prototype.closeAttribute=(e,a,t)=>{},e}()})),x.register("675ae",((e,a)=>{e.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}})),x.register("gV33u",(function(e,a){var t,i,o,s,r,n,p,d,l,m,c,u,h,g,f,y,v,b,w,N,k,S,j,C;C={}.hasOwnProperty,j=x("7duh5"),k=j.isObject,N=j.isFunction,S=j.isPlainObject,w=j.getValue,t=x("gFlcX"),u=x("cOOFK"),h=x("5JRyR"),s=x("jJvtY"),r=x("fHx8M"),f=x("g64jR"),b=x("kNEyj"),g=x("hPpEd"),m=x("6FDK1"),c=x("g5rcf"),n=x("iI0ao"),d=x("dvk9A"),p=x("j6K8N"),l=x("9klpB"),o=x("ioxTH"),v=x("dygCE"),y=x("6PL6y"),i=x("675ae"),e.exports=function(){function e(e,a,i){var o;this.name="?xml",this.type=t.Document,e||(e={}),o={},e.writer?S(e.writer)&&(o=e.writer,e.writer=new y):e.writer=new y,this.options=e,this.writer=e.writer,this.writerOptions=this.writer.filterOptions(o),this.stringify=new v(e),this.onDataCallback=a||(()=>{}),this.onEndCallback=i||(()=>{}),this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}return e.prototype.createChildNode=function(e){var a,i,o,s,r,n,p;switch(e.type){case t.CData:this.cdata(e.value);break;case t.Comment:this.comment(e.value);break;case t.Element:for(a in i={},n=e.attribs)C.call(n,a)&&(i[a]=n[a].value);this.node(e.name,i);break;case t.Dummy:this.dummy();break;case t.Raw:this.raw(e.value);break;case t.Text:this.text(e.value);break;case t.ProcessingInstruction:this.instruction(e.target,e.value);break;default:throw Error("This XML node type is not supported in a JS object: "+e.constructor.name)}for(s=0,r=(p=e.children).length;r>s;s++)this.createChildNode(o=p[s]),o.type===t.Element&&this.up();return this},e.prototype.dummy=function(){return this},e.prototype.node=function(e,a,t){var i;if(null==e)throw Error("Missing node name.");if(this.root&&-1===this.currentLevel)throw Error("Document can only have one root node. "+this.debugInfo(e));return this.openCurrent(),e=w(e),null==a&&(a={}),a=w(a),k(a)||(t=(i=[a,t])[0],a=i[1]),this.currentNode=new h(this,e,a),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,null!=t&&this.text(t),this},e.prototype.element=function(e,a,i){var o,s,r,n,p,d;if(this.currentNode&&this.currentNode.type===t.DocType)this.dtdElement.apply(this,arguments);else if(Array.isArray(e)||k(e)||N(e))for(n=this.options.noValidation,this.options.noValidation=!0,(d=new u(this.options).element("TEMP_ROOT")).element(e),this.options.noValidation=n,s=0,r=(p=d.children).length;r>s;s++)this.createChildNode(o=p[s]),o.type===t.Element&&this.up();else this.node(e,a,i);return this},e.prototype.attribute=function(e,a){var t;if(!this.currentNode||this.currentNode.children)throw Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(e));if(null!=e&&(e=w(e)),k(e))for(t in e)C.call(e,t)&&this.attribute(t,e[t]);else N(a)&&(a=a.apply()),this.options.keepNullAttributes&&null==a?this.currentNode.attribs[e]=new o(this,e,""):null!=a&&(this.currentNode.attribs[e]=new o(this,e,a));return this},e.prototype.text=function(e){var a;return this.openCurrent(),a=new b(this,e),this.onData(this.writer.text(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.cdata=function(e){var a;return this.openCurrent(),a=new s(this,e),this.onData(this.writer.cdata(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.comment=function(e){var a;return this.openCurrent(),a=new r(this,e),this.onData(this.writer.comment(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.raw=function(e){var a;return this.openCurrent(),a=new f(this,e),this.onData(this.writer.raw(a,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.instruction=function(e,a){var t,i,o,s;if(this.openCurrent(),null!=e&&(e=w(e)),null!=a&&(a=w(a)),Array.isArray(e))for(t=0,o=e.length;o>t;t++)this.instruction(i=e[t]);else if(k(e))for(i in e)C.call(e,i)&&this.instruction(i,e[i]);else N(a)&&(a=a.apply()),s=new g(this,e,a),this.onData(this.writer.processingInstruction(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this},e.prototype.declaration=function(e,a,t){var i;if(this.openCurrent(),this.documentStarted)throw Error("declaration() must be the first node.");return i=new m(this,e,a,t),this.onData(this.writer.declaration(i,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.doctype=function(e,a,t){if(this.openCurrent(),null==e)throw Error("Missing root node name.");if(this.root)throw Error("dtd() must come before the root node.");return this.currentNode=new c(this,a,t),this.currentNode.rootNodeName=e,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this},e.prototype.dtdElement=function(e,a){var t;return this.openCurrent(),t=new p(this,e,a),this.onData(this.writer.dtdElement(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.attList=function(e,a,t,i,o){var s;return this.openCurrent(),s=new n(this,e,a,t,i,o),this.onData(this.writer.dtdAttList(s,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.entity=function(e,a){var t;return this.openCurrent(),t=new d(this,!1,e,a),this.onData(this.writer.dtdEntity(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.pEntity=function(e,a){var t;return this.openCurrent(),t=new d(this,!0,e,a),this.onData(this.writer.dtdEntity(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.notation=function(e,a){var t;return this.openCurrent(),t=new l(this,e,a),this.onData(this.writer.dtdNotation(t,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this},e.prototype.up=function(){if(0>this.currentLevel)throw Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this},e.prototype.end=function(){for(;this.currentLevel>=0;)this.up();return this.onEnd()},e.prototype.openCurrent=function(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)},e.prototype.openNode=function(e){var a,o,s;if(!e.isOpen){if(this.root||0!==this.currentLevel||e.type!==t.Element||(this.root=e),a="",e.type===t.Element){for(o in this.writerOptions.state=i.OpenTag,a=this.writer.indent(e,this.writerOptions,this.currentLevel)+"<"+e.name,s=e.attribs)C.call(s,o)&&(a+=this.writer.attribute(s[o],this.writerOptions,this.currentLevel));a+=(e.children?">":"/>")+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=i.InsideTag}else this.writerOptions.state=i.OpenTag,a=this.writer.indent(e,this.writerOptions,this.currentLevel)+""),a+=this.writer.endline(e,this.writerOptions,this.currentLevel);return this.onData(a,this.currentLevel),e.isOpen=!0}},e.prototype.closeNode=function(e){var a;if(!e.isClosed)return this.writerOptions.state=i.CloseTag,a=e.type===t.Element?this.writer.indent(e,this.writerOptions,this.currentLevel)+""+this.writer.endline(e,this.writerOptions,this.currentLevel):this.writer.indent(e,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(e,this.writerOptions,this.currentLevel),this.writerOptions.state=i.None,this.onData(a,this.currentLevel),e.isClosed=!0},e.prototype.onData=function(e,a){return this.documentStarted=!0,this.onDataCallback(e,a+1)},e.prototype.onEnd=function(){return this.documentCompleted=!0,this.onEndCallback()},e.prototype.debugInfo=e=>null==e?"":"node: <"+e+">",e.prototype.ele=function(){return this.element.apply(this,arguments)},e.prototype.nod=function(e,a,t){return this.node(e,a,t)},e.prototype.txt=function(e){return this.text(e)},e.prototype.dat=function(e){return this.cdata(e)},e.prototype.com=function(e){return this.comment(e)},e.prototype.ins=function(e,a){return this.instruction(e,a)},e.prototype.dec=function(e,a,t){return this.declaration(e,a,t)},e.prototype.dtd=function(e,a,t){return this.doctype(e,a,t)},e.prototype.e=function(e,a,t){return this.element(e,a,t)},e.prototype.n=function(e,a,t){return this.node(e,a,t)},e.prototype.t=function(e){return this.text(e)},e.prototype.d=function(e){return this.cdata(e)},e.prototype.c=function(e){return this.comment(e)},e.prototype.r=function(e){return this.raw(e)},e.prototype.i=function(e,a){return this.instruction(e,a)},e.prototype.att=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.a=function(){return this.currentNode&&this.currentNode.type===t.DocType?this.attList.apply(this,arguments):this.attribute.apply(this,arguments)},e.prototype.ent=function(e,a){return this.entity(e,a)},e.prototype.pent=function(e,a){return this.pEntity(e,a)},e.prototype.not=function(e,a){return this.notation(e,a)},e}()})),x.register("k2UUh",(function(e,a){var t,i,o,s;s={}.hasOwnProperty,t=x("gFlcX"),o=x("befF3"),i=x("675ae"),e.exports=function(e){function a(e,t){this.stream=e,a.__super__.constructor.call(this,t)}return function(e,a){function t(){this.constructor=e}for(var i in a)s.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(a,e),a.prototype.endline=function(e,t,o){return e.isLastRootNode&&t.state===i.CloseTag?"":a.__super__.endline.call(this,e,t,o)},a.prototype.document=function(e,a){var t,i,o,s,r,n,p,d;for(t=i=0,s=(n=e.children).length;s>i;t=++i)n[t].isLastRootNode=t===e.children.length-1;for(a=this.filterOptions(a),d=[],o=0,r=(p=e.children).length;r>o;o++)d.push(this.writeChildNode(p[o],a,0));return d},a.prototype.attribute=function(e,t,i){return this.stream.write(a.__super__.attribute.call(this,e,t,i))},a.prototype.cdata=function(e,t,i){return this.stream.write(a.__super__.cdata.call(this,e,t,i))},a.prototype.comment=function(e,t,i){return this.stream.write(a.__super__.comment.call(this,e,t,i))},a.prototype.declaration=function(e,t,i){return this.stream.write(a.__super__.declaration.call(this,e,t,i))},a.prototype.docType=function(e,a,t){var o,s,r;if(t||(t=0),this.openNode(e,a,t),a.state=i.OpenTag,this.stream.write(this.indent(e,a,t)),this.stream.write("0){for(this.stream.write(" ["),this.stream.write(this.endline(e,a,t)),a.state=i.InsideTag,o=0,s=(r=e.children).length;s>o;o++)this.writeChildNode(r[o],a,t+1);a.state=i.CloseTag,this.stream.write("]")}return a.state=i.CloseTag,this.stream.write(a.spaceBeforeSlash+">"),this.stream.write(this.endline(e,a,t)),a.state=i.None,this.closeNode(e,a,t)},a.prototype.element=function(e,a,o){var r,n,p,d,l,m,c;for(l in o||(o=0),this.openNode(e,a,o),a.state=i.OpenTag,this.stream.write(this.indent(e,a,o)+"<"+e.name),m=e.attribs)s.call(m,l)&&this.attribute(m[l],a,o);if(n=0===(r=e.children.length)?null:e.children[0],0===r||e.children.every((e=>(e.type===t.Text||e.type===t.Raw)&&""===e.value)))a.allowEmpty?(this.stream.write(">"),a.state=i.CloseTag,this.stream.write("")):(a.state=i.CloseTag,this.stream.write(a.spaceBeforeSlash+"/>"));else if(!a.pretty||1!==r||n.type!==t.Text&&n.type!==t.Raw||null==n.value){for(this.stream.write(">"+this.endline(e,a,o)),a.state=i.InsideTag,p=0,d=(c=e.children).length;d>p;p++)this.writeChildNode(c[p],a,o+1);a.state=i.CloseTag,this.stream.write(this.indent(e,a,o)+"")}else this.stream.write(">"),a.state=i.InsideTag,a.suppressPrettyCount++,this.writeChildNode(n,a,o+1),a.suppressPrettyCount--,a.state=i.CloseTag,this.stream.write("");return this.stream.write(this.endline(e,a,o)),a.state=i.None,this.closeNode(e,a,o)},a.prototype.processingInstruction=function(e,t,i){return this.stream.write(a.__super__.processingInstruction.call(this,e,t,i))},a.prototype.raw=function(e,t,i){return this.stream.write(a.__super__.raw.call(this,e,t,i))},a.prototype.text=function(e,t,i){return this.stream.write(a.__super__.text.call(this,e,t,i))},a.prototype.dtdAttList=function(e,t,i){return this.stream.write(a.__super__.dtdAttList.call(this,e,t,i))},a.prototype.dtdElement=function(e,t,i){return this.stream.write(a.__super__.dtdElement.call(this,e,t,i))},a.prototype.dtdEntity=function(e,t,i){return this.stream.write(a.__super__.dtdEntity.call(this,e,t,i))},a.prototype.dtdNotation=function(e,t,i){return this.stream.write(a.__super__.dtdNotation.call(this,e,t,i))},a}(o)})),x.register("fBWps",(function(e,a){!function(){var a,t,i,o,s,r,n,p,d=(e,a)=>function(){return e.apply(a,arguments)},l={}.hasOwnProperty;n=x("4KDrC"),i=g,a=x("325mR"),r=x("7Hz2s"),p=f.setImmediate,t=x("2SOKK").defaults,o=e=>"object"==typeof e&&null!=e&&0===Object.keys(e).length,s=(e,a,t)=>{var i,o;for(i=0,o=e.length;o>i;i++)a=(0,e[i])(a,t);return a},e.exports.Parser=function(i){function m(a){var i,o;if(this.parseStringPromise=d(this.parseStringPromise,this),this.parseString=d(this.parseString,this),this.reset=d(this.reset,this),this.assignOrPush=d(this.assignOrPush,this),this.processAsync=d(this.processAsync,this),!(this instanceof e.exports.Parser))return new e.exports.Parser(a);for(i in this.options={},o=t[.2])l.call(o,i)&&(this.options[i]=o[i]);for(i in a)l.call(a,i)&&(this.options[i]=a[i]);this.options.xmlns&&(this.options.xmlnskey=this.options.attrkey+"ns"),this.options.normalizeTags&&(this.options.tagNameProcessors||(this.options.tagNameProcessors=[]),this.options.tagNameProcessors.unshift(r.normalize)),this.reset()}return function(e,a){function t(){this.constructor=e}for(var i in a)l.call(a,i)&&(e[i]=a[i]);t.prototype=a.prototype,e.prototype=new t,e.__super__=a.prototype}(m,i),m.prototype.processAsync=function(){var e,a;try{return this.remaining.length>this.options.chunkSize?(e=this.remaining.substr(0,this.options.chunkSize),this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length),this.saxParser=this.saxParser.write(e),p(this.processAsync)):(e=this.remaining,this.remaining="",this.saxParser=this.saxParser.write(e),this.saxParser.close())}catch(e){if(a=e,!this.saxParser.errThrown)return this.saxParser.errThrown=!0,this.emit(a)}},m.prototype.assignOrPush=function(e,a,t){return a in e?(e[a]instanceof Array||(e[a]=[e[a]]),e[a].push(t)):e[a]=this.options.explicitArray?[t]:t},m.prototype.reset=function(){var e,a,t,i,r;return this.removeAllListeners(),this.saxParser=n.parser(this.options.strict,{trim:!1,normalize:!1,xmlns:this.options.xmlns}),this.saxParser.errThrown=!1,this.saxParser.onerror=(r=this,e=>{if(r.saxParser.resume(),!r.saxParser.errThrown)return r.saxParser.errThrown=!0,r.emit("error",e)}),this.saxParser.onend=(e=>()=>{if(!e.saxParser.ended)return e.saxParser.ended=!0,e.emit("end",e.resultObject)})(this),this.saxParser.ended=!1,this.EXPLICIT_CHARKEY=this.options.explicitCharkey,this.resultObject=null,i=[],e=this.options.attrkey,a=this.options.charkey,this.saxParser.onopentag=(t=>o=>{var r,n,p,d,m;if((p={})[a]="",!t.options.ignoreAttrs)for(r in m=o.attributes)l.call(m,r)&&(e in p||t.options.mergeAttrs||(p[e]={}),n=t.options.attrValueProcessors?s(t.options.attrValueProcessors,o.attributes[r],r):o.attributes[r],d=t.options.attrNameProcessors?s(t.options.attrNameProcessors,r):r,t.options.mergeAttrs?t.assignOrPush(p,d,n):p[e][d]=n);return p["#name"]=t.options.tagNameProcessors?s(t.options.tagNameProcessors,o.name):o.name,t.options.xmlns&&(p[t.options.xmlnskey]={uri:o.uri,local:o.local}),i.push(p)})(this),this.saxParser.onclosetag=(e=>()=>{var t,r,n,p,d,m,c,u,h,g;if(m=i.pop(),d=m["#name"],e.options.explicitChildren&&e.options.preserveChildrenOrder||delete m["#name"],!0===m.cdata&&(t=m.cdata,delete m.cdata),h=i[i.length-1],m[a].match(/^\s*$/)&&!t?(r=m[a],delete m[a]):(e.options.trim&&(m[a]=m[a].trim()),e.options.normalize&&(m[a]=m[a].replace(/\s{2,}/g," ").trim()),m[a]=e.options.valueProcessors?s(e.options.valueProcessors,m[a],d):m[a],1===Object.keys(m).length&&a in m&&!e.EXPLICIT_CHARKEY&&(m=m[a])),o(m)&&(m=""!==e.options.emptyTag?e.options.emptyTag:r),null!=e.options.validator&&(g="/"+(()=>{var e,a,t;for(t=[],e=0,a=i.length;a>e;e++)t.push((p=i[e])["#name"]);return t})().concat(d).join("/"),(()=>{try{m=e.options.validator(g,h&&h[d],m)}catch(a){return e.emit("error",a)}})()),e.options.explicitChildren&&!e.options.mergeAttrs&&"object"==typeof m)if(e.options.preserveChildrenOrder){if(h){for(n in h[e.options.childkey]=h[e.options.childkey]||[],c={},m)l.call(m,n)&&(c[n]=m[n]);h[e.options.childkey].push(c),delete m["#name"],1===Object.keys(m).length&&a in m&&!e.EXPLICIT_CHARKEY&&(m=m[a])}}else p={},e.options.attrkey in m&&(p[e.options.attrkey]=m[e.options.attrkey],delete m[e.options.attrkey]),!e.options.charsAsChildren&&e.options.charkey in m&&(p[e.options.charkey]=m[e.options.charkey],delete m[e.options.charkey]),Object.getOwnPropertyNames(m).length>0&&(p[e.options.childkey]=m),m=p;return i.length>0?e.assignOrPush(h,d,m):(e.options.explicitRoot&&(u=m,(m={})[d]=u),e.resultObject=m,e.saxParser.ended=!0,e.emit("end",e.resultObject))})(this),t=(e=>t=>{var o,s;if(s=i[i.length-1])return s[a]+=t,e.options.explicitChildren&&e.options.preserveChildrenOrder&&e.options.charsAsChildren&&(e.options.includeWhiteChars||""!==t.replace(/\\n/g,"").trim())&&(s[e.options.childkey]=s[e.options.childkey]||[],(o={"#name":"__text__"})[a]=t,e.options.normalize&&(o[a]=o[a].replace(/\s{2,}/g," ").trim()),s[e.options.childkey].push(o)),s})(this),this.saxParser.ontext=t,this.saxParser.oncdata=e=>{var a;if(a=t(e))return a.cdata=!0}},m.prototype.parseString=function(e,t){var i;null!=t&&"function"==typeof t&&(this.on("end",(function(e){return this.reset(),t(null,e)})),this.on("error",(function(e){return this.reset(),t(e)})));try{return""===(e=""+e).trim()?(this.emit("end",null),!0):(e=a.stripBOM(e),this.options.async?(this.remaining=e,p(this.processAsync),this.saxParser):this.saxParser.write(e).close())}catch(e){if(i=e,!this.saxParser.errThrown&&!this.saxParser.ended)return this.emit("error",i),this.saxParser.errThrown=!0;if(this.saxParser.ended)throw i}},m.prototype.parseStringPromise=function(e){return new Promise((a=this,(t,i)=>a.parseString(e,((e,a)=>e?i(e):t(a)))));var a},m}(i),e.exports.parseString=(a,t,i)=>{var o,s;return null!=i?("function"==typeof i&&(o=i),"object"==typeof t&&(s=t)):("function"==typeof t&&(o=t),s={}),new e.exports.Parser(s).parseString(a,o)},e.exports.parseStringPromise=(a,t)=>{var i;return"object"==typeof t&&(i=t),new e.exports.Parser(i).parseStringPromise(a)}}()})),x.register("4KDrC",(function(e,a){!function(e){function a(t,i){if(!(this instanceof a))return new a(t,i);var o=this;(e=>{for(var a=0;12>a;a++)e[j[a]]=""})(o),o.q=o.c="",o.bufferCheckPosition=e.MAX_BUFFER_LENGTH,o.opt=i||{},o.opt.lowercase=o.opt.lowercase||o.opt.lowercasetags,o.looseCase=o.opt.lowercase?"toLowerCase":"toUpperCase",o.tags=[],o.closed=o.closedRoot=o.sawRoot=!1,o.tag=o.error=null,o.strict=!!t,o.noscript=!(!t&&!o.opt.noscript),o.state=I.BEGIN,o.strictEntities=o.opt.strictEntities,o.ENTITIES=Object.create(o.strictEntities?e.XML_ENTITIES:e.ENTITIES),o.attribList=[],o.opt.xmlns&&(o.ns=Object.create(O)),o.trackPosition=!1!==o.opt.position,o.trackPosition&&(o.position=o.line=o.column=0),p(o,"onready")}function t(e,i){if(!(this instanceof t))return new t(e,i);S.apply(this),this._parser=new a(e,i),this.writable=!0,this.readable=!0;var o=this;this._parser.onend=()=>{o.emit("end")},this._parser.onerror=e=>{o.emit("error",e),o._parser.error=null},this._decoder=null,C.forEach((e=>{Object.defineProperty(o,"on"+e,{get(){return o._parser["on"+e]},set(a){if(!a)return o.removeAllListeners(e),o._parser["on"+e]=a,a;o.on(e,a)},enumerable:!0,configurable:!1})}))}function i(e){return" "===e||"\n"===e||"\r"===e||"\t"===e}function o(e){return'"'===e||"'"===e}function s(e){return">"===e||i(e)}function r(e,a){return e.test(a)}function n(e,a){return!r(e,a)}function p(e,a,t){e[a]&&e[a](t)}function d(e,a,t){e.textNode&&l(e),p(e,a,t)}function l(e){e.textNode=m(e.opt,e.textNode),e.textNode&&p(e,"ontext",e.textNode),e.textNode=""}function m(e,a){return e.trim&&(a=a.trim()),e.normalize&&(a=a.replace(/\s+/g," ")),a}function c(e,a){return l(e),e.trackPosition&&(a+="\nLine: "+e.line+"\nColumn: "+e.column+"\nChar: "+e.c),e.error=a=Error(a),p(e,"onerror",a),e}function u(e){return e.sawRoot&&!e.closedRoot&&h(e,"Unclosed root tag"),e.state!==I.BEGIN&&e.state!==I.BEGIN_WHITESPACE&&e.state!==I.TEXT&&c(e,"Unexpected end"),l(e),e.c="",e.closed=!0,p(e,"onend"),a.call(e,e.strict,e.opt),e}function h(e,t){if("object"!=typeof e||!(e instanceof a))throw Error("bad call to strictFail");e.strict&&c(e,t)}function g(e){e.strict||(e.tagName=e.tagName[e.looseCase]());var a=e.tags[e.tags.length-1]||e,t=e.tag={name:e.tagName,attributes:{}};e.opt.xmlns&&(t.ns=a.ns),e.attribList.length=0,d(e,"onopentagstart",t)}function f(e,a){var t=0>e.indexOf(":")?["",e]:e.split(":"),i=t[0],o=t[1];return a&&"xmlns"===e&&(i="xmlns",o=""),{prefix:i,local:o}}function v(e){if(e.strict||(e.attribName=e.attribName[e.looseCase]()),-1!==e.attribList.indexOf(e.attribName)||e.tag.attributes.hasOwnProperty(e.attribName))e.attribName=e.attribValue="";else{if(e.opt.xmlns){var a=f(e.attribName,!0),t=a.local;if("xmlns"===a.prefix)if("xml"===t&&e.attribValue!==z)h(e,"xml: prefix must be bound to "+z+"\nActual: "+e.attribValue);else if("xmlns"===t&&e.attribValue!==_)h(e,"xmlns: prefix must be bound to "+_+"\nActual: "+e.attribValue);else{var i=e.tag,o=e.tags[e.tags.length-1]||e;i.ns===o.ns&&(i.ns=Object.create(o.ns)),i.ns[t]=e.attribValue}e.attribList.push([e.attribName,e.attribValue])}else e.tag.attributes[e.attribName]=e.attribValue,d(e,"onattribute",{name:e.attribName,value:e.attribValue});e.attribName=e.attribValue=""}}function b(e,a){if(e.opt.xmlns){var t=e.tag,i=f(e.tagName);t.prefix=i.prefix,t.local=i.local,t.uri=t.ns[i.prefix]||"",t.prefix&&!t.uri&&(h(e,"Unbound namespace prefix: "+JSON.stringify(e.tagName)),t.uri=i.prefix),t.ns&&(e.tags[e.tags.length-1]||e).ns!==t.ns&&Object.keys(t.ns).forEach((a=>{d(e,"onopennamespace",{prefix:a,uri:t.ns[a]})}));for(var o=0,s=e.attribList.length;s>o;o++){var r=e.attribList[o],n=r[0],p=r[1],l=f(n,!0),m=l.prefix,c=""===m?"":t.ns[m]||"",u={name:n,value:p,prefix:m,local:l.local,uri:c};m&&"xmlns"!==m&&!c&&(h(e,"Unbound namespace prefix: "+JSON.stringify(m)),u.uri=m),e.tag.attributes[n]=u,d(e,"onattribute",u)}e.attribList.length=0}e.tag.isSelfClosing=!!a,e.sawRoot=!0,e.tags.push(e.tag),d(e,"onopentag",e.tag),a||(e.state=e.noscript||"script"!==e.tagName.toLowerCase()?I.TEXT:I.SCRIPT,e.tag=null,e.tagName=""),e.attribName=e.attribValue="",e.attribList.length=0}function x(e){if(!e.tagName)return h(e,"Weird empty close tag."),e.textNode+="",void(e.state=I.TEXT);if(e.script){if("script"!==e.tagName)return e.script+="",e.tagName="",void(e.state=I.SCRIPT);d(e,"onscript",e.script),e.script=""}var a=e.tags.length,t=e.tagName;e.strict||(t=t[e.looseCase]());for(var i=t;a--&&e.tags[a].name!==i;)h(e,"Unexpected close tag");if(0>a)return h(e,"Unmatched closing tag: "+e.tagName),e.textNode+="",void(e.state=I.TEXT);e.tagName=t;for(var o=e.tags.length;o-- >a;){var s=e.tag=e.tags.pop();e.tagName=e.tag.name,d(e,"onclosetag",e.tagName);var r={};for(var n in s.ns)r[n]=s.ns[n];e.opt.xmlns&&s.ns!==(e.tags[e.tags.length-1]||e).ns&&Object.keys(s.ns).forEach((a=>{d(e,"onclosenamespace",{prefix:a,uri:s.ns[a]})}))}0===a&&(e.closedRoot=!0),e.tagName=e.attribValue=e.attribName="",e.attribList.length=0,e.state=I.TEXT}function w(e){var a,t=e.entity,i=t.toLowerCase(),o="";return e.ENTITIES[t]?e.ENTITIES[t]:e.ENTITIES[i]?e.ENTITIES[i]:("#"===(t=i).charAt(0)&&("x"===t.charAt(1)?(t=t.slice(2),o=(a=parseInt(t,16)).toString(16)):(t=t.slice(1),o=(a=parseInt(t,10)).toString(10))),t=t.replace(/^0+/,""),isNaN(a)||o.toLowerCase()!==t?(h(e,"Invalid character entity"),"&"+e.entity+";"):String.fromCodePoint(a))}function N(e,a){"<"===a?(e.state=I.OPEN_WAKA,e.startTagPosition=e.position):i(a)||(h(e,"Non-whitespace before first tag."),e.textNode=a,e.state=I.TEXT)}function k(e,a){var t="";return e.length>a&&(t=e.charAt(a)),t}e.parser=(e,t)=>new a(e,t),e.SAXParser=a,e.SAXStream=t,e.createStream=(e,a)=>new t(e,a),e.MAX_BUFFER_LENGTH=65536;var S,j=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];e.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"],Object.create||(Object.create=e=>{function a(){}return a.prototype=e,new a}),Object.keys||(Object.keys=e=>{var a=[];for(var t in e)e.hasOwnProperty(t)&&a.push(t);return a}),a.prototype={end(){u(this)},write(a){var t=this;if(this.error)throw this.error;if(t.closed)return c(t,"Cannot write after close. Assign an onready handler.");if(null===a)return u(t);"object"==typeof a&&(a=""+a);for(var p=0,f="";f=k(a,p++),t.c=f,f;)switch(t.trackPosition&&(t.position++,"\n"===f?(t.line++,t.column=0):t.column++),t.state){case I.BEGIN:if(t.state=I.BEGIN_WHITESPACE,"\ufeff"===f)continue;N(t,f);continue;case I.BEGIN_WHITESPACE:N(t,f);continue;case I.TEXT:if(t.sawRoot&&!t.closedRoot){for(var y=p-1;f&&"<"!==f&&"&"!==f;)(f=k(a,p++))&&t.trackPosition&&(t.position++,"\n"===f?(t.line++,t.column=0):t.column++);t.textNode+=a.substring(y,p-1)}"<"!==f||t.sawRoot&&t.closedRoot&&!t.strict?(i(f)||t.sawRoot&&!t.closedRoot||h(t,"Text data outside of root node."),"&"===f?t.state=I.TEXT_ENTITY:t.textNode+=f):(t.state=I.OPEN_WAKA,t.startTagPosition=t.position);continue;case I.SCRIPT:"<"===f?t.state=I.SCRIPT_ENDING:t.script+=f;continue;case I.SCRIPT_ENDING:"/"===f?t.state=I.CLOSE_TAG:(t.script+="<"+f,t.state=I.SCRIPT);continue;case I.OPEN_WAKA:"!"===f?(t.state=I.SGML_DECL,t.sgmlDecl=""):i(f)||(r(R,f)?(t.state=I.OPEN_TAG,t.tagName=f):"/"===f?(t.state=I.CLOSE_TAG,t.tagName=""):"?"===f?(t.state=I.PROC_INST,t.procInstName=t.procInstBody=""):(h(t,"Unencoded <"),t.position>t.startTagPosition+1&&(f=Array(t.position-t.startTagPosition).join(" ")+f),t.textNode+="<"+f,t.state=I.TEXT));continue;case I.SGML_DECL:"[CDATA["===(t.sgmlDecl+f).toUpperCase()?(d(t,"onopencdata"),t.state=I.CDATA,t.sgmlDecl="",t.cdata=""):t.sgmlDecl+f==="--"?(t.state=I.COMMENT,t.comment="",t.sgmlDecl=""):"DOCTYPE"===(t.sgmlDecl+f).toUpperCase()?(t.state=I.DOCTYPE,(t.doctype||t.sawRoot)&&h(t,"Inappropriately located doctype declaration"),t.doctype="",t.sgmlDecl=""):">"===f?(d(t,"onsgmldeclaration",t.sgmlDecl),t.sgmlDecl="",t.state=I.TEXT):o(f)?(t.state=I.SGML_DECL_QUOTED,t.sgmlDecl+=f):t.sgmlDecl+=f;continue;case I.SGML_DECL_QUOTED:f===t.q&&(t.state=I.SGML_DECL,t.q=""),t.sgmlDecl+=f;continue;case I.DOCTYPE:">"===f?(t.state=I.TEXT,d(t,"ondoctype",t.doctype),t.doctype=!0):(t.doctype+=f,"["===f?t.state=I.DOCTYPE_DTD:o(f)&&(t.state=I.DOCTYPE_QUOTED,t.q=f));continue;case I.DOCTYPE_QUOTED:t.doctype+=f,f===t.q&&(t.q="",t.state=I.DOCTYPE);continue;case I.DOCTYPE_DTD:t.doctype+=f,"]"===f?t.state=I.DOCTYPE:o(f)&&(t.state=I.DOCTYPE_DTD_QUOTED,t.q=f);continue;case I.DOCTYPE_DTD_QUOTED:t.doctype+=f,f===t.q&&(t.state=I.DOCTYPE_DTD,t.q="");continue;case I.COMMENT:"-"===f?t.state=I.COMMENT_ENDING:t.comment+=f;continue;case I.COMMENT_ENDING:"-"===f?(t.state=I.COMMENT_ENDED,t.comment=m(t.opt,t.comment),t.comment&&d(t,"oncomment",t.comment),t.comment=""):(t.comment+="-"+f,t.state=I.COMMENT);continue;case I.COMMENT_ENDED:">"!==f?(h(t,"Malformed comment"),t.comment+="--"+f,t.state=I.COMMENT):t.state=I.TEXT;continue;case I.CDATA:"]"===f?t.state=I.CDATA_ENDING:t.cdata+=f;continue;case I.CDATA_ENDING:"]"===f?t.state=I.CDATA_ENDING_2:(t.cdata+="]"+f,t.state=I.CDATA);continue;case I.CDATA_ENDING_2:">"===f?(t.cdata&&d(t,"oncdata",t.cdata),d(t,"onclosecdata"),t.cdata="",t.state=I.TEXT):"]"===f?t.cdata+="]":(t.cdata+="]]"+f,t.state=I.CDATA);continue;case I.PROC_INST:"?"===f?t.state=I.PROC_INST_ENDING:i(f)?t.state=I.PROC_INST_BODY:t.procInstName+=f;continue;case I.PROC_INST_BODY:if(!t.procInstBody&&i(f))continue;"?"===f?t.state=I.PROC_INST_ENDING:t.procInstBody+=f;continue;case I.PROC_INST_ENDING:">"===f?(d(t,"onprocessinginstruction",{name:t.procInstName,body:t.procInstBody}),t.procInstName=t.procInstBody="",t.state=I.TEXT):(t.procInstBody+="?"+f,t.state=I.PROC_INST_BODY);continue;case I.OPEN_TAG:r(D,f)?t.tagName+=f:(g(t),">"===f?b(t):"/"===f?t.state=I.OPEN_TAG_SLASH:(i(f)||h(t,"Invalid character in tag name"),t.state=I.ATTRIB));continue;case I.OPEN_TAG_SLASH:">"===f?(b(t,!0),x(t)):(h(t,"Forward-slash in opening tag not followed by >"),t.state=I.ATTRIB);continue;case I.ATTRIB:if(i(f))continue;">"===f?b(t):"/"===f?t.state=I.OPEN_TAG_SLASH:r(R,f)?(t.attribName=f,t.attribValue="",t.state=I.ATTRIB_NAME):h(t,"Invalid attribute name");continue;case I.ATTRIB_NAME:"="===f?t.state=I.ATTRIB_VALUE:">"===f?(h(t,"Attribute without value"),t.attribValue=t.attribName,v(t),b(t)):i(f)?t.state=I.ATTRIB_NAME_SAW_WHITE:r(D,f)?t.attribName+=f:h(t,"Invalid attribute name");continue;case I.ATTRIB_NAME_SAW_WHITE:if("="===f)t.state=I.ATTRIB_VALUE;else{if(i(f))continue;h(t,"Attribute without value"),t.tag.attributes[t.attribName]="",t.attribValue="",d(t,"onattribute",{name:t.attribName,value:""}),t.attribName="",">"===f?b(t):r(R,f)?(t.attribName=f,t.state=I.ATTRIB_NAME):(h(t,"Invalid attribute name"),t.state=I.ATTRIB)}continue;case I.ATTRIB_VALUE:if(i(f))continue;o(f)?(t.q=f,t.state=I.ATTRIB_VALUE_QUOTED):(h(t,"Unquoted attribute value"),t.state=I.ATTRIB_VALUE_UNQUOTED,t.attribValue=f);continue;case I.ATTRIB_VALUE_QUOTED:if(f!==t.q){"&"===f?t.state=I.ATTRIB_VALUE_ENTITY_Q:t.attribValue+=f;continue}v(t),t.q="",t.state=I.ATTRIB_VALUE_CLOSED;continue;case I.ATTRIB_VALUE_CLOSED:i(f)?t.state=I.ATTRIB:">"===f?b(t):"/"===f?t.state=I.OPEN_TAG_SLASH:r(R,f)?(h(t,"No whitespace between attributes"),t.attribName=f,t.attribValue="",t.state=I.ATTRIB_NAME):h(t,"Invalid attribute name");continue;case I.ATTRIB_VALUE_UNQUOTED:if(!s(f)){"&"===f?t.state=I.ATTRIB_VALUE_ENTITY_U:t.attribValue+=f;continue}v(t),">"===f?b(t):t.state=I.ATTRIB;continue;case I.CLOSE_TAG:if(t.tagName)">"===f?x(t):r(D,f)?t.tagName+=f:t.script?(t.script+=""===f?x(t):h(t,"Invalid characters in closing tag");continue;case I.TEXT_ENTITY:case I.ATTRIB_VALUE_ENTITY_Q:case I.ATTRIB_VALUE_ENTITY_U:var S,C;switch(t.state){case I.TEXT_ENTITY:S=I.TEXT,C="textNode";break;case I.ATTRIB_VALUE_ENTITY_Q:S=I.ATTRIB_VALUE_QUOTED,C="attribValue";break;case I.ATTRIB_VALUE_ENTITY_U:S=I.ATTRIB_VALUE_UNQUOTED,C="attribValue"}";"===f?(t[C]+=w(t),t.entity="",t.state=S):r(t.entity.length?/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/:/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,f)?t.entity+=f:(h(t,"Invalid character in entity name"),t[C]+="&"+t.entity+f,t.entity="",t.state=S);continue;default:throw Error(t,"Unknown state: "+t.state)}return t.bufferCheckPosition>t.position||(a=>{for(var t=Math.max(e.MAX_BUFFER_LENGTH,10),i=0,o=0;12>o;o++){var s=a[j[o]].length;if(s>t)switch(j[o]){case"textNode":l(a);break;case"cdata":d(a,"oncdata",a.cdata),a.cdata="";break;case"script":d(a,"onscript",a.script),a.script="";break;default:c(a,"Max buffer length exceeded: "+j[o])}i=Math.max(i,s)}a.bufferCheckPosition=e.MAX_BUFFER_LENGTH-i+a.position})(t),t},resume(){return this.error=null,this},close(){return this.write(null)},flush(){var e;l(e=this),""!==e.cdata&&(d(e,"oncdata",e.cdata),e.cdata=""),""!==e.script&&(d(e,"onscript",e.script),e.script="")}};try{S=$375a0e2a8eae2b0c$import$4938110305e6185f$6a4eb2e7fc9e8903}catch(e){S=()=>{}}var C=e.EVENTS.filter((e=>"error"!==e&&"end"!==e));(t.prototype=Object.create(S.prototype,{constructor:{value:t}})).write=function(e){return"function"==typeof Buffer&&"function"==typeof Buffer.isBuffer&&Buffer.isBuffer(e)&&(this._decoder||(this._decoder=new(0,y.StringDecoder)("utf8")),e=this._decoder.write(e)),this._parser.write(""+e),this.emit("data",e),!0},t.prototype.end=function(e){return e&&e.length&&this.write(e),this._parser.end(),!0},t.prototype.on=function(e,a){var t=this;return t._parser["on"+e]||-1===C.indexOf(e)||(t._parser["on"+e]=function(){var a=1===arguments.length?[arguments[0]]:Array.apply(null,arguments);a.splice(0,0,e),t.emit.apply(t,a)}),S.prototype.on.call(t,e,a)};var T,P,E,z="http://www.w3.org/XML/1998/namespace",_="http://www.w3.org/2000/xmlns/",O={xml:z,xmlns:_},R=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,D=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/,I=0;for(var A in e.STATE={BEGIN:I++,BEGIN_WHITESPACE:I++,TEXT:I++,TEXT_ENTITY:I++,OPEN_WAKA:I++,SGML_DECL:I++,SGML_DECL_QUOTED:I++,DOCTYPE:I++,DOCTYPE_QUOTED:I++,DOCTYPE_DTD:I++,DOCTYPE_DTD_QUOTED:I++,COMMENT_STARTING:I++,COMMENT:I++,COMMENT_ENDING:I++,COMMENT_ENDED:I++,CDATA:I++,CDATA_ENDING:I++,CDATA_ENDING_2:I++,PROC_INST:I++,PROC_INST_BODY:I++,PROC_INST_ENDING:I++,OPEN_TAG:I++,OPEN_TAG_SLASH:I++,ATTRIB:I++,ATTRIB_NAME:I++,ATTRIB_NAME_SAW_WHITE:I++,ATTRIB_VALUE:I++,ATTRIB_VALUE_QUOTED:I++,ATTRIB_VALUE_CLOSED:I++,ATTRIB_VALUE_UNQUOTED:I++,ATTRIB_VALUE_ENTITY_Q:I++,ATTRIB_VALUE_ENTITY_U:I++,CLOSE_TAG:I++,CLOSE_TAG_SAW_WHITE:I++,SCRIPT:I++,SCRIPT_ENDING:I++},e.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"},e.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830},Object.keys(e.ENTITIES).forEach((a=>{var t=e.ENTITIES[a];e.ENTITIES[a]="number"==typeof t?String.fromCharCode(t):t})),e.STATE)e.STATE[e.STATE[A]]=A;I=e.STATE,String.fromCodePoint||(T=String.fromCharCode,P=Math.floor,E=function(){var e=16384,a=[],t=-1,i=arguments.length;if(!i)return"";for(var o="";++ts||s>1114111||P(s)!==s)throw RangeError("Invalid code point: "+s);s>65535?a.push(55296+((s-=65536)>>10),s%1024+56320):a.push(s),(t+1===i||a.length>e)&&(o+=T.apply(null,a),a.length=0)}return o},Object.defineProperty?Object.defineProperty(String,"fromCodePoint",{value:E,configurable:!0,writable:!0}):String.fromCodePoint=E)}(e.exports)})),x.register("325mR",((e,a)=>{e.exports.stripBOM=e=>"\ufeff"===e[0]?e.substring(1):e})),x.register("7Hz2s",((e,a)=>{e.exports.normalize=e=>e.toLowerCase(),e.exports.firstCharLowerCase=e=>e.charAt(0).toLowerCase()+e.slice(1),e.exports.stripPrefix=e=>e.replace(/(?!xmlns)^.*:/,""),e.exports.parseNumbers=e=>(isNaN(e)||(e=e%1==0?parseInt(e,10):parseFloat(e)),e),e.exports.parseBooleans=e=>(/^(?:true|false)$/i.test(e)&&(e="true"===e.toLowerCase()),e)})),x.register("2EHau",(function(e,t){function i(e){return{create(a,t){return new r(a,t,e||s)}}}a(e.exports,"DefaultKeepAliveOptions",(()=>s)),a(e.exports,"keepAlivePolicy",(()=>i));var o=x("hwe43");const s={enable:!0};class r extends o.BaseRequestPolicy{constructor(e,a,t){super(e,a),this.keepAliveOptions=t}async sendRequest(e){return e.keepAlive=this.keepAliveOptions.enable,this._nextPolicy.sendRequest(e)}}})),x.register("7y0yt",(function(e,t){function i(e=20){return{create(a,t){return new d(a,t,e)}}}function o(e,a,t){const{request:i,status:s}=a,p=a.headers.get("location");if(p&&(300===s||301===s&&n.includes(i.method)||302===s&&n.includes(i.method)||303===s&&"POST"===i.method||307===s)&&(!e.maxRetries||e.maxRetries>t)){const a=r.URLBuilder.parse(i.url);return a.setPath(p),i.url=""+a,303===s&&(i.method="GET",delete i.body),e._nextPolicy.sendRequest(i).then((a=>o(e,a,t+1)))}return Promise.resolve(a)}a(e.exports,"DefaultRedirectOptions",(()=>p)),a(e.exports,"redirectPolicy",(()=>i));var s=x("hwe43"),r=x("8asXx");const n=["GET","HEAD"],p={handleRedirects:!0,maxRetries:20};class d extends s.BaseRequestPolicy{constructor(e,a,t=20){super(e,a),this.maxRetries=t}sendRequest(e){return this._nextPolicy.sendRequest(e).then((e=>o(this,e,0)))}}})),x.register("iFYKn",(function(e,t){function i(e,a,t){return{create(i,o){return new u(i,o,e,a,t)}}}async function o(e,a,t,i,s){i=n.updateRetryData({retryInterval:e.retryInterval,minRetryInterval:0,maxRetryInterval:e.maxRetryInterval},i,s);const r=a.abortSignal&&a.abortSignal.aborted;if(r||!n.shouldRetry(e.retryCount,(e=>{const a=null==e?void 0:e.status;return!(503===a&&(null==t?void 0:t.headers.get(p.Constants.HeaderConstants.RETRY_AFTER))||void 0===a||500>a&&408!==a||501===a||505===a)}),i,t)){if(r||s||!t)throw i.error||new d.RestError("Failed to send the request.",d.RestError.REQUEST_SEND_ERROR,t&&t.status,t&&t.request,t);return t}m.logger.info("Retrying request in "+i.retryInterval);try{await l.delay(i.retryInterval);const t=await e._nextPolicy.sendRequest(a.clone());return o(e,a,t,i)}catch(s){return o(e,a,t,i,s)}}a(e.exports,"exponentialRetryPolicy",(()=>i)),a(e.exports,"DefaultRetryOptions",(()=>c));var s,r=x("hwe43"),n=x("jAwrv"),p=x("21nev"),d=x("7nYXX"),l=x("6foGL"),m=x("kZQvg");(e=>{e[e.Exponential=0]="Exponential"})(s||(s={}));const c={maxRetries:n.DEFAULT_CLIENT_RETRY_COUNT,retryDelayInMs:n.DEFAULT_CLIENT_RETRY_INTERVAL,maxRetryDelayInMs:n.DEFAULT_CLIENT_MAX_RETRY_INTERVAL};class u extends r.BaseRequestPolicy{constructor(e,a,t,i,o){super(e,a),this.retryCount=n.isNumber(t)?t:n.DEFAULT_CLIENT_RETRY_COUNT,this.retryInterval=n.isNumber(i)?i:n.DEFAULT_CLIENT_RETRY_INTERVAL,this.maxRetryInterval=n.isNumber(o)?o:n.DEFAULT_CLIENT_MAX_RETRY_INTERVAL}sendRequest(e){return this._nextPolicy.sendRequest(e.clone()).then((a=>o(this,e,a))).catch((a=>o(this,e,a.response,void 0,a)))}}})),x.register("jAwrv",((e,t)=>{function i(e){return"number"==typeof e}function o(e,a,t,i,o){return!!a(i,o)&&e>t.retryCount}function s(e,a={retryCount:0,retryInterval:0},t){t&&(a.error&&(t.innerError=a.error),a.error=t),a.retryCount++;let i=Math.pow(2,a.retryCount-1)-1;return i*=.8*e.retryInterval+Math.floor(.4*Math.random()*e.retryInterval),a.retryInterval=Math.min(e.minRetryInterval+i,e.maxRetryInterval),a}a(e.exports,"DEFAULT_CLIENT_RETRY_COUNT",(()=>r)),a(e.exports,"DEFAULT_CLIENT_RETRY_INTERVAL",(()=>n)),a(e.exports,"DEFAULT_CLIENT_MAX_RETRY_INTERVAL",(()=>p)),a(e.exports,"DEFAULT_CLIENT_MIN_RETRY_INTERVAL",(()=>d)),a(e.exports,"isNumber",(()=>i)),a(e.exports,"shouldRetry",(()=>o)),a(e.exports,"updateRetryData",(()=>s));const r=3,n=3e4,p=9e4,d=3e3})),x.register("6foGL",((e,t)=>{function i(e,a,t){return new Promise(((i,r)=>{let n,p;const d=()=>r(new o.AbortError((null==t?void 0:t.abortErrorMsg)?null==t?void 0:t.abortErrorMsg:"The operation was aborted.")),l=()=>{(null==t?void 0:t.abortSignal)&&p&&t.abortSignal.removeEventListener("abort",p)};if(p=()=>(s.isDefined(n)&&clearTimeout(n),l(),d()),(null==t?void 0:t.abortSignal)&&t.abortSignal.aborted)return d();n=setTimeout((()=>{l(),i(a)}),e),(null==t?void 0:t.abortSignal)&&t.abortSignal.addEventListener("abort",p)}))}a(e.exports,"delay",(()=>i));var o=x("bhSD8"),s=x("heaXI")})),x.register("heaXI",((e,t)=>{function i(e){return null!=e}a(e.exports,"isDefined",(()=>i))})),x.register("4tLWw",(function(e,t){function i(e={}){return{create(a,t){return new n(a,t,e)}}}a(e.exports,"logPolicy",(()=>i));var o=x("hwe43"),s=x("ay3LR"),r=x("kZQvg");class n extends o.BaseRequestPolicy{constructor(e,a,{logger:t=r.logger.info,allowedHeaderNames:i=[],allowedQueryParameters:o=[]}={}){super(e,a),this.logger=t,this.sanitizer=new s.Sanitizer({allowedHeaderNames:i,allowedQueryParameters:o})}get allowedHeaderNames(){return this.sanitizer.allowedHeaderNames}set allowedHeaderNames(e){this.sanitizer.allowedHeaderNames=e}get allowedQueryParameters(){return this.sanitizer.allowedQueryParameters}set allowedQueryParameters(e){this.sanitizer.allowedQueryParameters=e}sendRequest(e){return this.logger.enabled?(this.logRequest(e),this._nextPolicy.sendRequest(e).then((e=>this.logResponse(e)))):this._nextPolicy.sendRequest(e)}logRequest(e){this.logger("Request: "+this.sanitizer.sanitize(e))}logResponse(e){return this.logger("Response status code: "+e.status),this.logger("Headers: "+this.sanitizer.sanitize(e.headers)),e}}})),x.register("kSGbF",((e,t)=>{function i(e){return o(e.parameterPath,e.mapper)}function o(e,a){let t;return t="string"==typeof e?e:Array.isArray(e)?e.join("."):a.serializedName,t}a(e.exports,"getPathStringFromParameter",(()=>i)),a(e.exports,"getPathStringFromParameterPath",(()=>o))})),x.register("kOeF9",((e,t)=>{function i(e){const a=new Set;for(const t in e.responses){const i=e.responses[t];i.bodyMapper&&i.bodyMapper.type.name===o.MapperType.Stream&&a.add(+t)}return a}a(e.exports,"getStreamResponseStatusCodes",(()=>i));var o=x("hAVxy")})),x.register("lgRlU",(function(e,t){function i(e){if(e&&"object"==typeof e){const a=e;if("string"==typeof a.url&&"string"==typeof a.method&&"object"==typeof a.headers&&o.isHttpHeadersLike(a.headers)&&"function"==typeof a.validateRequestProperties&&"function"==typeof a.prepare&&"function"==typeof a.clone)return!0}return!1}a(e.exports,"isWebResourceLike",(()=>i)),a(e.exports,"WebResource",(()=>n));var o=x("7EOPB"),s=x("hAVxy"),r=x("aQqza");class n{constructor(e,a,t,i,s,n,p,d,l,m,c,u,h,g,f){this.streamResponseBody=n,this.streamResponseStatusCodes=f,this.url=e||"",this.method=a||"GET",this.headers=o.isHttpHeadersLike(s)?s:new o.HttpHeaders(s),this.body=t,this.query=i,this.formData=void 0,this.withCredentials=p||!1,this.abortSignal=d,this.timeout=l||0,this.onUploadProgress=m,this.onDownloadProgress=c,this.proxySettings=u,this.keepAlive=h,this.decompressResponse=g,this.requestId=this.headers.get("x-ms-client-request-id")||r.generateUuid()}validateRequestProperties(){if(!this.method)throw Error("WebResource.method is required.");if(!this.url)throw Error("WebResource.url is required.")}prepare(e){if(!e)throw Error("options object is required");if(null==e.method||"string"!=typeof e.method.valueOf())throw Error("options.method must be a string.");if(e.url&&e.pathTemplate)throw Error("options.url and options.pathTemplate are mutually exclusive. Please provide exactly one of them.");if(!(null!=e.pathTemplate&&"string"==typeof e.pathTemplate.valueOf()||null!=e.url&&"string"==typeof e.url.valueOf()))throw Error("Please provide exactly one of options.pathTemplate or options.url.");if(e.url){if("string"!=typeof e.url)throw Error('options.url must be of type "string".');this.url=e.url}if(e.method){const a=["GET","PUT","HEAD","DELETE","OPTIONS","POST","PATCH","TRACE"];if(-1===a.indexOf(e.method.toUpperCase()))throw Error('The provided method "'+e.method+'" is invalid. Supported HTTP methods are: '+JSON.stringify(a))}if(this.method=e.method.toUpperCase(),e.pathTemplate){const{pathTemplate:a,pathParameters:t}=e;if("string"!=typeof a)throw Error('options.pathTemplate must be of type "string".');e.baseUrl||(e.baseUrl="https://management.azure.com");const i=e.baseUrl;let o=i+(i.endsWith("/")?"":"/")+(a.startsWith("/")?a.slice(1):a);const s=o.match(/({[\w-]*\s*[\w-]*})/gi);if(s&&s.length){if(!t)throw Error(`pathTemplate: ${a} has been provided. Hence, options.pathParameters must also be provided.`);s.forEach((e=>{const i=e.slice(1,-1),s=t[i];if(null==s||"string"!=typeof s&&"object"!=typeof s){const e=JSON.stringify(t,void 0,2);throw Error(`pathTemplate: ${a} contains the path parameter ${i} however, it is not present in parameters: ${e}.The value of the path parameter can either be a "string" of the form { ${i}: "some sample value" } or it can be an "object" of the form { "${i}": { value: "some sample value", skipUrlEncoding: true } }.`)}if("string"==typeof s.valueOf()&&(o=o.replace(e,encodeURIComponent(s))),"object"==typeof s.valueOf()){if(!s.value)throw Error(`options.pathParameters[${i}] is of type "object" but it does not contain a "value" property.`);o=o.replace(e,s.skipUrlEncoding?s.value:encodeURIComponent(s.value))}}))}this.url=o}if(e.queryParameters){const a=e.queryParameters;if("object"!=typeof a)throw Error('options.queryParameters must be of type object. It should be a JSON object of "query-parameter-name" as the key and the "query-parameter-value" as the value. The "query-parameter-value" may be fo type "string" or an "object" of the form { value: "query-parameter-value", skipUrlEncoding: true }.');this.url&&-1===this.url.indexOf("?")&&(this.url+="?");const t=[];this.query={};for(const e in a){const i=a[e];if(i)if("string"==typeof i)t.push(e+"="+encodeURIComponent(i)),this.query[e]=encodeURIComponent(i);else if("object"==typeof i){if(!i.value)throw Error(`options.queryParameters[${e}] is of type "object" but it does not contain a "value" property.`);i.skipUrlEncoding?(t.push(e+"="+i.value),this.query[e]=i.value):(t.push(e+"="+encodeURIComponent(i.value)),this.query[e]=encodeURIComponent(i.value))}}this.url+=t.join("&")}if(e.headers){const a=e.headers;for(const t of Object.keys(e.headers))this.headers.set(t,a[t])}return this.headers.get("accept-language")||this.headers.set("accept-language","en-US"),this.headers.get("x-ms-client-request-id")||e.disableClientRequestId||this.headers.set("x-ms-client-request-id",this.requestId),this.headers.get("Content-Type")||this.headers.set("Content-Type","application/json; charset=utf-8"),this.body=e.body,null!=e.body&&(e.bodyIsStream?(this.headers.get("Transfer-Encoding")||this.headers.set("Transfer-Encoding","chunked"),"application/octet-stream"!==this.headers.get("Content-Type")&&this.headers.set("Content-Type","application/octet-stream")):(e.serializationMapper&&(this.body=new s.Serializer(e.mappers).serialize(e.serializationMapper,e.body,"requestBody")),e.disableJsonStringifyOnBody||(this.body=JSON.stringify(e.body)))),e.spanOptions&&(this.spanOptions=e.spanOptions),e.tracingContext&&(this.tracingContext=e.tracingContext),this.abortSignal=e.abortSignal,this.onDownloadProgress=e.onDownloadProgress,this.onUploadProgress=e.onUploadProgress,this}clone(){const e=new n(this.url,this.method,this.body,this.query,this.headers&&this.headers.clone(),this.streamResponseBody,this.withCredentials,this.abortSignal,this.timeout,this.onUploadProgress,this.onDownloadProgress,this.proxySettings,this.keepAlive,this.decompressResponse,this.streamResponseStatusCodes);return this.formData&&(e.formData=this.formData),this.operationSpec&&(e.operationSpec=this.operationSpec),this.shouldDeserialize&&(e.shouldDeserialize=this.shouldDeserialize),this.operationResponseGetter&&(e.operationResponseGetter=this.operationResponseGetter),e}}})),x.register("avTWh",((e,t)=>{function i(e){return e&&"function"==typeof e.getToken&&(void 0===e.signRequest||e.getToken.length>0)}a(e.exports,"isTokenCredential",(()=>i))})),x.register("fyICy",(function(e,t){function i(){const e=[{key:"core-http",value:n.Constants.coreHttpVersion}],a=r.getPlatformSpecificData();return((e,a=" ",t="/")=>e.map((e=>`${e.key}${e.value?`${t}${e.value}`:""}`)).join(a))(e.concat(a))}function o(e){const a=e&&null!=e.key?e.key:r.getDefaultUserAgentKey(),t=e&&null!=e.value?e.value:i();return{create(e,i){return new l(e,i,a,t)}}}a(e.exports,"getDefaultUserAgentHeaderName",(()=>d)),a(e.exports,"getDefaultUserAgentValue",(()=>i)),a(e.exports,"userAgentPolicy",(()=>o));var s=x("hwe43"),r=x("8DqXu"),n=x("21nev"),p=x("7EOPB");const d=r.getDefaultUserAgentKey;class l extends s.BaseRequestPolicy{constructor(e,a,t,i){super(e,a),this._nextPolicy=e,this._options=a,this.headerKey=t,this.headerValue=i}sendRequest(e){return this.addUserAgentHeader(e),this._nextPolicy.sendRequest(e)}addUserAgentHeader(e){e.headers||(e.headers=new p.HttpHeaders),!e.headers.get(this.headerKey)&&this.headerValue&&e.headers.set(this.headerKey,this.headerValue)}}})),x.register("8DqXu",((e,t)=>{function i(){return r.Constants.HeaderConstants.USER_AGENT}function s(){return[{key:"Node",value:process.version},{key:"OS",value:`(${o.arch()}-${o.type()}-${o.release()})`}]}a(e.exports,"getDefaultUserAgentKey",(()=>i)),a(e.exports,"getPlatformSpecificData",(()=>s));var r=x("21nev")})),x.register("cZdIl",((e,t)=>{var i;a(e.exports,"QueryCollectionFormat",(()=>i)),(e=>{e.Csv=",",e.Ssv=" ",e.Tsv="\t",e.Pipes="|",e.Multi="Multi"})(i||(i={}))})),x.register("kTuAS",(function(e,t){function i(e,a){const t=((e,a,t)=>{function i(t){var i;return d.isRefreshing||(o=(async(e,a,t)=>{async function i(){if(Date.now()>=t){const a=await e();if(null===a)throw Error("Failed to refresh access token.");return a}try{return await e()}catch(e){return null}}let o=await i();for(;null===o;)await r.delay(a),o=await i();return o})((()=>e.getToken(a,t)),p.retryIntervalInMs,null!==(i=null==s?void 0:s.expiresOnTimestamp)&&void 0!==i?i:Date.now()).then((e=>(o=null,s=e,s))).catch((e=>{throw o=null,s=null,e}))),o}let o=null,s=null;const p=Object.assign(Object.assign({},n),void 0),d={get isRefreshing(){return null!==o},get shouldRefresh(){var e;return!d.isRefreshing&&(null!==(e=null==s?void 0:s.expiresOnTimestamp)&&void 0!==e?e:0)-p.refreshWindowInMsd.mustRefresh?i(e):(d.shouldRefresh&&i(e),s)})(e,a);class i extends o.BaseRequestPolicy{constructor(e,a){super(e,a)}async sendRequest(e){if(!e.url.toLowerCase().startsWith("https://"))throw Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");const{token:a}=await t({abortSignal:e.abortSignal,tracingOptions:{tracingContext:e.tracingContext}});return e.headers.set(s.Constants.HeaderConstants.AUTHORIZATION,"Bearer "+a),this._nextPolicy.sendRequest(e)}}return{create(e,a){return new i(e,a)}}}a(e.exports,"bearerTokenAuthenticationPolicy",(()=>i));var o=x("hwe43"),s=x("21nev"),r=x("6foGL");const n={forcedRefreshWindowInMs:1e3,retryIntervalInMs:3e3,refreshWindowInMs:12e4}})),x.register("d3CVQ",(function(e,t){function i(){return{create(e,a){return new s(e,a)}}}a(e.exports,"disableResponseDecompressionPolicy",(()=>i));var o=x("hwe43");class s extends o.BaseRequestPolicy{constructor(e,a){super(e,a)}async sendRequest(e){return e.decompressResponse=!1,this._nextPolicy.sendRequest(e)}}})),x.register("1tJzf",(function(e,t){function i(e="x-ms-client-request-id"){return{create(a,t){return new s(a,t,e)}}}a(e.exports,"generateClientRequestIdPolicy",(()=>i));var o=x("hwe43");class s extends o.BaseRequestPolicy{constructor(e,a,t){super(e,a),this._requestIdHeaderName=t}sendRequest(e){return e.headers.contains(this._requestIdHeaderName)||e.headers.set(this._requestIdHeaderName,e.requestId),this._nextPolicy.sendRequest(e)}}})),x.register("sCRBT",((e,t)=>{function i(){return s||(s=new o.NodeFetchHttpClient),s}a(e.exports,"getCachedDefaultHttpClient",(()=>i));var o=x("fP8t3");let s})),x.register("cN4CY",(function(e,t){function i(){return{create(e,a){return new s(e,a)}}}a(e.exports,"ndJsonPolicy",(()=>i));var o=x("hwe43");class s extends o.BaseRequestPolicy{constructor(e,a){super(e,a)}async sendRequest(e){if("string"==typeof e.body&&e.body.startsWith("[")){const a=JSON.parse(e.body);Array.isArray(a)&&(e.body=a.map((e=>JSON.stringify(e)+"\n")).join(""))}return this._nextPolicy.sendRequest(e)}}})),x.register("h6UBU",(function(e,t){function i(e){if(!e&&!(e=(()=>{if(!process)return;const e=p.getEnvironmentValue(r.Constants.HTTPS_PROXY),a=p.getEnvironmentValue(r.Constants.ALL_PROXY),t=p.getEnvironmentValue(r.Constants.HTTP_PROXY);return e||a||t})()))return;const{username:a,password:t,urlWithoutAuth:i}=(e=>{const a=e.indexOf("@");if(-1===a)return{urlWithoutAuth:e};const t=e.indexOf("://"),i=-1!==t?t+3:0,o=e.substring(i,a),s=o.indexOf(":"),r=-1!==s;return{username:r?o.substring(0,s):o,password:r?o.substring(s+1):void 0,urlWithoutAuth:e.substring(0,i)+e.substring(a+1)}})(e),o=n.URLBuilder.parse(i);return{host:(o.getScheme()?o.getScheme()+"://":"")+o.getHost(),port:Number.parseInt(o.getPort()||"80"),username:a,password:t}}function o(e,a){return e||(e=i()),l||d.push(...(()=>{const e=p.getEnvironmentValue(r.Constants.NO_PROXY);return l=!0,e?e.split(",").map((e=>e.trim())).filter((e=>e.length)):[]})()),{create(t,i){return new c(t,i,e,null==a?void 0:a.customNoProxyList)}}}a(e.exports,"getDefaultProxySettings",(()=>i)),a(e.exports,"proxyPolicy",(()=>o));var s=x("hwe43"),r=x("21nev"),n=x("8asXx"),p=x("aQqza");const d=[];let l=!1;const m=new Map;class c extends s.BaseRequestPolicy{constructor(e,a,t,i){super(e,a),this.proxySettings=t,this.customNoProxyList=i}sendRequest(e){var a;return e.proxySettings||((e,a,t)=>{if(0===a.length)return!1;const i=n.URLBuilder.parse(e).getHost();if(null==t?void 0:t.has(i))return t.get(i);let o=!1;for(const e of a)"."===e[0]?(i.endsWith(e)||i.length===e.length-1&&i===e.slice(1))&&(o=!0):i===e&&(o=!0);return null==t||t.set(i,o),o})(e.url,null!==(a=this.customNoProxyList)&&void 0!==a?a:d,this.customNoProxyList?void 0:m)||(e.proxySettings=this.proxySettings),this._nextPolicy.sendRequest(e)}}})),x.register("5w2IO",(function(e,t){function i(e=30){return{create(a,t){return new l(a,t,e)}}}function o(e,a,t){if(409===t.status){const i=(e=>{let a,t;if(e){try{t=JSON.parse(e)}catch(e){}if(t&&t.error&&t.error.message&&t.error.code&&"MissingSubscriptionRegistration"===t.error.code){const e=t.error.message.match(/.*'(.*)'/i);e&&(a=e.pop())}}return a})(t.bodyAsText);if(i){const o=(e=>{let a;const t=e.match(/.*\/subscriptions\/[a-f0-9-]+\//gi);if(!t||!t[0])throw Error(`Unable to extract subscriptionId from the given url - ${e}.`);return a=t[0],a})(a.url);return(async(e,a,t,i)=>{const o=`${a}providers/${t}/register?api-version=2016-02-01`,n=`${a}providers/${t}?api-version=2016-02-01`,p=s(i);if(p.method="POST",p.url=o,200!==(await e._nextPolicy.sendRequest(p)).status)throw Error(`Autoregistration of ${t} failed. Please try registering manually.`);return r(e,n,i)})(e,o,i,a).catch((()=>!1)).then((i=>i?(a.headers.set("x-ms-client-request-id",n.generateUuid()),e._nextPolicy.sendRequest(a.clone())):t))}}return Promise.resolve(t)}function s(e,a=!1){const t=e.clone();return a&&(t.url=e.url),t.headers.set("x-ms-client-request-id",n.generateUuid()),t.headers.set("Content-Type","application/json; charset=utf-8"),t}async function r(e,a,t){const i=s(t);i.url=a,i.method="GET";const o=await e._nextPolicy.sendRequest(i),n=o.parsedBody;return!(!o.parsedBody||!n.registrationState||"Registered"!==n.registrationState)||(await d.delay(1e3*e._retryTimeout),r(e,a,t))}a(e.exports,"rpRegistrationPolicy",(()=>i));var n=x("aQqza"),p=x("hwe43"),d=x("6foGL");class l extends p.BaseRequestPolicy{constructor(e,a,t=30){super(e,a),this._retryTimeout=t}sendRequest(e){return this._nextPolicy.sendRequest(e.clone()).then((a=>o(this,e,a)))}}})),x.register("2q3z1",(function(e,t){function i(e){return{create(a,t){return new s(a,t,e)}}}a(e.exports,"signingPolicy",(()=>i));var o=x("hwe43");class s extends o.BaseRequestPolicy{constructor(e,a,t){super(e,a),this.authenticationProvider=t}signRequest(e){return this.authenticationProvider.signRequest(e)}sendRequest(e){return this.signRequest(e).then((e=>this._nextPolicy.sendRequest(e)))}}})),x.register("gCqkm",(function(e,t){function i(e,a,t,i){return{create(o,s){return new p(o,s,e,a,t,i)}}}async function o(e,a,t,i,s){if(s=r.updateRetryData(e,s,i),!r.shouldRetry(e.retryCount,((e,a)=>!(!a||!a.code||"ETIMEDOUT"!==a.code&&"ESOCKETTIMEDOUT"!==a.code&&"ECONNREFUSED"!==a.code&&"ECONNRESET"!==a.code&&"ENOENT"!==a.code)),s,t,i))return i?Promise.reject(s.error):t;try{return await n.delay(s.retryInterval),e._nextPolicy.sendRequest(a.clone())}catch(i){return o(e,a,t,i,s)}}a(e.exports,"systemErrorRetryPolicy",(()=>i));var s=x("hwe43"),r=x("jAwrv"),n=x("6foGL");class p extends s.BaseRequestPolicy{constructor(e,a,t,i,o,s){super(e,a),this.retryCount=r.isNumber(t)?t:r.DEFAULT_CLIENT_RETRY_COUNT,this.retryInterval=r.isNumber(i)?i:r.DEFAULT_CLIENT_RETRY_INTERVAL,this.minRetryInterval=r.isNumber(o)?o:r.DEFAULT_CLIENT_MIN_RETRY_INTERVAL,this.maxRetryInterval=r.isNumber(s)?s:r.DEFAULT_CLIENT_MAX_RETRY_INTERVAL}sendRequest(e){return this._nextPolicy.sendRequest(e.clone()).catch((a=>o(this,e,a.response,a)))}}})),x.register("aRjgH",(function(e,t){function i(){return{create(e,a){return new m(e,a)}}}a(e.exports,"throttlingRetryPolicy",(()=>i));var o=x("hwe43"),s=x("bhSD8"),r=x("21nev"),n=x("18nr4"),p=x("6foGL");const d=r.Constants.HttpConstants.StatusCodes,l="The operation was aborted.";class m extends o.BaseRequestPolicy{constructor(e,a,t){super(e,a),this.numberOfRetries=0,this._handleResponse=t||this._defaultResponseHandler}async sendRequest(e){const a=await this._nextPolicy.sendRequest(e.clone());return a.status!==d.TooManyRequests&&a.status!==d.ServiceUnavailable?a:this._handleResponse(e,a)}async _defaultResponseHandler(e,a){var t;const i=a.headers.get(r.Constants.HeaderConstants.RETRY_AFTER);if(i){const a=m.parseRetryAfterHeader(i);if(a){if(this.numberOfRetries+=1,await p.delay(a,void 0,{abortSignal:e.abortSignal,abortErrorMsg:l}),null===(t=e.abortSignal)||void 0===t?void 0:t.aborted)throw new s.AbortError(l);return n.DEFAULT_CLIENT_MAX_RETRY_COUNT>this.numberOfRetries?this.sendRequest(e):this._nextPolicy.sendRequest(e)}}return a}static parseRetryAfterHeader(e){const a=+e;return Number.isNaN(a)?m.parseDateRetryAfterHeader(e):1e3*a}static parseDateRetryAfterHeader(e){try{const a=Date.now(),t=Date.parse(e)-a;return Number.isNaN(t)?void 0:t}catch(e){return}}}})),x.register("18nr4",((e,t)=>{a(e.exports,"DEFAULT_CLIENT_MAX_RETRY_COUNT",(()=>i));const i=3})),x.register("q4uRL",(function(e,t){function i(e={}){return{create:(a,t)=>new l(a,t,e)}}a(e.exports,"tracingPolicy",(()=>i));var o=x("hwe43"),s=x("9lMq8"),r=x("hYkTo"),n=x("5z1hK"),p=x("kZQvg");const d=s.createSpanFunction({packagePrefix:"",namespace:""});class l extends o.BaseRequestPolicy{constructor(e,a,t){super(e,a),this.userAgent=t.userAgent}async sendRequest(e){if(!e.tracingContext)return this._nextPolicy.sendRequest(e);const a=this.tryCreateSpan(e);if(!a)return this._nextPolicy.sendRequest(e);try{const t=await this._nextPolicy.sendRequest(e);return this.tryProcessResponse(a,t),t}catch(e){throw this.tryProcessError(a,e),e}}tryCreateSpan(e){var a;try{const{span:t}=d("HTTP "+e.method,{tracingOptions:{spanOptions:Object.assign(Object.assign({},e.spanOptions),{kind:r.SpanKind.CLIENT}),tracingContext:e.tracingContext}});if(!t.isRecording())return void t.end();const i=null===(a=e.tracingContext)||void 0===a?void 0:a.getValue(Symbol.for("az.namespace"));"string"==typeof i&&t.setAttribute("az.namespace",i),t.setAttributes({"http.method":e.method,"http.url":e.url,requestId:e.requestId}),this.userAgent&&t.setAttribute("http.user_agent",this.userAgent);const o=t.spanContext(),s=n.getTraceParentHeader(o);if(s&&r.isSpanContextValid(o)){e.headers.set("traceparent",s);const a=o.traceState&&o.traceState.serialize();a&&e.headers.set("tracestate",a)}return t}catch(e){return void p.logger.warning("Skipping creating a tracing span due to an error: "+e.message)}}tryProcessError(e,a){try{e.setStatus({code:r.SpanStatusCode.ERROR,message:a.message}),a.statusCode&&e.setAttribute("http.status_code",a.statusCode),e.end()}catch(e){p.logger.warning("Skipping tracing span processing due to an error: "+e.message)}}tryProcessResponse(e,a){try{e.setAttribute("http.status_code",a.status);const t=a.headers.get("x-ms-request-id");t&&e.setAttribute("serviceRequestId",t),e.setStatus({code:r.SpanStatusCode.OK}),e.end()}catch(e){p.logger.warning("Skipping tracing span processing due to an error: "+e.message)}}}})),x.register("9lMq8",((e,t)=>{function i(e){return(a,t)=>{const i=o.getTracer(),n=(null==t?void 0:t.tracingOptions)||{},p=Object.assign({kind:o.SpanKind.INTERNAL},n.spanOptions),d=e.packagePrefix?`${e.packagePrefix}.${a}`:a;let l;l=(()=>{var e;if("undefined"==typeof process)return!1;const a=null===(e=process.env.AZURE_TRACING_DISABLED)||void 0===e?void 0:e.toLowerCase();return"false"!==a&&"0"!==a&&!!a})()?s.trace.wrapSpanContext(r.INVALID_SPAN_CONTEXT):i.startSpan(d,p,n.tracingContext),e.namespace&&l.setAttribute("az.namespace",e.namespace);let m=n.spanOptions||{};l.isRecording()&&e.namespace&&(m=Object.assign(Object.assign({},n.spanOptions),{attributes:Object.assign(Object.assign({},p.attributes),{"az.namespace":e.namespace})}));const c=Object.assign(Object.assign({},n),{spanOptions:m,tracingContext:o.setSpan(n.tracingContext||o.context.active(),l)});return{span:l,updatedOptions:Object.assign(Object.assign({},t),{tracingOptions:c})}}}a(e.exports,"createSpanFunction",(()=>i));var o=x("hYkTo"),s=x("LlqfE"),r=x("h2y9p")})),x.register("hYkTo",((e,t)=>{function i(e,a){return n.trace.setSpan(e,a)}function o(e){return n.trace.isSpanContextValid(e)}function s(e,a){return n.trace.getTracer(e||"azure/core-tracing",a)}a(e.exports,"SpanKind",(()=>r)),a(e.exports,"context",(()=>p)),a(e.exports,"setSpan",(()=>i)),a(e.exports,"isSpanContextValid",(()=>o)),a(e.exports,"getTracer",(()=>s)),a(e.exports,"SpanStatusCode",(()=>d));var r,n=x("LlqfE");(e=>{e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(r||(r={}));const p=n.context;var d;(e=>{e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(d||(d={}))})),x.register("LlqfE",((e,t)=>{a(e.exports,"context",(()=>n)),a(e.exports,"trace",(()=>p)),a(e.exports,"INVALID_SPAN_CONTEXT",(()=>x("h2y9p").INVALID_SPAN_CONTEXT));var i=x("lizQ8"),o=x("3CeaU"),s=x("alsP2"),r=x("3VQOJ");x("3IYBL"),x("fGA6Z"),x("9NPl0"),x("iTocE"),x("l6ugf"),x("fcpmu"),x("hEi8f"),x("1lQs9"),x("hY1jN"),x("49jgO"),x("eIXS4"),x("233Sz"),x("9U7Nf"),x("9EMjM"),x("dKJRE"),x("kKxbv"),x("9nHRk"),x("khzXF"),x("kgTKk"),x("74VX1"),x("6TRXV"),x("hoBvz"),x("jpHeN"),x("lXPAG"),x("f0FKY"),x("h2y9p"),x("1z0WB"),x("gHNDY");var n=i.ContextAPI.getInstance(),p=o.TraceAPI.getInstance();s.PropagationAPI.getInstance(),r.DiagAPI.instance()})),x.register("lizQ8",(function(e,t){a(e.exports,"ContextAPI",(()=>d),(e=>d=e));var i=x("k1v6y"),o=x("iNouD"),s=x("3VQOJ"),r=(e,a)=>{for(var t=0,i=a.length,o=e.length;i>t;t++,o++)e[o]=a[t];return e},n="context",p=new i.NoopContextManager,d=function(){function e(){}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalContextManager=e=>o.registerGlobal(n,e,s.DiagAPI.instance()),e.prototype.active=function(){return this._getContextManager().active()},e.prototype.with=function(e,a,t){for(var i,o=[],s=3;arguments.length>s;s++)o[s-3]=arguments[s];return(i=this._getContextManager()).with.apply(i,r([e,a,t],o))},e.prototype.bind=function(e,a){return this._getContextManager().bind(e,a)},e.prototype._getContextManager=()=>o.getGlobal(n)||p,e.prototype.disable=function(){this._getContextManager().disable(),o.unregisterGlobal(n,s.DiagAPI.instance())},e}()})),x.register("k1v6y",(function(e,t){a(e.exports,"NoopContextManager",(()=>s),(e=>s=e));var i=x("1z0WB"),o=(e,a)=>{for(var t=0,i=a.length,o=e.length;i>t;t++,o++)e[o]=a[t];return e},s=function(){function e(){}return e.prototype.active=()=>i.ROOT_CONTEXT,e.prototype.with=function(e,a,t){for(var i=[],s=3;arguments.length>s;s++)i[s-3]=arguments[s];return a.call.apply(a,o([t],i))},e.prototype.bind=(e,a)=>a,e.prototype.enable=function(){return this},e.prototype.disable=function(){return this},e}()})),x.register("1z0WB",(function(e,t){function i(e){return Symbol.for(e)}a(e.exports,"createContextKey",(()=>i)),a(e.exports,"ROOT_CONTEXT",(()=>o));var o=new function e(a){var t=this;t._currentContext=a?new Map(a):new Map,t.getValue=e=>t._currentContext.get(e),t.setValue=(a,i)=>{var o=new e(t._currentContext);return o._currentContext.set(a,i),o},t.deleteValue=a=>{var i=new e(t._currentContext);return i._currentContext.delete(a),i}}})),x.register("iNouD",((e,t)=>{function i(e,a,t,i){var o;void 0===i&&(i=!1);var s,r=m[l]=null!==(o=m[l])&&void 0!==o?o:{version:n.VERSION};return!i&&r[e]?(t.error((s=Error("@opentelemetry/api: Attempted duplicate registration of API: "+e)).stack||s.message),!1):r.version!==n.VERSION?(t.error((s=Error("@opentelemetry/api: All API registration versions must match")).stack||s.message),!1):(r[e]=a,t.debug("@opentelemetry/api: Registered a global for "+e+" v"+n.VERSION+"."),!0)}function o(e){var a,t,i=null===(a=m[l])||void 0===a?void 0:a.version;if(i&&p.isCompatible(i))return null===(t=m[l])||void 0===t?void 0:t[e]}function s(e,a){a.debug("@opentelemetry/api: Unregistering a global for "+e+" v"+n.VERSION+".");var t=m[l];t&&delete t[e]}a(e.exports,"registerGlobal",(()=>i)),a(e.exports,"getGlobal",(()=>o)),a(e.exports,"unregisterGlobal",(()=>s)),x("fR0yJ");var r=x("9bi5A"),n=x("3QpI9"),p=x("iJ26B"),d=n.VERSION.split(".")[0],l=Symbol.for("opentelemetry.js.api."+d),m=r._globalThis})),x.register("fR0yJ",((e,t)=>{a(e.exports,"_globalThis",(()=>x("9bi5A")._globalThis)),x("fAyxM")})),x.register("fAyxM",((e,t)=>{a(e.exports,"_globalThis",(()=>x("9bi5A")._globalThis)),x("9bi5A")})),x.register("9bi5A",((e,t)=>{a(e.exports,"_globalThis",(()=>i));var i="object"==typeof globalThis?globalThis:b})),x.register("3QpI9",((e,t)=>{a(e.exports,"VERSION",(()=>i));var i="1.1.0"})),x.register("iJ26B",((e,t)=>{a(e.exports,"isCompatible",(()=>s));var i=x("3QpI9"),o=/^(\d+)\.(\d+)\.(\d+)(-(.+))?$/,s=(e=>{function a(e){return s.add(e),!1}function t(e){return i.add(e),!0}var i=new Set([e]),s=new Set,r=e.match(o);if(!r)return()=>!1;var n=+r[1],p=+r[2],d=+r[3];return null!=r[4]?a=>a===e:e=>{if(i.has(e))return!0;if(s.has(e))return!1;var r=e.match(o);if(!r)return a(e);var l=+r[2],m=+r[3];return null!=r[4]||n!==+r[1]?a(e):0===n?p!==l||d>m?a(e):t(e):p>l?a(e):t(e)}})(i.VERSION)})),x.register("3VQOJ",(function(e,t){a(e.exports,"DiagAPI",(()=>n));var i=x("iqNXg"),o=x("eLhoj"),s=x("7a6OX"),r=x("iNouD"),n=function(){function e(){function e(e){return function(){for(var a=[],t=0;arguments.length>t;t++)a[t]=arguments[t];var i=r.getGlobal("diag");if(i)return i[e].apply(i,a)}}var a=this;a.setLogger=(e,t)=>{var i,n;if(void 0===t&&(t=s.DiagLogLevel.INFO),e===a){var p=Error("Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation");return a.error(null!==(i=p.stack)&&void 0!==i?i:p.message),!1}var d=r.getGlobal("diag"),l=o.createLogLevelDiagLogger(t,e);if(d){var m=null!==(n=Error().stack)&&void 0!==n?n:"";d.warn("Current logger will be overwritten from "+m),l.warn("Current logger will overwrite one already registered from "+m)}return r.registerGlobal("diag",l,a,!0)},a.disable=()=>{r.unregisterGlobal("diag",a)},a.createComponentLogger=e=>new i.DiagComponentLogger(e),a.verbose=e("verbose"),a.debug=e("debug"),a.info=e("info"),a.warn=e("warn"),a.error=e("error")}return e.instance=function(){return this._instance||(this._instance=new e),this._instance},e}()})),x.register("iqNXg",(function(e,t){function i(e,a,t){var i=o.getGlobal("diag");if(i)return t.unshift(a),i[e].apply(i,t)}a(e.exports,"DiagComponentLogger",(()=>s));var o=x("iNouD"),s=function(){function e(e){this._namespace=e.namespace||"DiagComponentLogger"}return e.prototype.debug=function(){for(var e=[],a=0;arguments.length>a;a++)e[a]=arguments[a];return i("debug",this._namespace,e)},e.prototype.error=function(){for(var e=[],a=0;arguments.length>a;a++)e[a]=arguments[a];return i("error",this._namespace,e)},e.prototype.info=function(){for(var e=[],a=0;arguments.length>a;a++)e[a]=arguments[a];return i("info",this._namespace,e)},e.prototype.warn=function(){for(var e=[],a=0;arguments.length>a;a++)e[a]=arguments[a];return i("warn",this._namespace,e)},e.prototype.verbose=function(){for(var e=[],a=0;arguments.length>a;a++)e[a]=arguments[a];return i("verbose",this._namespace,e)},e}()})),x.register("eLhoj",((e,t)=>{function i(e,a){function t(t,i){var o=a[t];return"function"!=typeof o||i>e?()=>{}:o.bind(a)}return o.DiagLogLevel.NONE>e?e=o.DiagLogLevel.NONE:e>o.DiagLogLevel.ALL&&(e=o.DiagLogLevel.ALL),a=a||{},{error:t("error",o.DiagLogLevel.ERROR),warn:t("warn",o.DiagLogLevel.WARN),info:t("info",o.DiagLogLevel.INFO),debug:t("debug",o.DiagLogLevel.DEBUG),verbose:t("verbose",o.DiagLogLevel.VERBOSE)}}a(e.exports,"createLogLevelDiagLogger",(()=>i));var o=x("7a6OX")})),x.register("7a6OX",((e,t)=>{var i;a(e.exports,"DiagLogLevel",(()=>i)),(e=>{e[e.NONE=0]="NONE",e[e.ERROR=30]="ERROR",e[e.WARN=50]="WARN",e[e.INFO=60]="INFO",e[e.DEBUG=70]="DEBUG",e[e.VERBOSE=80]="VERBOSE",e[e.ALL=9999]="ALL"})(i||(i={}))})),x.register("3CeaU",(function(e,t){a(e.exports,"TraceAPI",(()=>d));var i=x("iNouD"),o=x("eIXS4"),s=x("f0FKY"),r=x("2brgl"),n=x("3VQOJ"),p="trace",d=function(){function e(){this._proxyTracerProvider=new o.ProxyTracerProvider,this.wrapSpanContext=s.wrapSpanContext,this.isSpanContextValid=s.isSpanContextValid,this.deleteSpan=r.deleteSpan,this.getSpan=r.getSpan,this.getSpanContext=r.getSpanContext,this.setSpan=r.setSpan,this.setSpanContext=r.setSpanContext}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalTracerProvider=function(e){var a=i.registerGlobal(p,this._proxyTracerProvider,n.DiagAPI.instance());return a&&this._proxyTracerProvider.setDelegate(e),a},e.prototype.getTracerProvider=function(){return i.getGlobal(p)||this._proxyTracerProvider},e.prototype.getTracer=function(e,a){return this.getTracerProvider().getTracer(e,a)},e.prototype.disable=function(){i.unregisterGlobal(p,n.DiagAPI.instance()),this._proxyTracerProvider=new o.ProxyTracerProvider},e}()})),x.register("eIXS4",(function(e,t){a(e.exports,"ProxyTracerProvider",(()=>s));var i=x("49jgO"),o=new(x("4fPmJ").NoopTracerProvider),s=function(){function e(){}return e.prototype.getTracer=function(e,a,t){var o;return null!==(o=this.getDelegateTracer(e,a,t))&&void 0!==o?o:new i.ProxyTracer(this,e,a,t)},e.prototype.getDelegate=function(){var e;return null!==(e=this._delegate)&&void 0!==e?e:o},e.prototype.setDelegate=function(e){this._delegate=e},e.prototype.getDelegateTracer=function(e,a,t){var i;return null===(i=this._delegate)||void 0===i?void 0:i.getTracer(e,a,t)},e}()})),x.register("49jgO",(function(e,t){a(e.exports,"ProxyTracer",(()=>o));var i=new(x("3xANc").NoopTracer),o=function(){function e(e,a,t,i){this._provider=e,this.name=a,this.version=t,this.options=i}return e.prototype.startSpan=function(e,a,t){return this._getTracer().startSpan(e,a,t)},e.prototype.startActiveSpan=function(e,a,t,i){var o=this._getTracer();return Reflect.apply(o.startActiveSpan,o,arguments)},e.prototype._getTracer=function(){if(this._delegate)return this._delegate;var e=this._provider.getDelegateTracer(this.name,this.version,this.options);return e?(this._delegate=e,this._delegate):i},e}()})),x.register("3xANc",(function(e,t){a(e.exports,"NoopTracer",(()=>p));var i=x("lizQ8"),o=x("2brgl"),s=x("7vvl9"),r=x("f0FKY"),n=i.ContextAPI.getInstance(),p=function(){function e(){}return e.prototype.startSpan=(e,a,t)=>{if(null==a?void 0:a.root)return new s.NonRecordingSpan;var i,n=t&&o.getSpanContext(t);return"object"==typeof(i=n)&&"string"==typeof i.spanId&&"string"==typeof i.traceId&&"number"==typeof i.traceFlags&&r.isSpanContextValid(n)?new s.NonRecordingSpan(n):new s.NonRecordingSpan},e.prototype.startActiveSpan=function(e,a,t,i){var s,r,p;if(arguments.length>=2){2===arguments.length?p=a:3===arguments.length?(s=a,p=t):(s=a,r=t,p=i);var d=null!=r?r:n.active(),l=this.startSpan(e,s,d),m=o.setSpan(d,l);return n.with(m,p,void 0,l)}},e}()})),x.register("2brgl",((e,t)=>{function i(e){return e.getValue(l)||void 0}function o(e,a){return e.setValue(l,a)}function s(e){return e.deleteValue(l)}function r(e,a){return o(e,new d.NonRecordingSpan(a))}function n(e){var a;return null===(a=i(e))||void 0===a?void 0:a.spanContext()}a(e.exports,"getSpan",(()=>i)),a(e.exports,"setSpan",(()=>o)),a(e.exports,"deleteSpan",(()=>s)),a(e.exports,"setSpanContext",(()=>r)),a(e.exports,"getSpanContext",(()=>n));var p=x("1z0WB"),d=x("7vvl9"),l=p.createContextKey("OpenTelemetry Context Key SPAN")})),x.register("7vvl9",(function(e,t){a(e.exports,"NonRecordingSpan",(()=>o));var i=x("h2y9p"),o=function(){function e(e){void 0===e&&(e=i.INVALID_SPAN_CONTEXT),this._spanContext=e}return e.prototype.spanContext=function(){return this._spanContext},e.prototype.setAttribute=function(e,a){return this},e.prototype.setAttributes=function(e){return this},e.prototype.addEvent=function(e,a){return this},e.prototype.setStatus=function(e){return this},e.prototype.updateName=function(e){return this},e.prototype.end=e=>{},e.prototype.isRecording=()=>!1,e.prototype.recordException=(e,a)=>{},e}()})),x.register("h2y9p",((e,t)=>{a(e.exports,"INVALID_SPANID",(()=>o)),a(e.exports,"INVALID_TRACEID",(()=>s)),a(e.exports,"INVALID_SPAN_CONTEXT",(()=>r));var i=x("kgTKk"),o="0000000000000000",s="00000000000000000000000000000000",r={traceId:s,spanId:o,traceFlags:i.TraceFlags.NONE}})),x.register("kgTKk",((e,t)=>{var i;a(e.exports,"TraceFlags",(()=>i)),(e=>{e[e.NONE=0]="NONE",e[e.SAMPLED=1]="SAMPLED"})(i||(i={}))})),x.register("f0FKY",((e,t)=>{function i(e){return n.test(t=e.traceId)&&t!==s.INVALID_TRACEID&&p.test(a=e.spanId)&&a!==s.INVALID_SPANID;var a,t}function o(e){return new r.NonRecordingSpan(e)}a(e.exports,"isSpanContextValid",(()=>i)),a(e.exports,"wrapSpanContext",(()=>o));var s=x("h2y9p"),r=x("7vvl9"),n=/^([0-9a-f]{32})$/i,p=/^[0-9a-f]{16}$/i})),x.register("4fPmJ",((e,t)=>{a(e.exports,"NoopTracerProvider",(()=>o));var i=x("3xANc"),o=(()=>{function e(){}return e.prototype.getTracer=(e,a,t)=>new i.NoopTracer,e})()})),x.register("alsP2",(function(e,t){a(e.exports,"PropagationAPI",(()=>m));var i=x("iNouD"),o=x("9qsFe"),s=x("hEi8f"),r=x("mMsu3"),n=x("fGA6Z"),p=x("3VQOJ"),d="propagation",l=new o.NoopTextMapPropagator,m=function(){function e(){this.createBaggage=n.createBaggage,this.getBaggage=r.getBaggage,this.setBaggage=r.setBaggage,this.deleteBaggage=r.deleteBaggage}return e.getInstance=function(){return this._instance||(this._instance=new e),this._instance},e.prototype.setGlobalPropagator=e=>i.registerGlobal(d,e,p.DiagAPI.instance()),e.prototype.inject=function(e,a,t){return void 0===t&&(t=s.defaultTextMapSetter),this._getGlobalPropagator().inject(e,a,t)},e.prototype.extract=function(e,a,t){return void 0===t&&(t=s.defaultTextMapGetter),this._getGlobalPropagator().extract(e,a,t)},e.prototype.fields=function(){return this._getGlobalPropagator().fields()},e.prototype.disable=()=>{i.unregisterGlobal(d,p.DiagAPI.instance())},e.prototype._getGlobalPropagator=()=>i.getGlobal(d)||l,e}()})),x.register("9qsFe",((e,t)=>{a(e.exports,"NoopTextMapPropagator",(()=>i));var i=(()=>{function e(){}return e.prototype.inject=(e,a)=>{},e.prototype.extract=(e,a)=>e,e.prototype.fields=()=>[],e})()})),x.register("hEi8f",((e,t)=>{a(e.exports,"defaultTextMapGetter",(()=>i)),a(e.exports,"defaultTextMapSetter",(()=>o));var i={get(e,a){if(null!=e)return e[a]},keys(e){return null==e?[]:Object.keys(e)}},o={set(e,a,t){null!=e&&(e[a]=t)}}})),x.register("mMsu3",((e,t)=>{function i(e){return e.getValue(r)||void 0}function o(e,a){return e.setValue(r,a)}function s(e){return e.deleteValue(r)}a(e.exports,"getBaggage",(()=>i)),a(e.exports,"setBaggage",(()=>o)),a(e.exports,"deleteBaggage",(()=>s));var r=x("1z0WB").createContextKey("OpenTelemetry Baggage Key")})),x.register("fGA6Z",((e,t)=>{function i(e){return void 0===e&&(e={}),new s.BaggageImpl(new Map(Object.entries(e)))}a(e.exports,"createBaggage",(()=>i));var o=x("3VQOJ"),s=x("buasM");x("2H9Qj"),o.DiagAPI.instance()})),x.register("buasM",(function(e,t){a(e.exports,"BaggageImpl",(()=>i));var i=function(){function e(e){this._entries=e?new Map(e):new Map}return e.prototype.getEntry=function(e){var a=this._entries.get(e);if(a)return Object.assign({},a)},e.prototype.getAllEntries=function(){return Array.from(this._entries.entries()).map((e=>[e[0],e[1]]))},e.prototype.setEntry=function(a,t){var i=new e(this._entries);return i._entries.set(a,t),i},e.prototype.removeEntry=function(a){var t=new e(this._entries);return t._entries.delete(a),t},e.prototype.removeEntries=function(){for(var a=[],t=0;arguments.length>t;t++)a[t]=arguments[t];for(var i=new e(this._entries),o=0,s=a;s.length>o;o++){var r=s[o];i._entries.delete(r)}return i},e.prototype.clear=()=>new e,e}()})),x.register("2H9Qj",((e,t)=>{a(e.exports,"baggageEntryMetadataSymbol",(()=>i));var i=Symbol()})),x.register("3IYBL",((e,a)=>{})),x.register("9NPl0",((e,a)=>{})),x.register("iTocE",((e,a)=>{})),x.register("l6ugf",((e,a)=>{})),x.register("fcpmu",((e,a)=>{x("a7VzB"),x("7a6OX")})),x.register("a7VzB",((e,a)=>{})),x.register("1lQs9",((e,a)=>{})),x.register("hY1jN",((e,a)=>{})),x.register("233Sz",((e,a)=>{})),x.register("9U7Nf",((e,a)=>{var t;(e=>{e[e.NOT_RECORD=0]="NOT_RECORD",e[e.RECORD=1]="RECORD",e[e.RECORD_AND_SAMPLED=2]="RECORD_AND_SAMPLED"})(t||(t={}))})),x.register("9EMjM",((e,a)=>{})),x.register("dKJRE",((e,a)=>{var t;(e=>{e[e.INTERNAL=0]="INTERNAL",e[e.SERVER=1]="SERVER",e[e.CLIENT=2]="CLIENT",e[e.PRODUCER=3]="PRODUCER",e[e.CONSUMER=4]="CONSUMER"})(t||(t={}))})),x.register("kKxbv",((e,a)=>{})),x.register("9nHRk",((e,a)=>{})),x.register("khzXF",((e,a)=>{var t;(e=>{e[e.UNSET=0]="UNSET",e[e.OK=1]="OK",e[e.ERROR=2]="ERROR"})(t||(t={}))})),x.register("74VX1",((e,a)=>{})),x.register("6TRXV",((e,a)=>{x("hdOTg")})),x.register("hdOTg",(function(e,t){a(e.exports,"TraceStateImpl",(()=>o));var i=x("MBbzQ"),o=function(){function e(e){this._internalState=new Map,e&&this._parse(e)}return e.prototype.set=function(e,a){var t=this._clone();return t._internalState.has(e)&&t._internalState.delete(e),t._internalState.set(e,a),t},e.prototype.unset=function(e){var a=this._clone();return a._internalState.delete(e),a},e.prototype.get=function(e){return this._internalState.get(e)},e.prototype.serialize=function(){var e=this;return this._keys().reduce(((a,t)=>(a.push(t+"="+e.get(t)),a)),[]).join(",")},e.prototype._parse=function(e){e.length>512||(this._internalState=e.split(",").reverse().reduce(((e,a)=>{var t=a.trim(),o=t.indexOf("=");if(-1!==o){var s=t.slice(0,o),r=t.slice(o+1,a.length);i.validateKey(s)&&i.validateValue(r)&&e.set(s,r)}return e}),new Map),this._internalState.size>32&&(this._internalState=new Map(Array.from(this._internalState.entries()).reverse().slice(0,32))))},e.prototype._keys=function(){return Array.from(this._internalState.keys()).reverse()},e.prototype._clone=function(){var a=new e;return a._internalState=new Map(this._internalState),a},e}()})),x.register("MBbzQ",((e,t)=>{function i(e){return s.test(e)}function o(e){return r.test(e)&&!n.test(e)}a(e.exports,"validateKey",(()=>i)),a(e.exports,"validateValue",(()=>o));var s=/^(?:[a-z][_0-9a-z-*/]{0,255}|[a-z0-9][_0-9a-z-*/]{0,240}@[a-z][_0-9a-z-*/]{0,13})$/,r=/^[ -~]{0,255}[!-~]$/,n=/,|=/})),x.register("hoBvz",((e,a)=>{})),x.register("jpHeN",((e,a)=>{})),x.register("lXPAG",((e,a)=>{})),x.register("gHNDY",((e,a)=>{})),x.register("5z1hK",((e,t)=>{function i(e){const a=[];if(e.traceId||a.push("traceId"),e.spanId||a.push("spanId"),a.length)return;const t=(e.traceFlags||0).toString(16);return`00-${e.traceId}-${e.spanId}-${1===t.length?"0"+t:t}`}a(e.exports,"getTraceParentHeader",(()=>i))})),x.register("4in51",(function(e,t){a(e.exports,"BlobDownloadResponse",(()=>s));var i=x("aQqza"),o=x("ecLpR");class s{constructor(e,a,t,i,s={}){this.originalResponse=e,this.blobDownloadStream=new o.RetriableReadableStream(this.originalResponse.readableStreamBody,a,t,i,s)}get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){return this.originalResponse.copyCompletedOn}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get tagCount(){return this.originalResponse.tagCount}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get lastAccessed(){return this.originalResponse.lastAccessed}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get versionId(){return this.originalResponse.versionId}get isCurrentVersion(){return this.originalResponse.isCurrentVersion}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get objectReplicationDestinationPolicyId(){return this.originalResponse.objectReplicationDestinationPolicyId}get objectReplicationSourceProperties(){return this.originalResponse.objectReplicationSourceProperties}get isSealed(){return this.originalResponse.isSealed}get immutabilityPolicyExpiresOn(){return this.originalResponse.immutabilityPolicyExpiresOn}get immutabilityPolicyMode(){return this.originalResponse.immutabilityPolicyMode}get legalHold(){return this.originalResponse.legalHold}get contentAsBlob(){return this.originalResponse.blobBody}get readableStreamBody(){return i.isNode?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}}})),x.register("ecLpR",(function(e,t){a(e.exports,"RetriableReadableStream",(()=>i));class i extends l.Readable{constructor(e,a,t,i,o={}){super({highWaterMark:o.highWaterMark}),this.retries=0,this.sourceDataHandler=e=>{if(this.options.doInjectErrorOnce)return this.options.doInjectErrorOnce=void 0,this.source.pause(),this.source.removeAllListeners("data"),void this.source.emit("end");this.offset+=e.length,this.onProgress&&this.onProgress({loadedBytes:this.offset-this.start}),this.push(e)||this.source.pause()},this.sourceErrorOrEndHandler=e=>{e&&"AbortError"===e.name?this.destroy(e):(this.removeSourceEventHandlers(),this.offset-1===this.end?this.push(null):this.offset>this.end?this.destroy(Error(`Data corruption failure: Received more data than original request, data needed offset is ${this.end}, received offset: ${this.offset-1}`)):this.maxRetryRequests>this.retries?(this.retries+=1,this.getter(this.offset).then((e=>{this.source=e,this.setSourceEventHandlers()})).catch((e=>{this.destroy(e)}))):this.destroy(Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset-1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`)))},this.getter=a,this.source=e,this.start=t,this.offset=t,this.end=t+i-1,this.maxRetryRequests=o.maxRetryRequests&&o.maxRetryRequests>=0?o.maxRetryRequests:0,this.onProgress=o.onProgress,this.options=o,this.setSourceEventHandlers()}_read(){this.source.resume()}setSourceEventHandlers(){this.source.on("data",this.sourceDataHandler),this.source.on("end",this.sourceErrorOrEndHandler),this.source.on("error",this.sourceErrorOrEndHandler)}removeSourceEventHandlers(){this.source.removeListener("data",this.sourceDataHandler),this.source.removeListener("end",this.sourceErrorOrEndHandler),this.source.removeListener("error",this.sourceErrorOrEndHandler)}_destroy(e,a){this.removeSourceEventHandlers(),this.source.destroy(),a(null===e?void 0:e)}}})),x.register("B3eN1",(function(e,t){a(e.exports,"BlobQueryResponse",(()=>s));var i=x("aQqza"),o=x("h3L7l");class s{constructor(e,a={}){this.originalResponse=e,this.blobDownloadStream=new o.BlobQuickQueryStream(this.originalResponse.readableStreamBody,a)}get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get blobBody(){}get readableStreamBody(){return i.isNode?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}}})),x.register("h3L7l",(function(e,t){a(e.exports,"BlobQuickQueryStream",(()=>s));var i=x("keNjP"),o=x("4Z5tp");class s extends l.Readable{constructor(e,a={}){super(),this.avroPaused=!0,this.source=e,this.onProgress=a.onProgress,this.onError=a.onError,this.avroReader=new i.AvroReader(new o.AvroReadableFromStream(this.source)),this.avroIter=this.avroReader.parseObjects({abortSignal:a.abortSignal})}_read(){this.avroPaused&&this.readInternal().catch((e=>{this.emit("error",e)}))}async readInternal(){let e;this.avroPaused=!1;do{if(e=await this.avroIter.next(),e.done)break;const a=e.value,t=a.$schema;if("string"!=typeof t)throw Error("Missing schema in avro record.");switch(t){case"com.microsoft.azure.storage.queryBlobContents.resultData":{const e=a.data;if(e instanceof Uint8Array==0)throw Error("Invalid data in avro result record.");this.push(Buffer.from(e))||(this.avroPaused=!0)}break;case"com.microsoft.azure.storage.queryBlobContents.progress":{const e=a.bytesScanned;if("number"!=typeof e)throw Error("Invalid bytesScanned in avro progress record.");this.onProgress&&this.onProgress({loadedBytes:e})}break;case"com.microsoft.azure.storage.queryBlobContents.end":if(this.onProgress){const e=a.totalBytes;if("number"!=typeof e)throw Error("Invalid totalBytes in avro end record.");this.onProgress({loadedBytes:e})}this.push(null);break;case"com.microsoft.azure.storage.queryBlobContents.error":if(this.onError){const e=a.fatal;if("boolean"!=typeof e)throw Error("Invalid fatal in avro error record.");const t=a.name;if("string"!=typeof t)throw Error("Invalid name in avro error record.");const i=a.description;if("string"!=typeof i)throw Error("Invalid description in avro error record.");const o=a.position;if("number"!=typeof o)throw Error("Invalid position in avro error record.");this.onError({position:o,name:t,isFatal:e,description:i})}break;default:throw Error(`Unknown schema ${t} in avro progress record.`)}}while(!e.done&&!this.avroPaused)}}})),x.register("keNjP",(function(e,t){a(e.exports,"AvroReader",(()=>n));var i=x("hEmCq"),o=x("cK2Ab"),s=x("k9a4g"),r=x("fAAmc");x("5Uwh8");class n{constructor(e,a,t,i){this._dataStream=e,this._headerStream=a||e,this._initialized=!1,this._blockOffset=t||0,this._objectIndex=i||0,this._initialBlockOffset=t||0}get blockOffset(){return this._blockOffset}get objectIndex(){return this._objectIndex}async initialize(e={}){const a=await r.AvroParser.readFixedBytes(this._headerStream,o.AVRO_INIT_BYTES.length,{abortSignal:e.abortSignal});if(!s.arraysEqual(a,o.AVRO_INIT_BYTES))throw Error("Stream is not an Avro file.");this._metadata=await r.AvroParser.readMap(this._headerStream,r.AvroParser.readString,{abortSignal:e.abortSignal});const t=this._metadata[o.AVRO_CODEC_KEY];if(null!=t&&"null"!=t)throw Error("Codecs are not supported");this._syncMarker=await r.AvroParser.readFixedBytes(this._headerStream,o.AVRO_SYNC_MARKER_SIZE,{abortSignal:e.abortSignal});const i=JSON.parse(this._metadata[o.AVRO_SCHEMA_KEY]);if(this._itemType=r.AvroType.fromSchema(i),0==this._blockOffset&&(this._blockOffset=this._initialBlockOffset+this._dataStream.position),this._itemsRemainingInBlock=await r.AvroParser.readLong(this._dataStream,{abortSignal:e.abortSignal}),await r.AvroParser.readLong(this._dataStream,{abortSignal:e.abortSignal}),this._initialized=!0,this._objectIndex&&this._objectIndex>0)for(let a=0;this._objectIndex>a;a++)await this._itemType.read(this._dataStream,{abortSignal:e.abortSignal}),this._itemsRemainingInBlock--}hasNext(){return!this._initialized||this._itemsRemainingInBlock>0}parseObjects(e={}){return i.__asyncGenerator(this,arguments,(function*(){for(this._initialized||(yield i.__await(this.initialize(e)));this.hasNext();){const a=yield i.__await(this._itemType.read(this._dataStream,{abortSignal:e.abortSignal}));if(this._itemsRemainingInBlock--,this._objectIndex++,0==this._itemsRemainingInBlock){const a=yield i.__await(r.AvroParser.readFixedBytes(this._dataStream,o.AVRO_SYNC_MARKER_SIZE,{abortSignal:e.abortSignal}));if(this._blockOffset=this._initialBlockOffset+this._dataStream.position,this._objectIndex=0,!s.arraysEqual(this._syncMarker,a))throw Error("Stream is not a valid Avro file.");try{this._itemsRemainingInBlock=yield i.__await(r.AvroParser.readLong(this._dataStream,{abortSignal:e.abortSignal}))}catch(e){this._itemsRemainingInBlock=0}this._itemsRemainingInBlock>0&&(yield i.__await(r.AvroParser.readLong(this._dataStream,{abortSignal:e.abortSignal})))}yield yield i.__await(a)}}))}}})),x.register("cK2Ab",((e,t)=>{a(e.exports,"AVRO_SYNC_MARKER_SIZE",(()=>i)),a(e.exports,"AVRO_INIT_BYTES",(()=>o)),a(e.exports,"AVRO_CODEC_KEY",(()=>s)),a(e.exports,"AVRO_SCHEMA_KEY",(()=>r));const i=16,o=new Uint8Array([79,98,106,1]),s="avro.codec",r="avro.schema"})),x.register("k9a4g",((e,t)=>{function i(e,a){if(e===a)return!0;if(null==e||null==a)return!1;if(e.length!=a.length)return!1;for(let t=0;e.length>t;++t)if(e[t]!==a[t])return!1;return!0}a(e.exports,"arraysEqual",(()=>i))})),x.register("fAAmc",(function(e,t){a(e.exports,"AvroParser",(()=>i)),a(e.exports,"AvroType",(()=>d));class i{static async readFixedBytes(e,a,t={}){const i=await e.read(a,{abortSignal:t.abortSignal});if(i.length!=a)throw Error("Hit stream end.");return i}static async readByte(e,a={}){return(await i.readFixedBytes(e,1,a))[0]}static async readZigZagLong(e,a={}){let t,o,s,r=0,n=0;do{t=await i.readByte(e,a),o=128&t,r|=(127&t)<n);if(o){s=268435456;do{t=await i.readByte(e,a),r+=(127&t)*s,s*=128}while(128&t);const o=(r%2?-(r+1):r)/2;if(Number.MIN_SAFE_INTEGER>o||o>Number.MAX_SAFE_INTEGER)throw Error("Integer overflow.");return o}return r>>1^-(1&r)}static async readLong(e,a={}){return i.readZigZagLong(e,a)}static async readInt(e,a={}){return i.readZigZagLong(e,a)}static async readNull(){return null}static async readBoolean(e,a={}){const t=await i.readByte(e,a);if(1==t)return!0;if(0==t)return!1;throw Error("Byte was not a boolean.")}static async readFloat(e,a={}){const t=await i.readFixedBytes(e,4,a);return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat32(0,!0)}static async readDouble(e,a={}){const t=await i.readFixedBytes(e,8,a);return new DataView(t.buffer,t.byteOffset,t.byteLength).getFloat64(0,!0)}static async readBytes(e,a={}){const t=await i.readLong(e,a);if(0>t)throw Error("Bytes size was negative.");return await e.read(t,{abortSignal:a.abortSignal})}static async readString(e,a={}){const t=await i.readBytes(e,a);return"undefined"==typeof TextDecoder&&(b.TextDecoder=s.TextDecoder),(new TextDecoder).decode(t)}static async readMapPair(e,a,t={}){return{key:await i.readString(e,t),value:await a(e,t)}}static async readMap(e,a,t={}){const o=await i.readArray(e,(async(e,t={})=>await i.readMapPair(e,a,t)),t),s={};for(const e of o)s[e.key]=e.value;return s}static async readArray(e,a,t={}){const o=[];for(let s=await i.readLong(e,t);0!=s;s=await i.readLong(e,t))for(0>s&&(await i.readLong(e,t),s=-s);s--;){const i=await a(e,t);o.push(i)}return o}}var o,r,n,p;(r=o||(o={})).RECORD="record",r.ENUM="enum",r.ARRAY="array",r.MAP="map",r.UNION="union",r.FIXED="fixed";class d{static fromSchema(e){return"string"==typeof e?d.fromStringSchema(e):Array.isArray(e)?d.fromArraySchema(e):d.fromObjectSchema(e)}static fromStringSchema(e){switch(e){case n.NULL:case n.BOOLEAN:case n.INT:case n.LONG:case n.FLOAT:case n.DOUBLE:case n.BYTES:case n.STRING:return new l(e);default:throw Error("Unexpected Avro type "+e)}}static fromArraySchema(e){return new c(e.map(d.fromSchema))}static fromObjectSchema(e){const a=e.type;try{return d.fromStringSchema(a)}catch(e){}switch(a){case o.RECORD:if(e.aliases)throw Error("aliases currently is not supported, schema: "+e);if(!e.name)throw Error("Required attribute 'name' doesn't exist on schema: "+e);const t={};if(!e.fields)throw Error("Required attribute 'fields' doesn't exist on schema: "+e);for(const a of e.fields)t[a.name]=d.fromSchema(a.type);return new h(t,e.name);case o.ENUM:if(e.aliases)throw Error("aliases currently is not supported, schema: "+e);if(!e.symbols)throw Error("Required attribute 'symbols' doesn't exist on schema: "+e);return new m(e.symbols);case o.MAP:if(!e.values)throw Error("Required attribute 'values' doesn't exist on schema: "+e);return new u(d.fromSchema(e.values));default:throw Error(`Unexpected Avro type ${a} in ${e}`)}}}(p=n||(n={})).NULL="null",p.BOOLEAN="boolean",p.INT="int",p.LONG="long",p.FLOAT="float",p.DOUBLE="double",p.BYTES="bytes",p.STRING="string";class l extends d{constructor(e){super(),this._primitive=e}async read(e,a={}){switch(this._primitive){case n.NULL:return await i.readNull();case n.BOOLEAN:return await i.readBoolean(e,a);case n.INT:return await i.readInt(e,a);case n.LONG:return await i.readLong(e,a);case n.FLOAT:return await i.readFloat(e,a);case n.DOUBLE:return await i.readDouble(e,a);case n.BYTES:return await i.readBytes(e,a);case n.STRING:return await i.readString(e,a);default:throw Error("Unknown Avro Primitive")}}}class m extends d{constructor(e){super(),this._symbols=e}async read(e,a={}){const t=await i.readInt(e,a);return this._symbols[t]}}class c extends d{constructor(e){super(),this._types=e}async read(e,a={}){const t=await i.readInt(e,a);return await this._types[t].read(e,a)}}class u extends d{constructor(e){super(),this._itemType=e}async read(e,a={}){return await i.readMap(e,(async(e,a)=>await this._itemType.read(e,a)),a)}}class h extends d{constructor(e,a){super(),this._fields=e,this._name=a}async read(e,a={}){const t={};t.$schema=this._name;for(const i in this._fields)this._fields.hasOwnProperty(i)&&(t[i]=await this._fields[i].read(e,a));return t}}})),x.register("5Uwh8",((e,a)=>{x("i0OjU"),x("4NIfR"),x("jQcZx")})),x.register("4NIfR",((e,a)=>{})),x.register("jQcZx",((e,a)=>{x("hEmCq")})),x.register("4Z5tp",(function(e,t){a(e.exports,"AvroReadableFromStream",(()=>s));var i=x("jeJ2x");const o=new(x("bhSD8").AbortError)("Reading from the avro stream was aborted.");class s extends i.AvroReadable{constructor(e){super(),this._readable=e,this._position=0}toUint8Array(e){return"string"==typeof e?Buffer.from(e):e}get position(){return this._position}async read(e,a={}){var t;if(null===(t=a.abortSignal)||void 0===t?void 0:t.aborted)throw o;if(0>e)throw Error("size parameter should be positive: "+e);if(0===e)return new Uint8Array;if(!this._readable.readable)throw Error("Stream no longer readable.");const i=this._readable.read(e);return i?(this._position+=i.length,this.toUint8Array(i)):new Promise(((t,i)=>{const s=()=>{this._readable.removeListener("readable",r),this._readable.removeListener("error",n),this._readable.removeListener("end",n),this._readable.removeListener("close",n),a.abortSignal&&a.abortSignal.removeEventListener("abort",p)},r=()=>{const a=this._readable.read(e);a&&(this._position+=a.length,s(),t(this.toUint8Array(a)))},n=()=>{s(),i()},p=()=>{s(),i(o)};this._readable.on("readable",r),this._readable.once("error",n),this._readable.once("end",n),this._readable.once("close",n),a.abortSignal&&a.abortSignal.addEventListener("abort",p)}))}}})),x.register("jeJ2x",((e,t)=>{a(e.exports,"AvroReadable",(()=>i));class i{}})),x.register("cCx4o",((e,t)=>{a(e.exports,"AnonymousCredential",(()=>s));var i=x("4TJvM"),o=x("8lKvh");class s extends o.Credential{create(e,a){return new i.AnonymousCredentialPolicy(e,a)}}})),x.register("4TJvM",(function(e,t){a(e.exports,"AnonymousCredentialPolicy",(()=>o));var i=x("4oIZi");class o extends i.CredentialPolicy{constructor(e,a){super(e,a)}}})),x.register("4oIZi",(function(e,t){a(e.exports,"CredentialPolicy",(()=>o));var i=x("hwe43");class o extends i.BaseRequestPolicy{sendRequest(e){return this._nextPolicy.sendRequest(this.signRequest(e))}signRequest(e){return e}}})),x.register("8lKvh",((e,t)=>{a(e.exports,"Credential",(()=>i));class i{create(e,a){throw Error("Method should be implemented in children classes.")}}})),x.register("dhM4N",(function(e,t){a(e.exports,"StorageSharedKeyCredential",(()=>s));var i=x("2noWL"),o=x("8lKvh");class s extends o.Credential{constructor(e,a){super(),this.accountName=e,this.accountKey=Buffer.from(a,"base64")}create(e,a){return new i.StorageSharedKeyCredentialPolicy(e,a,this)}computeHMACSHA256(e){return n.createHmac("sha256",this.accountKey).update(e,"utf8").digest("base64")}}})),x.register("2noWL",(function(e,t){a(e.exports,"StorageSharedKeyCredentialPolicy",(()=>r));var i=x("bjvJG"),o=x("aHkZ2"),s=x("4oIZi");class r extends s.CredentialPolicy{constructor(e,a,t){super(e,a),this.factory=t}signRequest(e){e.headers.set(i.HeaderConstants.X_MS_DATE,(new Date).toUTCString()),e.body&&("string"==typeof e.body||void 0!==e.body)&&e.body.length>0&&e.headers.set(i.HeaderConstants.CONTENT_LENGTH,Buffer.byteLength(e.body));const a=[e.method.toUpperCase(),this.getHeaderValueToSign(e,i.HeaderConstants.CONTENT_LANGUAGE),this.getHeaderValueToSign(e,i.HeaderConstants.CONTENT_ENCODING),this.getHeaderValueToSign(e,i.HeaderConstants.CONTENT_LENGTH),this.getHeaderValueToSign(e,i.HeaderConstants.CONTENT_MD5),this.getHeaderValueToSign(e,i.HeaderConstants.CONTENT_TYPE),this.getHeaderValueToSign(e,i.HeaderConstants.DATE),this.getHeaderValueToSign(e,i.HeaderConstants.IF_MODIFIED_SINCE),this.getHeaderValueToSign(e,i.HeaderConstants.IF_MATCH),this.getHeaderValueToSign(e,i.HeaderConstants.IF_NONE_MATCH),this.getHeaderValueToSign(e,i.HeaderConstants.IF_UNMODIFIED_SINCE),this.getHeaderValueToSign(e,i.HeaderConstants.RANGE)].join("\n")+"\n"+this.getCanonicalizedHeadersString(e)+this.getCanonicalizedResourceString(e),t=this.factory.computeHMACSHA256(a);return e.headers.set(i.HeaderConstants.AUTHORIZATION,`SharedKey ${this.factory.accountName}:${t}`),e}getHeaderValueToSign(e,a){const t=e.headers.get(a);return t?a===i.HeaderConstants.CONTENT_LENGTH&&"0"===t?"":t:""}getCanonicalizedHeadersString(e){let a=e.headers.headersArray().filter((e=>e.name.toLowerCase().startsWith(i.HeaderConstants.PREFIX_FOR_STORAGE)));a.sort(((e,a)=>e.name.toLowerCase().localeCompare(a.name.toLowerCase()))),a=a.filter(((e,a,t)=>0>=a||e.name.toLowerCase()!==t[a-1].name.toLowerCase()));let t="";return a.forEach((e=>{t+=`${e.name.toLowerCase().trimRight()}:${e.value.trimLeft()}\n`})),t}getCanonicalizedResourceString(e){const a=o.getURLPath(e.url)||"/";let t="";t+=`/${this.factory.accountName}${a}`;const i=o.getURLQueries(e.url),s={};if(i){const e=[];for(const a in i)if({}.hasOwnProperty.call(i,a)){const t=a.toLowerCase();s[t]=i[a],e.push(t)}e.sort();for(const a of e)t+=`\n${a}:${decodeURIComponent(s[a])}`}return t}}})),x.register("bjvJG",((e,t)=>{a(e.exports,"SDK_VERSION",(()=>i)),a(e.exports,"SERVICE_VERSION",(()=>o)),a(e.exports,"BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES",(()=>s)),a(e.exports,"BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES",(()=>r)),a(e.exports,"BLOCK_BLOB_MAX_BLOCKS",(()=>n)),a(e.exports,"DEFAULT_BLOCK_BUFFER_SIZE_BYTES",(()=>p)),a(e.exports,"DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES",(()=>d)),a(e.exports,"DEFAULT_MAX_DOWNLOAD_RETRY_REQUESTS",(()=>l)),a(e.exports,"StorageOAuthScopes",(()=>m)),a(e.exports,"URLConstants",(()=>c)),a(e.exports,"HeaderConstants",(()=>u)),a(e.exports,"ETagNone",(()=>h)),a(e.exports,"ETagAny",(()=>g)),a(e.exports,"EncryptionAlgorithmAES25",(()=>f)),a(e.exports,"DevelopmentConnectionString",(()=>y)),a(e.exports,"StorageBlobLoggingAllowedHeaderNames",(()=>v)),a(e.exports,"StorageBlobLoggingAllowedQueryParameters",(()=>b)),a(e.exports,"BlobUsesCustomerSpecifiedEncryptionMsg",(()=>x));const i="12.9.0",o="2021-04-10",s=268435456,r=4194304e3,n=5e4,p=8388608,d=4194304,l=5,m="https://storage.azure.com/.default",c={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}},u={AUTHORIZATION:"Authorization",AUTHORIZATION_SCHEME:"Bearer",CONTENT_ENCODING:"Content-Encoding",CONTENT_ID:"Content-ID",CONTENT_LANGUAGE:"Content-Language",CONTENT_LENGTH:"Content-Length",CONTENT_MD5:"Content-Md5",CONTENT_TRANSFER_ENCODING:"Content-Transfer-Encoding",CONTENT_TYPE:"Content-Type",COOKIE:"Cookie",DATE:"date",IF_MATCH:"if-match",IF_MODIFIED_SINCE:"if-modified-since",IF_NONE_MATCH:"if-none-match",IF_UNMODIFIED_SINCE:"if-unmodified-since",PREFIX_FOR_STORAGE:"x-ms-",RANGE:"Range",USER_AGENT:"User-Agent",X_MS_CLIENT_REQUEST_ID:"x-ms-client-request-id",X_MS_COPY_SOURCE:"x-ms-copy-source",X_MS_DATE:"x-ms-date",X_MS_ERROR_CODE:"x-ms-error-code",X_MS_VERSION:"x-ms-version"},h="",g="*",f="AES256",y="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;",v=["Access-Control-Allow-Origin","Cache-Control","Content-Length","Content-Type","Date","Request-Id","traceparent","Transfer-Encoding","User-Agent","x-ms-client-request-id","x-ms-date","x-ms-error-code","x-ms-request-id","x-ms-return-client-request-id","x-ms-version","Accept-Ranges","Content-Disposition","Content-Encoding","Content-Language","Content-MD5","Content-Range","ETag","Last-Modified","Server","Vary","x-ms-content-crc64","x-ms-copy-action","x-ms-copy-completion-time","x-ms-copy-id","x-ms-copy-progress","x-ms-copy-status","x-ms-has-immutability-policy","x-ms-has-legal-hold","x-ms-lease-state","x-ms-lease-status","x-ms-range","x-ms-request-server-encrypted","x-ms-server-encrypted","x-ms-snapshot","x-ms-source-range","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","x-ms-access-tier","x-ms-access-tier-change-time","x-ms-access-tier-inferred","x-ms-account-kind","x-ms-archive-status","x-ms-blob-append-offset","x-ms-blob-cache-control","x-ms-blob-committed-block-count","x-ms-blob-condition-appendpos","x-ms-blob-condition-maxsize","x-ms-blob-content-disposition","x-ms-blob-content-encoding","x-ms-blob-content-language","x-ms-blob-content-length","x-ms-blob-content-md5","x-ms-blob-content-type","x-ms-blob-public-access","x-ms-blob-sequence-number","x-ms-blob-type","x-ms-copy-destination-snapshot","x-ms-creation-time","x-ms-default-encryption-scope","x-ms-delete-snapshots","x-ms-delete-type-permanent","x-ms-deny-encryption-scope-override","x-ms-encryption-algorithm","x-ms-if-sequence-number-eq","x-ms-if-sequence-number-le","x-ms-if-sequence-number-lt","x-ms-incremental-copy","x-ms-lease-action","x-ms-lease-break-period","x-ms-lease-duration","x-ms-lease-id","x-ms-lease-time","x-ms-page-write","x-ms-proposed-lease-id","x-ms-range-get-content-md5","x-ms-rehydrate-priority","x-ms-sequence-number-action","x-ms-sku-name","x-ms-source-content-md5","x-ms-source-if-match","x-ms-source-if-modified-since","x-ms-source-if-none-match","x-ms-source-if-unmodified-since","x-ms-tag-count","x-ms-encryption-key-sha256","x-ms-if-tags","x-ms-source-if-tags"],b=["comp","maxresults","rscc","rscd","rsce","rscl","rsct","se","si","sip","sp","spr","sr","srt","ss","st","sv","include","marker","prefix","copyid","restype","blockid","blocklisttype","delimiter","prevsnapshot","ske","skoid","sks","skt","sktid","skv","snapshot"],x="BlobUsesCustomerSpecifiedEncryption"})),x.register("aHkZ2",((e,t)=>{function i(e){const a=P.URLBuilder.parse(e);let t=a.getPath();return t=t||"/",t=encodeURIComponent(t).replace(/%2F/g,"/").replace(/'/g,"%27").replace(/\+/g,"%20").replace(/%25/g,"%"),a.setPath(t),""+a}function o(e,a){const t=e.split(";");for(const e of t)if(e.trim().startsWith(a))return e.trim().match(a+"=(.*)")[1];return""}function s(e){let a="";e.startsWith("UseDevelopmentStorage=true")&&(a=(e=>{let a="";if(-1!==e.search("DevelopmentStorageProxyUri=")){const t=e.split(";");for(const e of t)e.trim().startsWith("DevelopmentStorageProxyUri=")&&(a=e.trim().match("DevelopmentStorageProxyUri=(.*)")[1])}return a})(e),e=z.DevelopmentConnectionString);let t=o(e,"BlobEndpoint");if(t=t.endsWith("/")?t.slice(0,-1):t,-1!==e.search("DefaultEndpointsProtocol=")&&-1!==e.search("AccountKey=")){let i="",s="",r=Buffer.from("accountKey","base64"),n="";if(s=o(e,"AccountName"),r=Buffer.from(o(e,"AccountKey"),"base64"),!t){i=o(e,"DefaultEndpointsProtocol");const a=i.toLowerCase();if("https"!==a&&"http"!==a)throw Error("Invalid DefaultEndpointsProtocol in the provided Connection String. Expecting 'https' or 'http'");if(n=o(e,"EndpointSuffix"),!n)throw Error("Invalid EndpointSuffix in the provided Connection String");t=`${i}://${s}.blob.${n}`}if(!s)throw Error("Invalid AccountName in the provided Connection String");if(0===r.length)throw Error("Invalid AccountKey in the provided Connection String");return{kind:"AccountConnString",url:t,accountName:s,accountKey:r,proxyUri:a}}{const a=o(e,"SharedAccessSignature"),i=v(t);if(!t)throw Error("Invalid BlobEndpoint in the provided SAS Connection String");if(!a)throw Error("Invalid SharedAccessSignature in the provided SAS Connection String");return{kind:"SASConnString",url:t,accountName:i,accountSas:a}}}function r(e,a){const t=P.URLBuilder.parse(e);let i=t.getPath();return i=i?i.endsWith("/")?`${i}${a}`:`${i}/${a}`:a,t.setPath(i),""+t}function n(e,a,t){const i=P.URLBuilder.parse(e);return i.setQueryParameter(a,t),""+i}function p(e,a){return P.URLBuilder.parse(e).getQueryParameterValue(a)}function d(e,a){const t=P.URLBuilder.parse(e);return t.setHost(a),""+t}function l(e){return P.URLBuilder.parse(e).getPath()}function m(e){return P.URLBuilder.parse(e).getScheme()}function c(e){let a=P.URLBuilder.parse(e).getQuery();if(!a)return{};a=a.trim(),a=a.startsWith("?")?a.substr(1):a;let t=a.split("&");t=t.filter((e=>{const a=e.indexOf("="),t=e.lastIndexOf("=");return a>0&&a===t&&e.length-1>t}));const i={};for(const e of t){const a=e.split("=");i[a[0]]=a[1]}return i}function u(e,a){const t=P.URLBuilder.parse(e);let i=t.getQuery();return i?i+="&"+a:i=a,t.setQuery(i),""+t}function h(e,a=!0){const t=e.toISOString();return a?t.substring(0,t.length-1)+"0000Z":t.substring(0,t.length-5)+"Z"}function g(e,a){return e.length>42&&(e=e.slice(0,42)),t=e+((e,a,t=" ")=>"".padStart?e.padStart(a,t):(t=t||" ",e.length>a?e:((a-=e.length)>t.length&&(t+=t.repeat(a/t.length)),t.slice(0,a)+e)))(""+a,48-e.length,"0"),E.isNode?Buffer.from(t).toString("base64"):btoa(t);var t}async function f(e,a,t){return new Promise(((i,o)=>{let s;const r=()=>{void 0!==s&&clearTimeout(s),o(t)};s=setTimeout((()=>{void 0!==a&&a.removeEventListener("abort",r),i()}),e),void 0!==a&&a.addEventListener("abort",r)}))}function y(e,a){return e.toLocaleLowerCase()===a.toLocaleLowerCase()}function v(e){const a=P.URLBuilder.parse(e);let t;try{return t="blob"===a.getHost().split(".")[1]?a.getHost().split(".")[0]:b(a)?a.getPath().split("/")[1]:"",t}catch(e){throw Error("Unable to extract accountName with provided information.")}}function b(e){if(void 0===e.getHost())return!1;const a=e.getHost()+(void 0===e.getPort()?"":":"+e.getPort());return/^.*:.*:.*$|^localhost(:[0-9]+)?$|^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])){3}(:[0-9]+)?$/.test(a)}function w(e){if(void 0===e)return;const a=[];for(const t in e)if({}.hasOwnProperty.call(e,t)){const i=e[t];a.push(`${encodeURIComponent(t)}=${encodeURIComponent(i)}`)}return a.join("&")}function N(e){if(void 0===e)return;const a={blobTagSet:[]};for(const t in e)({}).hasOwnProperty.call(e,t)&&a.blobTagSet.push({key:t,value:e[t]});return a}function k(e){if(void 0===e)return;const a={};for(const t of e.blobTagSet)a[t.key]=t.value;return a}function S(e){if(void 0!==e)switch(e.kind){case"csv":return{format:{type:"delimited",delimitedTextConfiguration:{columnSeparator:e.columnSeparator||",",fieldQuote:e.fieldQuote||"",recordSeparator:e.recordSeparator,escapeChar:e.escapeCharacter||"",headersPresent:e.hasHeaders||!1}}};case"json":return{format:{type:"json",jsonTextConfiguration:{recordSeparator:e.recordSeparator}}};case"arrow":return{format:{type:"arrow",arrowConfiguration:{schema:e.schema}}};case"parquet":return{format:{type:"parquet"}};default:throw Error("Invalid BlobQueryTextConfiguration.")}}function j(e){if(!e)return;if("policy-id"in e)return;const a=[];for(const t in e){const i=t.split("_"),o="or-";i[0].startsWith(o)&&(i[0]=i[0].substring(o.length));const s={ruleId:i[1],replicationStatus:e[t]},r=a.findIndex((e=>e.policyId===i[0]));r>-1?a[r].rules.push(s):a.push({policyId:i[0],rules:[s]})}return a}function C(e,a){return e.credential=a,e}function T(e){return e?e.scheme+" "+e.value:void 0}a(e.exports,"escapeURLPath",(()=>i)),a(e.exports,"extractConnectionStringParts",(()=>s)),a(e.exports,"getAccountNameFromUrl",(()=>v)),a(e.exports,"appendToURLPath",(()=>r)),a(e.exports,"setURLParameter",(()=>n)),a(e.exports,"getURLParameter",(()=>p)),a(e.exports,"setURLHost",(()=>d)),a(e.exports,"getURLPath",(()=>l)),a(e.exports,"getURLScheme",(()=>m)),a(e.exports,"getURLQueries",(()=>c)),a(e.exports,"appendToURLQuery",(()=>u)),a(e.exports,"truncatedISO8061Date",(()=>h)),a(e.exports,"generateBlockID",(()=>g)),a(e.exports,"delay",(()=>f)),a(e.exports,"iEqual",(()=>y)),a(e.exports,"isIpEndpointStyle",(()=>b)),a(e.exports,"toBlobTagsString",(()=>w)),a(e.exports,"toBlobTags",(()=>N)),a(e.exports,"toTags",(()=>k)),a(e.exports,"toQuerySerialization",(()=>S)),a(e.exports,"parseObjectReplicationRecord",(()=>j)),a(e.exports,"attachCredential",(()=>C)),a(e.exports,"httpAuthorizationToString",(()=>T));var P=x("8asXx"),E=x("aQqza"),z=(x("7EOPB"),x("bjvJG"))})),x.register("eOX0d",(function(e,t){a(e.exports,"Container",(()=>n));var i=x("7JW2J"),o=x("hAVxy"),s=x("lWtOt"),r=x("7OcAN");class n{constructor(e){this.client=e}create(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,d)}getProperties(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,l)}delete(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,m)}setMetadata(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,c)}getAccessPolicy(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,u)}setAccessPolicy(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,h)}restore(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,g)}rename(e,a){const t={sourceContainerName:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,f)}submitBatch(e,a,t,o){const s={contentLength:e,multipartContentType:a,body:t,options:i.operationOptionsToRequestOptionsBase(o||{})};return this.client.sendOperationRequest(s,y)}filterBlobs(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,v)}acquireLease(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,b)}releaseLease(e,a){const t={leaseId:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,w)}renewLease(e,a){const t={leaseId:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,N)}breakLease(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,k)}changeLease(e,a,t){const o={leaseId:e,proposedLeaseId:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,S)}listBlobFlatSegment(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,j)}listBlobHierarchySegment(e,a){const t={delimiter:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,C)}getAccountInfo(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,T)}}const p=new o.Serializer(s,!0),d={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:s.ContainerCreateHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerCreateExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.access,r.defaultEncryptionScope,r.preventEncryptionScopeOverride],isXML:!0,serializer:p},l={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:s.ContainerGetPropertiesHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerGetPropertiesExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId],isXML:!0,serializer:p},m={path:"/{containerName}",httpMethod:"DELETE",responses:{202:{headersMapper:s.ContainerDeleteHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerDeleteExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince],isXML:!0,serializer:p},c={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerSetMetadataHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerSetMetadataExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp6],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.leaseId,r.ifModifiedSince],isXML:!0,serializer:p},u={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}},serializedName:"SignedIdentifiers",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier"},headersMapper:s.ContainerGetAccessPolicyHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerGetAccessPolicyExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp7],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId],isXML:!0,serializer:p},h={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerSetAccessPolicyHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerSetAccessPolicyExceptionHeaders}},requestBody:r.containerAcl,queryParameters:[r.timeoutInSeconds,r.restype2,r.comp7],urlParameters:[r.url],headerParameters:[r.contentType,r.accept,r.version,r.requestId,r.access,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:p},g={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:s.ContainerRestoreHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerRestoreExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp8],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.deletedContainerName,r.deletedContainerVersion],isXML:!0,serializer:p},f={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerRenameHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerRenameExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp9],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.sourceContainerName,r.sourceLeaseId],isXML:!0,serializer:p},y={path:"/{containerName}",httpMethod:"POST",responses:{202:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:s.ContainerSubmitBatchHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerSubmitBatchExceptionHeaders}},requestBody:r.body,queryParameters:[r.timeoutInSeconds,r.comp4,r.restype2],urlParameters:[r.url],headerParameters:[r.contentType,r.accept,r.version,r.requestId,r.contentLength,r.multipartContentType],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:p},v={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:s.FilterBlobSegment,headersMapper:s.ContainerFilterBlobsHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerFilterBlobsExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.marker,r.maxPageSize,r.comp5,r.where,r.restype2],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1],isXML:!0,serializer:p},b={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:s.ContainerAcquireLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerAcquireLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action,r.duration,r.proposedLeaseId],isXML:!0,serializer:p},w={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerReleaseLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerReleaseLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action1,r.leaseId1],isXML:!0,serializer:p},N={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerRenewLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerRenewLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.leaseId1,r.action2],isXML:!0,serializer:p},k={path:"/{containerName}",httpMethod:"PUT",responses:{202:{headersMapper:s.ContainerBreakLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerBreakLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action3,r.breakPeriod],isXML:!0,serializer:p},S={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:s.ContainerChangeLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerChangeLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.restype2,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.leaseId1,r.action4,r.proposedLeaseId1],isXML:!0,serializer:p},j={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:s.ListBlobsFlatSegmentResponse,headersMapper:s.ContainerListBlobFlatSegmentHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerListBlobFlatSegmentExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp2,r.prefix,r.marker,r.maxPageSize,r.restype2,r.include1],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1],isXML:!0,serializer:p},C={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:s.ListBlobsHierarchySegmentResponse,headersMapper:s.ContainerListBlobHierarchySegmentHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerListBlobHierarchySegmentExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp2,r.prefix,r.marker,r.maxPageSize,r.restype2,r.include1,r.delimiter],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1],isXML:!0,serializer:p},T={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:s.ContainerGetAccountInfoHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.ContainerGetAccountInfoExceptionHeaders}},queryParameters:[r.comp,r.restype1],urlParameters:[r.url],headerParameters:[r.version,r.accept1],isXML:!0,serializer:p}})),x.register("lWtOt",((e,t)=>{a(e.exports,"BlobServiceProperties",(()=>i)),a(e.exports,"Logging",(()=>o)),a(e.exports,"RetentionPolicy",(()=>s)),a(e.exports,"Metrics",(()=>r)),a(e.exports,"CorsRule",(()=>n)),a(e.exports,"StaticWebsite",(()=>p)),a(e.exports,"StorageError",(()=>d)),a(e.exports,"BlobServiceStatistics",(()=>l)),a(e.exports,"GeoReplication",(()=>m)),a(e.exports,"ListContainersSegmentResponse",(()=>c)),a(e.exports,"ContainerItem",(()=>u)),a(e.exports,"ContainerProperties",(()=>h)),a(e.exports,"KeyInfo",(()=>g)),a(e.exports,"UserDelegationKey",(()=>f)),a(e.exports,"FilterBlobSegment",(()=>y)),a(e.exports,"FilterBlobItem",(()=>v)),a(e.exports,"BlobTags",(()=>b)),a(e.exports,"BlobTag",(()=>x)),a(e.exports,"SignedIdentifier",(()=>w)),a(e.exports,"AccessPolicy",(()=>N)),a(e.exports,"ListBlobsFlatSegmentResponse",(()=>k)),a(e.exports,"BlobFlatListSegment",(()=>S)),a(e.exports,"BlobItemInternal",(()=>j)),a(e.exports,"BlobName",(()=>C)),a(e.exports,"BlobPropertiesInternal",(()=>T)),a(e.exports,"ListBlobsHierarchySegmentResponse",(()=>P)),a(e.exports,"BlobHierarchyListSegment",(()=>E)),a(e.exports,"BlobPrefix",(()=>z)),a(e.exports,"BlockLookupList",(()=>_)),a(e.exports,"BlockList",(()=>O)),a(e.exports,"Block",(()=>R)),a(e.exports,"PageList",(()=>D)),a(e.exports,"PageRange",(()=>I)),a(e.exports,"ClearRange",(()=>A)),a(e.exports,"QueryRequest",(()=>B)),a(e.exports,"QuerySerialization",(()=>q)),a(e.exports,"QueryFormat",(()=>M)),a(e.exports,"DelimitedTextConfiguration",(()=>L)),a(e.exports,"JsonTextConfiguration",(()=>H)),a(e.exports,"ArrowConfiguration",(()=>V)),a(e.exports,"ArrowField",(()=>U)),a(e.exports,"ServiceSetPropertiesHeaders",(()=>F)),a(e.exports,"ServiceSetPropertiesExceptionHeaders",(()=>K)),a(e.exports,"ServiceGetPropertiesHeaders",(()=>$)),a(e.exports,"ServiceGetPropertiesExceptionHeaders",(()=>G)),a(e.exports,"ServiceGetStatisticsHeaders",(()=>X)),a(e.exports,"ServiceGetStatisticsExceptionHeaders",(()=>W)),a(e.exports,"ServiceListContainersSegmentHeaders",(()=>Q)),a(e.exports,"ServiceListContainersSegmentExceptionHeaders",(()=>Y)),a(e.exports,"ServiceGetUserDelegationKeyHeaders",(()=>J)),a(e.exports,"ServiceGetUserDelegationKeyExceptionHeaders",(()=>Z)),a(e.exports,"ServiceGetAccountInfoHeaders",(()=>ee)),a(e.exports,"ServiceGetAccountInfoExceptionHeaders",(()=>ae)),a(e.exports,"ServiceSubmitBatchHeaders",(()=>te)),a(e.exports,"ServiceSubmitBatchExceptionHeaders",(()=>ie)),a(e.exports,"ServiceFilterBlobsHeaders",(()=>oe)),a(e.exports,"ServiceFilterBlobsExceptionHeaders",(()=>se)),a(e.exports,"ContainerCreateHeaders",(()=>re)),a(e.exports,"ContainerCreateExceptionHeaders",(()=>ne)),a(e.exports,"ContainerGetPropertiesHeaders",(()=>pe)),a(e.exports,"ContainerGetPropertiesExceptionHeaders",(()=>de)),a(e.exports,"ContainerDeleteHeaders",(()=>le)),a(e.exports,"ContainerDeleteExceptionHeaders",(()=>me)),a(e.exports,"ContainerSetMetadataHeaders",(()=>ce)),a(e.exports,"ContainerSetMetadataExceptionHeaders",(()=>ue)),a(e.exports,"ContainerGetAccessPolicyHeaders",(()=>he)),a(e.exports,"ContainerGetAccessPolicyExceptionHeaders",(()=>ge)),a(e.exports,"ContainerSetAccessPolicyHeaders",(()=>fe)),a(e.exports,"ContainerSetAccessPolicyExceptionHeaders",(()=>ye)),a(e.exports,"ContainerRestoreHeaders",(()=>ve)),a(e.exports,"ContainerRestoreExceptionHeaders",(()=>be)),a(e.exports,"ContainerRenameHeaders",(()=>xe)),a(e.exports,"ContainerRenameExceptionHeaders",(()=>we)),a(e.exports,"ContainerSubmitBatchHeaders",(()=>Ne)),a(e.exports,"ContainerSubmitBatchExceptionHeaders",(()=>ke)),a(e.exports,"ContainerFilterBlobsHeaders",(()=>Se)),a(e.exports,"ContainerFilterBlobsExceptionHeaders",(()=>je)),a(e.exports,"ContainerAcquireLeaseHeaders",(()=>Ce)),a(e.exports,"ContainerAcquireLeaseExceptionHeaders",(()=>Te)),a(e.exports,"ContainerReleaseLeaseHeaders",(()=>Pe)),a(e.exports,"ContainerReleaseLeaseExceptionHeaders",(()=>Ee)),a(e.exports,"ContainerRenewLeaseHeaders",(()=>ze)),a(e.exports,"ContainerRenewLeaseExceptionHeaders",(()=>_e)),a(e.exports,"ContainerBreakLeaseHeaders",(()=>Oe)),a(e.exports,"ContainerBreakLeaseExceptionHeaders",(()=>Re)),a(e.exports,"ContainerChangeLeaseHeaders",(()=>De)),a(e.exports,"ContainerChangeLeaseExceptionHeaders",(()=>Ie)),a(e.exports,"ContainerListBlobFlatSegmentHeaders",(()=>Ae)),a(e.exports,"ContainerListBlobFlatSegmentExceptionHeaders",(()=>Be)),a(e.exports,"ContainerListBlobHierarchySegmentHeaders",(()=>qe)),a(e.exports,"ContainerListBlobHierarchySegmentExceptionHeaders",(()=>Me)),a(e.exports,"ContainerGetAccountInfoHeaders",(()=>Le)),a(e.exports,"ContainerGetAccountInfoExceptionHeaders",(()=>He)),a(e.exports,"BlobDownloadHeaders",(()=>Ve)),a(e.exports,"BlobDownloadExceptionHeaders",(()=>Ue)),a(e.exports,"BlobGetPropertiesHeaders",(()=>Fe)),a(e.exports,"BlobGetPropertiesExceptionHeaders",(()=>Ke)),a(e.exports,"BlobDeleteHeaders",(()=>$e)),a(e.exports,"BlobDeleteExceptionHeaders",(()=>Ge)),a(e.exports,"BlobUndeleteHeaders",(()=>Xe)),a(e.exports,"BlobUndeleteExceptionHeaders",(()=>We)),a(e.exports,"BlobSetExpiryHeaders",(()=>Qe)),a(e.exports,"BlobSetExpiryExceptionHeaders",(()=>Ye)),a(e.exports,"BlobSetHttpHeadersHeaders",(()=>Je)),a(e.exports,"BlobSetHttpHeadersExceptionHeaders",(()=>Ze)),a(e.exports,"BlobSetImmutabilityPolicyHeaders",(()=>ea)),a(e.exports,"BlobSetImmutabilityPolicyExceptionHeaders",(()=>aa)),a(e.exports,"BlobDeleteImmutabilityPolicyHeaders",(()=>ta)),a(e.exports,"BlobDeleteImmutabilityPolicyExceptionHeaders",(()=>ia)),a(e.exports,"BlobSetLegalHoldHeaders",(()=>oa)),a(e.exports,"BlobSetLegalHoldExceptionHeaders",(()=>sa)),a(e.exports,"BlobSetMetadataHeaders",(()=>ra)),a(e.exports,"BlobSetMetadataExceptionHeaders",(()=>na)),a(e.exports,"BlobAcquireLeaseHeaders",(()=>pa)),a(e.exports,"BlobAcquireLeaseExceptionHeaders",(()=>da)),a(e.exports,"BlobReleaseLeaseHeaders",(()=>la)),a(e.exports,"BlobReleaseLeaseExceptionHeaders",(()=>ma)),a(e.exports,"BlobRenewLeaseHeaders",(()=>ca)),a(e.exports,"BlobRenewLeaseExceptionHeaders",(()=>ua)),a(e.exports,"BlobChangeLeaseHeaders",(()=>ha)),a(e.exports,"BlobChangeLeaseExceptionHeaders",(()=>ga)),a(e.exports,"BlobBreakLeaseHeaders",(()=>fa)),a(e.exports,"BlobBreakLeaseExceptionHeaders",(()=>ya)),a(e.exports,"BlobCreateSnapshotHeaders",(()=>va)),a(e.exports,"BlobCreateSnapshotExceptionHeaders",(()=>ba)),a(e.exports,"BlobStartCopyFromURLHeaders",(()=>xa)),a(e.exports,"BlobStartCopyFromURLExceptionHeaders",(()=>wa)),a(e.exports,"BlobCopyFromURLHeaders",(()=>Na)),a(e.exports,"BlobCopyFromURLExceptionHeaders",(()=>ka)),a(e.exports,"BlobAbortCopyFromURLHeaders",(()=>Sa)),a(e.exports,"BlobAbortCopyFromURLExceptionHeaders",(()=>ja)),a(e.exports,"BlobSetTierHeaders",(()=>Ca)),a(e.exports,"BlobSetTierExceptionHeaders",(()=>Ta)),a(e.exports,"BlobGetAccountInfoHeaders",(()=>Pa)),a(e.exports,"BlobGetAccountInfoExceptionHeaders",(()=>Ea)),a(e.exports,"BlobQueryHeaders",(()=>za)),a(e.exports,"BlobQueryExceptionHeaders",(()=>_a)),a(e.exports,"BlobGetTagsHeaders",(()=>Oa)),a(e.exports,"BlobGetTagsExceptionHeaders",(()=>Ra)),a(e.exports,"BlobSetTagsHeaders",(()=>Da)),a(e.exports,"BlobSetTagsExceptionHeaders",(()=>Ia)),a(e.exports,"PageBlobCreateHeaders",(()=>Aa)),a(e.exports,"PageBlobCreateExceptionHeaders",(()=>Ba)),a(e.exports,"PageBlobUploadPagesHeaders",(()=>qa)),a(e.exports,"PageBlobUploadPagesExceptionHeaders",(()=>Ma)),a(e.exports,"PageBlobClearPagesHeaders",(()=>La)),a(e.exports,"PageBlobClearPagesExceptionHeaders",(()=>Ha)),a(e.exports,"PageBlobUploadPagesFromURLHeaders",(()=>Va)),a(e.exports,"PageBlobUploadPagesFromURLExceptionHeaders",(()=>Ua)),a(e.exports,"PageBlobGetPageRangesHeaders",(()=>Fa)),a(e.exports,"PageBlobGetPageRangesExceptionHeaders",(()=>Ka)),a(e.exports,"PageBlobGetPageRangesDiffHeaders",(()=>$a)),a(e.exports,"PageBlobGetPageRangesDiffExceptionHeaders",(()=>Ga)),a(e.exports,"PageBlobResizeHeaders",(()=>Xa)),a(e.exports,"PageBlobResizeExceptionHeaders",(()=>Wa)),a(e.exports,"PageBlobUpdateSequenceNumberHeaders",(()=>Qa)),a(e.exports,"PageBlobUpdateSequenceNumberExceptionHeaders",(()=>Ya)),a(e.exports,"PageBlobCopyIncrementalHeaders",(()=>Ja)),a(e.exports,"PageBlobCopyIncrementalExceptionHeaders",(()=>Za)),a(e.exports,"AppendBlobCreateHeaders",(()=>et)),a(e.exports,"AppendBlobCreateExceptionHeaders",(()=>at)),a(e.exports,"AppendBlobAppendBlockHeaders",(()=>tt)),a(e.exports,"AppendBlobAppendBlockExceptionHeaders",(()=>it)),a(e.exports,"AppendBlobAppendBlockFromUrlHeaders",(()=>ot)),a(e.exports,"AppendBlobAppendBlockFromUrlExceptionHeaders",(()=>st)),a(e.exports,"AppendBlobSealHeaders",(()=>rt)),a(e.exports,"AppendBlobSealExceptionHeaders",(()=>nt)),a(e.exports,"BlockBlobUploadHeaders",(()=>pt)),a(e.exports,"BlockBlobUploadExceptionHeaders",(()=>dt)),a(e.exports,"BlockBlobPutBlobFromUrlHeaders",(()=>lt)),a(e.exports,"BlockBlobPutBlobFromUrlExceptionHeaders",(()=>mt)),a(e.exports,"BlockBlobStageBlockHeaders",(()=>ct)),a(e.exports,"BlockBlobStageBlockExceptionHeaders",(()=>ut)),a(e.exports,"BlockBlobStageBlockFromURLHeaders",(()=>ht)),a(e.exports,"BlockBlobStageBlockFromURLExceptionHeaders",(()=>gt)),a(e.exports,"BlockBlobCommitBlockListHeaders",(()=>ft)),a(e.exports,"BlockBlobCommitBlockListExceptionHeaders",(()=>yt)),a(e.exports,"BlockBlobGetBlockListHeaders",(()=>vt)),a(e.exports,"BlockBlobGetBlockListExceptionHeaders",(()=>bt));const i={serializedName:"BlobServiceProperties",xmlName:"StorageServiceProperties",type:{name:"Composite",className:"BlobServiceProperties",modelProperties:{blobAnalyticsLogging:{serializedName:"Logging",xmlName:"Logging",type:{name:"Composite",className:"Logging"}},hourMetrics:{serializedName:"HourMetrics",xmlName:"HourMetrics",type:{name:"Composite",className:"Metrics"}},minuteMetrics:{serializedName:"MinuteMetrics",xmlName:"MinuteMetrics",type:{name:"Composite",className:"Metrics"}},cors:{serializedName:"Cors",xmlName:"Cors",xmlIsWrapped:!0,xmlElementName:"CorsRule",type:{name:"Sequence",element:{type:{name:"Composite",className:"CorsRule"}}}},defaultServiceVersion:{serializedName:"DefaultServiceVersion",xmlName:"DefaultServiceVersion",type:{name:"String"}},deleteRetentionPolicy:{serializedName:"DeleteRetentionPolicy",xmlName:"DeleteRetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}},staticWebsite:{serializedName:"StaticWebsite",xmlName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite"}}}}},o={serializedName:"Logging",type:{name:"Composite",className:"Logging",modelProperties:{version:{serializedName:"Version",required:!0,xmlName:"Version",type:{name:"String"}},deleteProperty:{serializedName:"Delete",required:!0,xmlName:"Delete",type:{name:"Boolean"}},read:{serializedName:"Read",required:!0,xmlName:"Read",type:{name:"Boolean"}},write:{serializedName:"Write",required:!0,xmlName:"Write",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},s={serializedName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},days:{constraints:{InclusiveMinimum:1},serializedName:"Days",xmlName:"Days",type:{name:"Number"}}}}},r={serializedName:"Metrics",type:{name:"Composite",className:"Metrics",modelProperties:{version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},includeAPIs:{serializedName:"IncludeAPIs",xmlName:"IncludeAPIs",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},n={serializedName:"CorsRule",type:{name:"Composite",className:"CorsRule",modelProperties:{allowedOrigins:{serializedName:"AllowedOrigins",required:!0,xmlName:"AllowedOrigins",type:{name:"String"}},allowedMethods:{serializedName:"AllowedMethods",required:!0,xmlName:"AllowedMethods",type:{name:"String"}},allowedHeaders:{serializedName:"AllowedHeaders",required:!0,xmlName:"AllowedHeaders",type:{name:"String"}},exposedHeaders:{serializedName:"ExposedHeaders",required:!0,xmlName:"ExposedHeaders",type:{name:"String"}},maxAgeInSeconds:{constraints:{InclusiveMinimum:0},serializedName:"MaxAgeInSeconds",required:!0,xmlName:"MaxAgeInSeconds",type:{name:"Number"}}}}},p={serializedName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},indexDocument:{serializedName:"IndexDocument",xmlName:"IndexDocument",type:{name:"String"}},errorDocument404Path:{serializedName:"ErrorDocument404Path",xmlName:"ErrorDocument404Path",type:{name:"String"}},defaultIndexDocumentPath:{serializedName:"DefaultIndexDocumentPath",xmlName:"DefaultIndexDocumentPath",type:{name:"String"}}}}},d={serializedName:"StorageError",type:{name:"Composite",className:"StorageError",modelProperties:{message:{serializedName:"Message",xmlName:"Message",type:{name:"String"}},code:{serializedName:"Code",xmlName:"Code",type:{name:"String"}}}}},l={serializedName:"BlobServiceStatistics",xmlName:"StorageServiceStats",type:{name:"Composite",className:"BlobServiceStatistics",modelProperties:{geoReplication:{serializedName:"GeoReplication",xmlName:"GeoReplication",type:{name:"Composite",className:"GeoReplication"}}}}},m={serializedName:"GeoReplication",type:{name:"Composite",className:"GeoReplication",modelProperties:{status:{serializedName:"Status",required:!0,xmlName:"Status",type:{name:"Enum",allowedValues:["live","bootstrap","unavailable"]}},lastSyncOn:{serializedName:"LastSyncTime",required:!0,xmlName:"LastSyncTime",type:{name:"DateTimeRfc1123"}}}}},c={serializedName:"ListContainersSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListContainersSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},containerItems:{serializedName:"ContainerItems",required:!0,xmlName:"Containers",xmlIsWrapped:!0,xmlElementName:"Container",type:{name:"Sequence",element:{type:{name:"Composite",className:"ContainerItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},u={serializedName:"ContainerItem",xmlName:"Container",type:{name:"Composite",className:"ContainerItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},deleted:{serializedName:"Deleted",xmlName:"Deleted",type:{name:"Boolean"}},version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"ContainerProperties"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},h={serializedName:"ContainerProperties",type:{name:"Composite",className:"ContainerProperties",modelProperties:{lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},publicAccess:{serializedName:"PublicAccess",xmlName:"PublicAccess",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"HasImmutabilityPolicy",xmlName:"HasImmutabilityPolicy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"HasLegalHold",xmlName:"HasLegalHold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"DefaultEncryptionScope",xmlName:"DefaultEncryptionScope",type:{name:"String"}},preventEncryptionScopeOverride:{serializedName:"DenyEncryptionScopeOverride",xmlName:"DenyEncryptionScopeOverride",type:{name:"Boolean"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},isImmutableStorageWithVersioningEnabled:{serializedName:"ImmutableStorageWithVersioningEnabled",xmlName:"ImmutableStorageWithVersioningEnabled",type:{name:"Boolean"}}}}},g={serializedName:"KeyInfo",type:{name:"Composite",className:"KeyInfo",modelProperties:{startsOn:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",required:!0,xmlName:"Expiry",type:{name:"String"}}}}},f={serializedName:"UserDelegationKey",type:{name:"Composite",className:"UserDelegationKey",modelProperties:{signedObjectId:{serializedName:"SignedOid",required:!0,xmlName:"SignedOid",type:{name:"String"}},signedTenantId:{serializedName:"SignedTid",required:!0,xmlName:"SignedTid",type:{name:"String"}},signedStartsOn:{serializedName:"SignedStart",required:!0,xmlName:"SignedStart",type:{name:"String"}},signedExpiresOn:{serializedName:"SignedExpiry",required:!0,xmlName:"SignedExpiry",type:{name:"String"}},signedService:{serializedName:"SignedService",required:!0,xmlName:"SignedService",type:{name:"String"}},signedVersion:{serializedName:"SignedVersion",required:!0,xmlName:"SignedVersion",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},y={serializedName:"FilterBlobSegment",xmlName:"EnumerationResults",type:{name:"Composite",className:"FilterBlobSegment",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},where:{serializedName:"Where",required:!0,xmlName:"Where",type:{name:"String"}},blobs:{serializedName:"Blobs",required:!0,xmlName:"Blobs",xmlIsWrapped:!0,xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"FilterBlobItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},v={serializedName:"FilterBlobItem",xmlName:"Blob",type:{name:"Composite",className:"FilterBlobItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",type:{name:"String"}},tags:{serializedName:"Tags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}}}}},b={serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags",modelProperties:{blobTagSet:{serializedName:"BlobTagSet",required:!0,xmlName:"TagSet",xmlIsWrapped:!0,xmlElementName:"Tag",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobTag"}}}}}}},x={serializedName:"BlobTag",xmlName:"Tag",type:{name:"Composite",className:"BlobTag",modelProperties:{key:{serializedName:"Key",required:!0,xmlName:"Key",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},w={serializedName:"SignedIdentifier",xmlName:"SignedIdentifier",type:{name:"Composite",className:"SignedIdentifier",modelProperties:{id:{serializedName:"Id",required:!0,xmlName:"Id",type:{name:"String"}},accessPolicy:{serializedName:"AccessPolicy",xmlName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy"}}}}},N={serializedName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy",modelProperties:{startsOn:{serializedName:"Start",xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",xmlName:"Expiry",type:{name:"String"}},permissions:{serializedName:"Permission",xmlName:"Permission",type:{name:"String"}}}}},k={serializedName:"ListBlobsFlatSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsFlatSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},S={serializedName:"BlobFlatListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment",modelProperties:{blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},j={serializedName:"BlobItemInternal",xmlName:"Blob",type:{name:"Composite",className:"BlobItemInternal",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}},deleted:{serializedName:"Deleted",required:!0,xmlName:"Deleted",type:{name:"Boolean"}},snapshot:{serializedName:"Snapshot",required:!0,xmlName:"Snapshot",type:{name:"String"}},versionId:{serializedName:"VersionId",xmlName:"VersionId",type:{name:"String"}},isCurrentVersion:{serializedName:"IsCurrentVersion",xmlName:"IsCurrentVersion",type:{name:"Boolean"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},blobTags:{serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}},objectReplicationMetadata:{serializedName:"ObjectReplicationMetadata",xmlName:"OrMetadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},hasVersionsOnly:{serializedName:"HasVersionsOnly",xmlName:"HasVersionsOnly",type:{name:"Boolean"}}}}},C={serializedName:"BlobName",type:{name:"Composite",className:"BlobName",modelProperties:{encoded:{serializedName:"Encoded",xmlName:"Encoded",xmlIsAttribute:!0,type:{name:"Boolean"}},content:{serializedName:"content",xmlName:"content",type:{name:"String"}}}}},T={serializedName:"BlobPropertiesInternal",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal",modelProperties:{createdOn:{serializedName:"Creation-Time",xmlName:"Creation-Time",type:{name:"DateTimeRfc1123"}},lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},contentLength:{serializedName:"Content-Length",xmlName:"Content-Length",type:{name:"Number"}},contentType:{serializedName:"Content-Type",xmlName:"Content-Type",type:{name:"String"}},contentEncoding:{serializedName:"Content-Encoding",xmlName:"Content-Encoding",type:{name:"String"}},contentLanguage:{serializedName:"Content-Language",xmlName:"Content-Language",type:{name:"String"}},contentMD5:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}},contentDisposition:{serializedName:"Content-Disposition",xmlName:"Content-Disposition",type:{name:"String"}},cacheControl:{serializedName:"Cache-Control",xmlName:"Cache-Control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"BlobType",xmlName:"BlobType",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},copyId:{serializedName:"CopyId",xmlName:"CopyId",type:{name:"String"}},copyStatus:{serializedName:"CopyStatus",xmlName:"CopyStatus",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},copySource:{serializedName:"CopySource",xmlName:"CopySource",type:{name:"String"}},copyProgress:{serializedName:"CopyProgress",xmlName:"CopyProgress",type:{name:"String"}},copyCompletedOn:{serializedName:"CopyCompletionTime",xmlName:"CopyCompletionTime",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"CopyStatusDescription",xmlName:"CopyStatusDescription",type:{name:"String"}},serverEncrypted:{serializedName:"ServerEncrypted",xmlName:"ServerEncrypted",type:{name:"Boolean"}},incrementalCopy:{serializedName:"IncrementalCopy",xmlName:"IncrementalCopy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"DestinationSnapshot",xmlName:"DestinationSnapshot",type:{name:"String"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},accessTier:{serializedName:"AccessTier",xmlName:"AccessTier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive"]}},accessTierInferred:{serializedName:"AccessTierInferred",xmlName:"AccessTierInferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"ArchiveStatus",xmlName:"ArchiveStatus",type:{name:"Enum",allowedValues:["rehydrate-pending-to-hot","rehydrate-pending-to-cool"]}},customerProvidedKeySha256:{serializedName:"CustomerProvidedKeySha256",xmlName:"CustomerProvidedKeySha256",type:{name:"String"}},encryptionScope:{serializedName:"EncryptionScope",xmlName:"EncryptionScope",type:{name:"String"}},accessTierChangedOn:{serializedName:"AccessTierChangeTime",xmlName:"AccessTierChangeTime",type:{name:"DateTimeRfc1123"}},tagCount:{serializedName:"TagCount",xmlName:"TagCount",type:{name:"Number"}},expiresOn:{serializedName:"Expiry-Time",xmlName:"Expiry-Time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"Sealed",xmlName:"Sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"RehydratePriority",xmlName:"RehydratePriority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessedOn:{serializedName:"LastAccessTime",xmlName:"LastAccessTime",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"ImmutabilityPolicyUntilDate",xmlName:"ImmutabilityPolicyUntilDate",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"ImmutabilityPolicyMode",xmlName:"ImmutabilityPolicyMode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"LegalHold",xmlName:"LegalHold",type:{name:"Boolean"}}}}},P={serializedName:"ListBlobsHierarchySegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsHierarchySegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},delimiter:{serializedName:"Delimiter",xmlName:"Delimiter",type:{name:"String"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},E={serializedName:"BlobHierarchyListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment",modelProperties:{blobPrefixes:{serializedName:"BlobPrefixes",xmlName:"BlobPrefixes",xmlElementName:"BlobPrefix",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobPrefix"}}}},blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},z={serializedName:"BlobPrefix",type:{name:"Composite",className:"BlobPrefix",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}}}}},_={serializedName:"BlockLookupList",xmlName:"BlockList",type:{name:"Composite",className:"BlockLookupList",modelProperties:{committed:{serializedName:"Committed",xmlName:"Committed",xmlElementName:"Committed",type:{name:"Sequence",element:{type:{name:"String"}}}},uncommitted:{serializedName:"Uncommitted",xmlName:"Uncommitted",xmlElementName:"Uncommitted",type:{name:"Sequence",element:{type:{name:"String"}}}},latest:{serializedName:"Latest",xmlName:"Latest",xmlElementName:"Latest",type:{name:"Sequence",element:{type:{name:"String"}}}}}}},O={serializedName:"BlockList",type:{name:"Composite",className:"BlockList",modelProperties:{committedBlocks:{serializedName:"CommittedBlocks",xmlName:"CommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}},uncommittedBlocks:{serializedName:"UncommittedBlocks",xmlName:"UncommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}}}}},R={serializedName:"Block",type:{name:"Composite",className:"Block",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},size:{serializedName:"Size",required:!0,xmlName:"Size",type:{name:"Number"}}}}},D={serializedName:"PageList",type:{name:"Composite",className:"PageList",modelProperties:{pageRange:{serializedName:"PageRange",xmlName:"PageRange",xmlElementName:"PageRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"PageRange"}}}},clearRange:{serializedName:"ClearRange",xmlName:"ClearRange",xmlElementName:"ClearRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"ClearRange"}}}}}}},I={serializedName:"PageRange",xmlName:"PageRange",type:{name:"Composite",className:"PageRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},A={serializedName:"ClearRange",xmlName:"ClearRange",type:{name:"Composite",className:"ClearRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},B={serializedName:"QueryRequest",xmlName:"QueryRequest",type:{name:"Composite",className:"QueryRequest",modelProperties:{queryType:{serializedName:"QueryType",required:!0,xmlName:"QueryType",type:{name:"String"}},expression:{serializedName:"Expression",required:!0,xmlName:"Expression",type:{name:"String"}},inputSerialization:{serializedName:"InputSerialization",xmlName:"InputSerialization",type:{name:"Composite",className:"QuerySerialization"}},outputSerialization:{serializedName:"OutputSerialization",xmlName:"OutputSerialization",type:{name:"Composite",className:"QuerySerialization"}}}}},q={serializedName:"QuerySerialization",type:{name:"Composite",className:"QuerySerialization",modelProperties:{format:{serializedName:"Format",xmlName:"Format",type:{name:"Composite",className:"QueryFormat"}}}}},M={serializedName:"QueryFormat",type:{name:"Composite",className:"QueryFormat",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"Enum",allowedValues:["delimited","json","arrow","parquet"]}},delimitedTextConfiguration:{serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration"}},jsonTextConfiguration:{serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration"}},arrowConfiguration:{serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration"}},parquetTextConfiguration:{serializedName:"ParquetTextConfiguration",xmlName:"ParquetTextConfiguration",type:{name:"any"}}}}},L={serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration",modelProperties:{columnSeparator:{serializedName:"ColumnSeparator",xmlName:"ColumnSeparator",type:{name:"String"}},fieldQuote:{serializedName:"FieldQuote",xmlName:"FieldQuote",type:{name:"String"}},recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}},escapeChar:{serializedName:"EscapeChar",xmlName:"EscapeChar",type:{name:"String"}},headersPresent:{serializedName:"HeadersPresent",xmlName:"HasHeaders",type:{name:"Boolean"}}}}},H={serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration",modelProperties:{recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}}}}},V={serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration",modelProperties:{schema:{serializedName:"Schema",required:!0,xmlName:"Schema",xmlIsWrapped:!0,xmlElementName:"Field",type:{name:"Sequence",element:{type:{name:"Composite",className:"ArrowField"}}}}}}},U={serializedName:"ArrowField",xmlName:"Field",type:{name:"Composite",className:"ArrowField",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"String"}},name:{serializedName:"Name",xmlName:"Name",type:{name:"String"}},precision:{serializedName:"Precision",xmlName:"Precision",type:{name:"Number"}},scale:{serializedName:"Scale",xmlName:"Scale",type:{name:"Number"}}}}},F={serializedName:"Service_setPropertiesHeaders",type:{name:"Composite",className:"ServiceSetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},K={serializedName:"Service_setPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceSetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$={serializedName:"Service_getPropertiesHeaders",type:{name:"Composite",className:"ServiceGetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},G={serializedName:"Service_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},X={serializedName:"Service_getStatisticsHeaders",type:{name:"Composite",className:"ServiceGetStatisticsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},W={serializedName:"Service_getStatisticsExceptionHeaders",type:{name:"Composite",className:"ServiceGetStatisticsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Q={serializedName:"Service_listContainersSegmentHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Y={serializedName:"Service_listContainersSegmentExceptionHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},J={serializedName:"Service_getUserDelegationKeyHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Z={serializedName:"Service_getUserDelegationKeyExceptionHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ee={serializedName:"Service_getAccountInfoHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ae={serializedName:"Service_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},te={serializedName:"Service_submitBatchHeaders",type:{name:"Composite",className:"ServiceSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ie={serializedName:"Service_submitBatchExceptionHeaders",type:{name:"Composite",className:"ServiceSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oe={serializedName:"Service_filterBlobsHeaders",type:{name:"Composite",className:"ServiceFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},se={serializedName:"Service_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ServiceFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},re={serializedName:"Container_createHeaders",type:{name:"Composite",className:"ContainerCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ne={serializedName:"Container_createExceptionHeaders",type:{name:"Composite",className:"ContainerCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},pe={serializedName:"Container_getPropertiesHeaders",type:{name:"Composite",className:"ContainerGetPropertiesHeaders",modelProperties:{metadata:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-meta-"},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"x-ms-has-immutability-policy",xmlName:"x-ms-has-immutability-policy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"x-ms-has-legal-hold",xmlName:"x-ms-has-legal-hold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}},denyEncryptionScopeOverride:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}},isImmutableStorageWithVersioningEnabled:{serializedName:"x-ms-immutable-storage-with-versioning-enabled",xmlName:"x-ms-immutable-storage-with-versioning-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},de={serializedName:"Container_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ContainerGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},le={serializedName:"Container_deleteHeaders",type:{name:"Composite",className:"ContainerDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},me={serializedName:"Container_deleteExceptionHeaders",type:{name:"Composite",className:"ContainerDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ce={serializedName:"Container_setMetadataHeaders",type:{name:"Composite",className:"ContainerSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ue={serializedName:"Container_setMetadataExceptionHeaders",type:{name:"Composite",className:"ContainerSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},he={serializedName:"Container_getAccessPolicyHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyHeaders",modelProperties:{blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ge={serializedName:"Container_getAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},fe={serializedName:"Container_setAccessPolicyHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ye={serializedName:"Container_setAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ve={serializedName:"Container_restoreHeaders",type:{name:"Composite",className:"ContainerRestoreHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},be={serializedName:"Container_restoreExceptionHeaders",type:{name:"Composite",className:"ContainerRestoreExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},xe={serializedName:"Container_renameHeaders",type:{name:"Composite",className:"ContainerRenameHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},we={serializedName:"Container_renameExceptionHeaders",type:{name:"Composite",className:"ContainerRenameExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ne={serializedName:"Container_submitBatchHeaders",type:{name:"Composite",className:"ContainerSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}}}}},ke={serializedName:"Container_submitBatchExceptionHeaders",type:{name:"Composite",className:"ContainerSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Se={serializedName:"Container_filterBlobsHeaders",type:{name:"Composite",className:"ContainerFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},je={serializedName:"Container_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ContainerFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ce={serializedName:"Container_acquireLeaseHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Te={serializedName:"Container_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Pe={serializedName:"Container_releaseLeaseHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Ee={serializedName:"Container_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ze={serializedName:"Container_renewLeaseHeaders",type:{name:"Composite",className:"ContainerRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},_e={serializedName:"Container_renewLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Oe={serializedName:"Container_breakLeaseHeaders",type:{name:"Composite",className:"ContainerBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Re={serializedName:"Container_breakLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},De={serializedName:"Container_changeLeaseHeaders",type:{name:"Composite",className:"ContainerChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Ie={serializedName:"Container_changeLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ae={serializedName:"Container_listBlobFlatSegmentHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Be={serializedName:"Container_listBlobFlatSegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},qe={serializedName:"Container_listBlobHierarchySegmentHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Me={serializedName:"Container_listBlobHierarchySegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Le={serializedName:"Container_getAccountInfoHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}}}}},He={serializedName:"Container_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ve={serializedName:"Blob_downloadHeaders",type:{name:"Composite",className:"BlobDownloadHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-meta-"},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-or-"},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},Ue={serializedName:"Blob_downloadExceptionHeaders",type:{name:"Composite",className:"BlobDownloadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Fe={serializedName:"Blob_getPropertiesHeaders",type:{name:"Composite",className:"BlobGetPropertiesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},createdOn:{serializedName:"x-ms-creation-time",xmlName:"x-ms-creation-time",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-meta-"},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-or-"},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},isIncrementalCopy:{serializedName:"x-ms-incremental-copy",xmlName:"x-ms-incremental-copy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"x-ms-copy-destination-snapshot",xmlName:"x-ms-copy-destination-snapshot",type:{name:"String"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},accessTier:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"String"}},accessTierInferred:{serializedName:"x-ms-access-tier-inferred",xmlName:"x-ms-access-tier-inferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"x-ms-archive-status",xmlName:"x-ms-archive-status",type:{name:"String"}},accessTierChangedOn:{serializedName:"x-ms-access-tier-change-time",xmlName:"x-ms-access-tier-change-time",type:{name:"DateTimeRfc1123"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},expiresOn:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ke={serializedName:"Blob_getPropertiesExceptionHeaders",type:{name:"Composite",className:"BlobGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$e={serializedName:"Blob_deleteHeaders",type:{name:"Composite",className:"BlobDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ge={serializedName:"Blob_deleteExceptionHeaders",type:{name:"Composite",className:"BlobDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Xe={serializedName:"Blob_undeleteHeaders",type:{name:"Composite",className:"BlobUndeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},We={serializedName:"Blob_undeleteExceptionHeaders",type:{name:"Composite",className:"BlobUndeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Qe={serializedName:"Blob_setExpiryHeaders",type:{name:"Composite",className:"BlobSetExpiryHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Ye={serializedName:"Blob_setExpiryExceptionHeaders",type:{name:"Composite",className:"BlobSetExpiryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Je={serializedName:"Blob_setHttpHeadersHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ze={serializedName:"Blob_setHttpHeadersExceptionHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ea={serializedName:"Blob_setImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiry:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}}}},aa={serializedName:"Blob_setImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ta={serializedName:"Blob_deleteImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},ia={serializedName:"Blob_deleteImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oa={serializedName:"Blob_setLegalHoldHeaders",type:{name:"Composite",className:"BlobSetLegalHoldHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}}}},sa={serializedName:"Blob_setLegalHoldExceptionHeaders",type:{name:"Composite",className:"BlobSetLegalHoldExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ra={serializedName:"Blob_setMetadataHeaders",type:{name:"Composite",className:"BlobSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},na={serializedName:"Blob_setMetadataExceptionHeaders",type:{name:"Composite",className:"BlobSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},pa={serializedName:"Blob_acquireLeaseHeaders",type:{name:"Composite",className:"BlobAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},da={serializedName:"Blob_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"BlobAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},la={serializedName:"Blob_releaseLeaseHeaders",type:{name:"Composite",className:"BlobReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},ma={serializedName:"Blob_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"BlobReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ca={serializedName:"Blob_renewLeaseHeaders",type:{name:"Composite",className:"BlobRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},ua={serializedName:"Blob_renewLeaseExceptionHeaders",type:{name:"Composite",className:"BlobRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ha={serializedName:"Blob_changeLeaseHeaders",type:{name:"Composite",className:"BlobChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},ga={serializedName:"Blob_changeLeaseExceptionHeaders",type:{name:"Composite",className:"BlobChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},fa={serializedName:"Blob_breakLeaseHeaders",type:{name:"Composite",className:"BlobBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},ya={serializedName:"Blob_breakLeaseExceptionHeaders",type:{name:"Composite",className:"BlobBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},va={serializedName:"Blob_createSnapshotHeaders",type:{name:"Composite",className:"BlobCreateSnapshotHeaders",modelProperties:{snapshot:{serializedName:"x-ms-snapshot",xmlName:"x-ms-snapshot",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ba={serializedName:"Blob_createSnapshotExceptionHeaders",type:{name:"Composite",className:"BlobCreateSnapshotExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},xa={serializedName:"Blob_startCopyFromURLHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},wa={serializedName:"Blob_startCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Na={serializedName:"Blob_copyFromURLHeaders",type:{name:"Composite",className:"BlobCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{defaultValue:"success",isConstant:!0,serializedName:"x-ms-copy-status",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ka={serializedName:"Blob_copyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Sa={serializedName:"Blob_abortCopyFromURLHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ja={serializedName:"Blob_abortCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ca={serializedName:"Blob_setTierHeaders",type:{name:"Composite",className:"BlobSetTierHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ta={serializedName:"Blob_setTierExceptionHeaders",type:{name:"Composite",className:"BlobSetTierExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Pa={serializedName:"Blob_getAccountInfoHeaders",type:{name:"Composite",className:"BlobGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}}}}},Ea={serializedName:"Blob_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"BlobGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},za={serializedName:"Blob_queryHeaders",type:{name:"Composite",className:"BlobQueryHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletionTime:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},_a={serializedName:"Blob_queryExceptionHeaders",type:{name:"Composite",className:"BlobQueryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Oa={serializedName:"Blob_getTagsHeaders",type:{name:"Composite",className:"BlobGetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ra={serializedName:"Blob_getTagsExceptionHeaders",type:{name:"Composite",className:"BlobGetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Da={serializedName:"Blob_setTagsHeaders",type:{name:"Composite",className:"BlobSetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ia={serializedName:"Blob_setTagsExceptionHeaders",type:{name:"Composite",className:"BlobSetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Aa={serializedName:"PageBlob_createHeaders",type:{name:"Composite",className:"PageBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ba={serializedName:"PageBlob_createExceptionHeaders",type:{name:"Composite",className:"PageBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},qa={serializedName:"PageBlob_uploadPagesHeaders",type:{name:"Composite",className:"PageBlobUploadPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ma={serializedName:"PageBlob_uploadPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},La={serializedName:"PageBlob_clearPagesHeaders",type:{name:"Composite",className:"PageBlobClearPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ha={serializedName:"PageBlob_clearPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobClearPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Va={serializedName:"PageBlob_uploadPagesFromURLHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ua={serializedName:"PageBlob_uploadPagesFromURLExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Fa={serializedName:"PageBlob_getPageRangesHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ka={serializedName:"PageBlob_getPageRangesExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$a={serializedName:"PageBlob_getPageRangesDiffHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ga={serializedName:"PageBlob_getPageRangesDiffExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Xa={serializedName:"PageBlob_resizeHeaders",type:{name:"Composite",className:"PageBlobResizeHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Wa={serializedName:"PageBlob_resizeExceptionHeaders",type:{name:"Composite",className:"PageBlobResizeExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Qa={serializedName:"PageBlob_updateSequenceNumberHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ya={serializedName:"PageBlob_updateSequenceNumberExceptionHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Ja={serializedName:"PageBlob_copyIncrementalHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Za={serializedName:"PageBlob_copyIncrementalExceptionHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},et={serializedName:"AppendBlob_createHeaders",type:{name:"Composite",className:"AppendBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},at={serializedName:"AppendBlob_createExceptionHeaders",type:{name:"Composite",className:"AppendBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},tt={serializedName:"AppendBlob_appendBlockHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},it={serializedName:"AppendBlob_appendBlockExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ot={serializedName:"AppendBlob_appendBlockFromUrlHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},st={serializedName:"AppendBlob_appendBlockFromUrlExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},rt={serializedName:"AppendBlob_sealHeaders",type:{name:"Composite",className:"AppendBlobSealHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}}}}},nt={serializedName:"AppendBlob_sealExceptionHeaders",type:{name:"Composite",className:"AppendBlobSealExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},pt={serializedName:"BlockBlob_uploadHeaders",type:{name:"Composite",className:"BlockBlobUploadHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},dt={serializedName:"BlockBlob_uploadExceptionHeaders",type:{name:"Composite",className:"BlockBlobUploadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},lt={serializedName:"BlockBlob_putBlobFromUrlHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},mt={serializedName:"BlockBlob_putBlobFromUrlExceptionHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ct={serializedName:"BlockBlob_stageBlockHeaders",type:{name:"Composite",className:"BlockBlobStageBlockHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ut={serializedName:"BlockBlob_stageBlockExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ht={serializedName:"BlockBlob_stageBlockFromURLHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},gt={serializedName:"BlockBlob_stageBlockFromURLExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ft={serializedName:"BlockBlob_commitBlockListHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},yt={serializedName:"BlockBlob_commitBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},vt={serializedName:"BlockBlob_getBlockListHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},bt={serializedName:"BlockBlob_getBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}}})),x.register("7OcAN",((e,t)=>{a(e.exports,"contentType",(()=>s)),a(e.exports,"accept",(()=>r)),a(e.exports,"url",(()=>n)),a(e.exports,"comp",(()=>p)),a(e.exports,"timeoutInSeconds",(()=>d)),a(e.exports,"version",(()=>l)),a(e.exports,"requestId",(()=>m)),a(e.exports,"accept1",(()=>c)),a(e.exports,"comp2",(()=>u)),a(e.exports,"prefix",(()=>h)),a(e.exports,"marker",(()=>g)),a(e.exports,"maxPageSize",(()=>f)),a(e.exports,"restype1",(()=>y)),a(e.exports,"body",(()=>v)),a(e.exports,"comp4",(()=>b)),a(e.exports,"contentLength",(()=>w)),a(e.exports,"multipartContentType",(()=>N)),a(e.exports,"comp5",(()=>k)),a(e.exports,"where",(()=>S)),a(e.exports,"restype2",(()=>j)),a(e.exports,"metadata",(()=>C)),a(e.exports,"access",(()=>T)),a(e.exports,"defaultEncryptionScope",(()=>P)),a(e.exports,"preventEncryptionScopeOverride",(()=>E)),a(e.exports,"leaseId",(()=>z)),a(e.exports,"ifModifiedSince",(()=>_)),a(e.exports,"ifUnmodifiedSince",(()=>O)),a(e.exports,"comp6",(()=>R)),a(e.exports,"comp7",(()=>D)),a(e.exports,"containerAcl",(()=>I)),a(e.exports,"comp8",(()=>A)),a(e.exports,"deletedContainerName",(()=>B)),a(e.exports,"deletedContainerVersion",(()=>q)),a(e.exports,"comp9",(()=>M)),a(e.exports,"sourceContainerName",(()=>L)),a(e.exports,"sourceLeaseId",(()=>H)),a(e.exports,"comp10",(()=>V)),a(e.exports,"action",(()=>U)),a(e.exports,"duration",(()=>F)),a(e.exports,"proposedLeaseId",(()=>K)),a(e.exports,"action1",(()=>$)),a(e.exports,"leaseId1",(()=>G)),a(e.exports,"action2",(()=>X)),a(e.exports,"action3",(()=>W)),a(e.exports,"breakPeriod",(()=>Q)),a(e.exports,"action4",(()=>Y)),a(e.exports,"proposedLeaseId1",(()=>J)),a(e.exports,"include1",(()=>Z)),a(e.exports,"delimiter",(()=>ee)),a(e.exports,"snapshot",(()=>ae)),a(e.exports,"versionId",(()=>te)),a(e.exports,"range",(()=>ie)),a(e.exports,"rangeGetContentMD5",(()=>oe)),a(e.exports,"rangeGetContentCRC64",(()=>se)),a(e.exports,"encryptionKey",(()=>re)),a(e.exports,"encryptionKeySha256",(()=>ne)),a(e.exports,"encryptionAlgorithm",(()=>pe)),a(e.exports,"ifMatch",(()=>de)),a(e.exports,"ifNoneMatch",(()=>le)),a(e.exports,"ifTags",(()=>me)),a(e.exports,"deleteSnapshots",(()=>ce)),a(e.exports,"blobDeleteType",(()=>ue)),a(e.exports,"comp11",(()=>he)),a(e.exports,"expiryOptions",(()=>ge)),a(e.exports,"expiresOn",(()=>fe)),a(e.exports,"blobCacheControl",(()=>ye)),a(e.exports,"blobContentType",(()=>ve)),a(e.exports,"blobContentMD5",(()=>be)),a(e.exports,"blobContentEncoding",(()=>xe)),a(e.exports,"blobContentLanguage",(()=>we)),a(e.exports,"blobContentDisposition",(()=>Ne)),a(e.exports,"comp12",(()=>ke)),a(e.exports,"immutabilityPolicyExpiry",(()=>Se)),a(e.exports,"immutabilityPolicyMode",(()=>je)),a(e.exports,"comp13",(()=>Ce)),a(e.exports,"legalHold",(()=>Te)),a(e.exports,"encryptionScope",(()=>Pe)),a(e.exports,"comp14",(()=>Ee)),a(e.exports,"tier",(()=>ze)),a(e.exports,"rehydratePriority",(()=>_e)),a(e.exports,"sourceIfModifiedSince",(()=>Oe)),a(e.exports,"sourceIfUnmodifiedSince",(()=>Re)),a(e.exports,"sourceIfMatch",(()=>De)),a(e.exports,"sourceIfNoneMatch",(()=>Ie)),a(e.exports,"sourceIfTags",(()=>Ae)),a(e.exports,"copySource",(()=>Be)),a(e.exports,"blobTagsString",(()=>qe)),a(e.exports,"sealBlob",(()=>Me)),a(e.exports,"legalHold1",(()=>Le)),a(e.exports,"xMsRequiresSync",(()=>He)),a(e.exports,"sourceContentMD5",(()=>Ve)),a(e.exports,"copySourceAuthorization",(()=>Ue)),a(e.exports,"comp15",(()=>Fe)),a(e.exports,"copyActionAbortConstant",(()=>Ke)),a(e.exports,"copyId",(()=>$e)),a(e.exports,"comp16",(()=>Ge)),a(e.exports,"tier1",(()=>Xe)),a(e.exports,"queryRequest",(()=>We)),a(e.exports,"comp17",(()=>Qe)),a(e.exports,"comp18",(()=>Ye)),a(e.exports,"tags",(()=>Je)),a(e.exports,"transactionalContentMD5",(()=>Ze)),a(e.exports,"transactionalContentCrc64",(()=>ea)),a(e.exports,"blobType",(()=>aa)),a(e.exports,"blobContentLength",(()=>ta)),a(e.exports,"blobSequenceNumber",(()=>ia)),a(e.exports,"contentType1",(()=>oa)),a(e.exports,"body1",(()=>sa)),a(e.exports,"accept2",(()=>ra)),a(e.exports,"comp19",(()=>na)),a(e.exports,"pageWrite",(()=>pa)),a(e.exports,"ifSequenceNumberLessThanOrEqualTo",(()=>da)),a(e.exports,"ifSequenceNumberLessThan",(()=>la)),a(e.exports,"ifSequenceNumberEqualTo",(()=>ma)),a(e.exports,"pageWrite1",(()=>ca)),a(e.exports,"sourceUrl",(()=>ua)),a(e.exports,"sourceRange",(()=>ha)),a(e.exports,"sourceContentCrc64",(()=>ga)),a(e.exports,"range1",(()=>fa)),a(e.exports,"comp20",(()=>ya)),a(e.exports,"prevsnapshot",(()=>va)),a(e.exports,"prevSnapshotUrl",(()=>ba)),a(e.exports,"sequenceNumberAction",(()=>xa)),a(e.exports,"comp21",(()=>wa)),a(e.exports,"blobType1",(()=>Na)),a(e.exports,"comp22",(()=>ka)),a(e.exports,"maxSize",(()=>Sa)),a(e.exports,"appendPosition",(()=>ja)),a(e.exports,"sourceRange1",(()=>Ca)),a(e.exports,"comp23",(()=>Ta)),a(e.exports,"blobType2",(()=>Pa)),a(e.exports,"copySourceBlobProperties",(()=>Ea)),a(e.exports,"comp24",(()=>za)),a(e.exports,"blockId",(()=>_a)),a(e.exports,"blocks",(()=>Oa)),a(e.exports,"comp25",(()=>Ra)),a(e.exports,"listType",(()=>Da));var i=x("cZdIl"),o=x("lWtOt");const s={parameterPath:["options","contentType"],mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},r={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},n={parameterPath:"url",mapper:{serializedName:"url",required:!0,xmlName:"url",type:{name:"String"}},skipEncoding:!0},p={parameterPath:"comp",mapper:{defaultValue:"properties",isConstant:!0,serializedName:"comp",type:{name:"String"}}},d={parameterPath:["options","timeoutInSeconds"],mapper:{constraints:{InclusiveMinimum:0},serializedName:"timeout",xmlName:"timeout",type:{name:"Number"}}},l={parameterPath:"version",mapper:{defaultValue:"2021-04-10",isConstant:!0,serializedName:"x-ms-version",type:{name:"String"}}},m={parameterPath:["options","requestId"],mapper:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}}},c={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},u={parameterPath:"comp",mapper:{defaultValue:"list",isConstant:!0,serializedName:"comp",type:{name:"String"}}},h={parameterPath:["options","prefix"],mapper:{serializedName:"prefix",xmlName:"prefix",type:{name:"String"}}},g={parameterPath:["options","marker"],mapper:{serializedName:"marker",xmlName:"marker",type:{name:"String"}}},f={parameterPath:["options","maxPageSize"],mapper:{constraints:{InclusiveMinimum:1},serializedName:"maxresults",xmlName:"maxresults",type:{name:"Number"}}},y={parameterPath:"restype",mapper:{defaultValue:"account",isConstant:!0,serializedName:"restype",type:{name:"String"}}},v={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},b={parameterPath:"comp",mapper:{defaultValue:"batch",isConstant:!0,serializedName:"comp",type:{name:"String"}}},w={parameterPath:"contentLength",mapper:{serializedName:"Content-Length",required:!0,xmlName:"Content-Length",type:{name:"Number"}}},N={parameterPath:"multipartContentType",mapper:{serializedName:"Content-Type",required:!0,xmlName:"Content-Type",type:{name:"String"}}},k={parameterPath:"comp",mapper:{defaultValue:"blobs",isConstant:!0,serializedName:"comp",type:{name:"String"}}},S={parameterPath:["options","where"],mapper:{serializedName:"where",xmlName:"where",type:{name:"String"}}},j={parameterPath:"restype",mapper:{defaultValue:"container",isConstant:!0,serializedName:"restype",type:{name:"String"}}},C={parameterPath:["options","metadata"],mapper:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}},headerCollectionPrefix:"x-ms-meta-"}},T={parameterPath:["options","access"],mapper:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}}},P={parameterPath:["options","containerEncryptionScope","defaultEncryptionScope"],mapper:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}}},E={parameterPath:["options","containerEncryptionScope","preventEncryptionScopeOverride"],mapper:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}}},z={parameterPath:["options","leaseAccessConditions","leaseId"],mapper:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}}},_={parameterPath:["options","modifiedAccessConditions","ifModifiedSince"],mapper:{serializedName:"If-Modified-Since",xmlName:"If-Modified-Since",type:{name:"DateTimeRfc1123"}}},O={parameterPath:["options","modifiedAccessConditions","ifUnmodifiedSince"],mapper:{serializedName:"If-Unmodified-Since",xmlName:"If-Unmodified-Since",type:{name:"DateTimeRfc1123"}}},R={parameterPath:"comp",mapper:{defaultValue:"metadata",isConstant:!0,serializedName:"comp",type:{name:"String"}}},D={parameterPath:"comp",mapper:{defaultValue:"acl",isConstant:!0,serializedName:"comp",type:{name:"String"}}},I={parameterPath:["options","containerAcl"],mapper:{serializedName:"containerAcl",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier",type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}}}},A={parameterPath:"comp",mapper:{defaultValue:"undelete",isConstant:!0,serializedName:"comp",type:{name:"String"}}},B={parameterPath:["options","deletedContainerName"],mapper:{serializedName:"x-ms-deleted-container-name",xmlName:"x-ms-deleted-container-name",type:{name:"String"}}},q={parameterPath:["options","deletedContainerVersion"],mapper:{serializedName:"x-ms-deleted-container-version",xmlName:"x-ms-deleted-container-version",type:{name:"String"}}},M={parameterPath:"comp",mapper:{defaultValue:"rename",isConstant:!0,serializedName:"comp",type:{name:"String"}}},L={parameterPath:"sourceContainerName",mapper:{serializedName:"x-ms-source-container-name",required:!0,xmlName:"x-ms-source-container-name",type:{name:"String"}}},H={parameterPath:["options","sourceLeaseId"],mapper:{serializedName:"x-ms-source-lease-id",xmlName:"x-ms-source-lease-id",type:{name:"String"}}},V={parameterPath:"comp",mapper:{defaultValue:"lease",isConstant:!0,serializedName:"comp",type:{name:"String"}}},U={parameterPath:"action",mapper:{defaultValue:"acquire",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},F={parameterPath:["options","duration"],mapper:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Number"}}},K={parameterPath:["options","proposedLeaseId"],mapper:{serializedName:"x-ms-proposed-lease-id",xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},$={parameterPath:"action",mapper:{defaultValue:"release",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},G={parameterPath:"leaseId",mapper:{serializedName:"x-ms-lease-id",required:!0,xmlName:"x-ms-lease-id",type:{name:"String"}}},X={parameterPath:"action",mapper:{defaultValue:"renew",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},W={parameterPath:"action",mapper:{defaultValue:"break",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},Q={parameterPath:["options","breakPeriod"],mapper:{serializedName:"x-ms-lease-break-period",xmlName:"x-ms-lease-break-period",type:{name:"Number"}}},Y={parameterPath:"action",mapper:{defaultValue:"change",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},J={parameterPath:"proposedLeaseId",mapper:{serializedName:"x-ms-proposed-lease-id",required:!0,xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},Z={parameterPath:["options","include"],mapper:{serializedName:"include",xmlName:"include",xmlElementName:"ListBlobsIncludeItem",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["copy","deleted","metadata","snapshots","uncommittedblobs","versions","tags","immutabilitypolicy","legalhold","deletedwithversions"]}}}},collectionFormat:i.QueryCollectionFormat.Csv},ee={parameterPath:"delimiter",mapper:{serializedName:"delimiter",required:!0,xmlName:"delimiter",type:{name:"String"}}},ae={parameterPath:["options","snapshot"],mapper:{serializedName:"snapshot",xmlName:"snapshot",type:{name:"String"}}},te={parameterPath:["options","versionId"],mapper:{serializedName:"versionid",xmlName:"versionid",type:{name:"String"}}},ie={parameterPath:["options","range"],mapper:{serializedName:"x-ms-range",xmlName:"x-ms-range",type:{name:"String"}}},oe={parameterPath:["options","rangeGetContentMD5"],mapper:{serializedName:"x-ms-range-get-content-md5",xmlName:"x-ms-range-get-content-md5",type:{name:"Boolean"}}},se={parameterPath:["options","rangeGetContentCRC64"],mapper:{serializedName:"x-ms-range-get-content-crc64",xmlName:"x-ms-range-get-content-crc64",type:{name:"Boolean"}}},re={parameterPath:["options","cpkInfo","encryptionKey"],mapper:{serializedName:"x-ms-encryption-key",xmlName:"x-ms-encryption-key",type:{name:"String"}}},ne={parameterPath:["options","cpkInfo","encryptionKeySha256"],mapper:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}}},pe={parameterPath:["options","cpkInfo","encryptionAlgorithm"],mapper:{serializedName:"x-ms-encryption-algorithm",xmlName:"x-ms-encryption-algorithm",type:{name:"String"}}},de={parameterPath:["options","modifiedAccessConditions","ifMatch"],mapper:{serializedName:"If-Match",xmlName:"If-Match",type:{name:"String"}}},le={parameterPath:["options","modifiedAccessConditions","ifNoneMatch"],mapper:{serializedName:"If-None-Match",xmlName:"If-None-Match",type:{name:"String"}}},me={parameterPath:["options","modifiedAccessConditions","ifTags"],mapper:{serializedName:"x-ms-if-tags",xmlName:"x-ms-if-tags",type:{name:"String"}}},ce={parameterPath:["options","deleteSnapshots"],mapper:{serializedName:"x-ms-delete-snapshots",xmlName:"x-ms-delete-snapshots",type:{name:"Enum",allowedValues:["include","only"]}}},ue={parameterPath:["options","blobDeleteType"],mapper:{serializedName:"deletetype",xmlName:"deletetype",type:{name:"String"}}},he={parameterPath:"comp",mapper:{defaultValue:"expiry",isConstant:!0,serializedName:"comp",type:{name:"String"}}},ge={parameterPath:"expiryOptions",mapper:{serializedName:"x-ms-expiry-option",required:!0,xmlName:"x-ms-expiry-option",type:{name:"String"}}},fe={parameterPath:["options","expiresOn"],mapper:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"String"}}},ye={parameterPath:["options","blobHttpHeaders","blobCacheControl"],mapper:{serializedName:"x-ms-blob-cache-control",xmlName:"x-ms-blob-cache-control",type:{name:"String"}}},ve={parameterPath:["options","blobHttpHeaders","blobContentType"],mapper:{serializedName:"x-ms-blob-content-type",xmlName:"x-ms-blob-content-type",type:{name:"String"}}},be={parameterPath:["options","blobHttpHeaders","blobContentMD5"],mapper:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}}},xe={parameterPath:["options","blobHttpHeaders","blobContentEncoding"],mapper:{serializedName:"x-ms-blob-content-encoding",xmlName:"x-ms-blob-content-encoding",type:{name:"String"}}},we={parameterPath:["options","blobHttpHeaders","blobContentLanguage"],mapper:{serializedName:"x-ms-blob-content-language",xmlName:"x-ms-blob-content-language",type:{name:"String"}}},Ne={parameterPath:["options","blobHttpHeaders","blobContentDisposition"],mapper:{serializedName:"x-ms-blob-content-disposition",xmlName:"x-ms-blob-content-disposition",type:{name:"String"}}},ke={parameterPath:"comp",mapper:{defaultValue:"immutabilityPolicies",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Se={parameterPath:["options","immutabilityPolicyExpiry"],mapper:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}}},je={parameterPath:["options","immutabilityPolicyMode"],mapper:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}},Ce={parameterPath:"comp",mapper:{defaultValue:"legalhold",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Te={parameterPath:"legalHold",mapper:{serializedName:"x-ms-legal-hold",required:!0,xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},Pe={parameterPath:["options","encryptionScope"],mapper:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}}},Ee={parameterPath:"comp",mapper:{defaultValue:"snapshot",isConstant:!0,serializedName:"comp",type:{name:"String"}}},ze={parameterPath:["options","tier"],mapper:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive"]}}},_e={parameterPath:["options","rehydratePriority"],mapper:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}}},Oe={parameterPath:["options","sourceModifiedAccessConditions","sourceIfModifiedSince"],mapper:{serializedName:"x-ms-source-if-modified-since",xmlName:"x-ms-source-if-modified-since",type:{name:"DateTimeRfc1123"}}},Re={parameterPath:["options","sourceModifiedAccessConditions","sourceIfUnmodifiedSince"],mapper:{serializedName:"x-ms-source-if-unmodified-since",xmlName:"x-ms-source-if-unmodified-since",type:{name:"DateTimeRfc1123"}}},De={parameterPath:["options","sourceModifiedAccessConditions","sourceIfMatch"],mapper:{serializedName:"x-ms-source-if-match",xmlName:"x-ms-source-if-match",type:{name:"String"}}},Ie={parameterPath:["options","sourceModifiedAccessConditions","sourceIfNoneMatch"],mapper:{serializedName:"x-ms-source-if-none-match",xmlName:"x-ms-source-if-none-match",type:{name:"String"}}},Ae={parameterPath:["options","sourceModifiedAccessConditions","sourceIfTags"],mapper:{serializedName:"x-ms-source-if-tags",xmlName:"x-ms-source-if-tags",type:{name:"String"}}},Be={parameterPath:"copySource",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},qe={parameterPath:["options","blobTagsString"],mapper:{serializedName:"x-ms-tags",xmlName:"x-ms-tags",type:{name:"String"}}},Me={parameterPath:["options","sealBlob"],mapper:{serializedName:"x-ms-seal-blob",xmlName:"x-ms-seal-blob",type:{name:"Boolean"}}},Le={parameterPath:["options","legalHold"],mapper:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},He={parameterPath:"xMsRequiresSync",mapper:{defaultValue:"true",isConstant:!0,serializedName:"x-ms-requires-sync",type:{name:"String"}}},Ve={parameterPath:["options","sourceContentMD5"],mapper:{serializedName:"x-ms-source-content-md5",xmlName:"x-ms-source-content-md5",type:{name:"ByteArray"}}},Ue={parameterPath:["options","copySourceAuthorization"],mapper:{serializedName:"x-ms-copy-source-authorization",xmlName:"x-ms-copy-source-authorization",type:{name:"String"}}},Fe={parameterPath:"comp",mapper:{defaultValue:"copy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Ke={parameterPath:"copyActionAbortConstant",mapper:{defaultValue:"abort",isConstant:!0,serializedName:"x-ms-copy-action",type:{name:"String"}}},$e={parameterPath:"copyId",mapper:{serializedName:"copyid",required:!0,xmlName:"copyid",type:{name:"String"}}},Ge={parameterPath:"comp",mapper:{defaultValue:"tier",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Xe={parameterPath:"tier",mapper:{serializedName:"x-ms-access-tier",required:!0,xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive"]}}},We={parameterPath:["options","queryRequest"],mapper:o.QueryRequest},Qe={parameterPath:"comp",mapper:{defaultValue:"query",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Ye={parameterPath:"comp",mapper:{defaultValue:"tags",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Je={parameterPath:["options","tags"],mapper:o.BlobTags},Ze={parameterPath:["options","transactionalContentMD5"],mapper:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}}},ea={parameterPath:["options","transactionalContentCrc64"],mapper:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}},aa={parameterPath:"blobType",mapper:{defaultValue:"PageBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},ta={parameterPath:"blobContentLength",mapper:{serializedName:"x-ms-blob-content-length",required:!0,xmlName:"x-ms-blob-content-length",type:{name:"Number"}}},ia={parameterPath:["options","blobSequenceNumber"],mapper:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}}},oa={parameterPath:["options","contentType"],mapper:{defaultValue:"application/octet-stream",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},sa={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},ra={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},na={parameterPath:"comp",mapper:{defaultValue:"page",isConstant:!0,serializedName:"comp",type:{name:"String"}}},pa={parameterPath:"pageWrite",mapper:{defaultValue:"update",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},da={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThanOrEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-le",xmlName:"x-ms-if-sequence-number-le",type:{name:"Number"}}},la={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThan"],mapper:{serializedName:"x-ms-if-sequence-number-lt",xmlName:"x-ms-if-sequence-number-lt",type:{name:"Number"}}},ma={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-eq",xmlName:"x-ms-if-sequence-number-eq",type:{name:"Number"}}},ca={parameterPath:"pageWrite",mapper:{defaultValue:"clear",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},ua={parameterPath:"sourceUrl",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},ha={parameterPath:"sourceRange",mapper:{serializedName:"x-ms-source-range",required:!0,xmlName:"x-ms-source-range",type:{name:"String"}}},ga={parameterPath:["options","sourceContentCrc64"],mapper:{serializedName:"x-ms-source-content-crc64",xmlName:"x-ms-source-content-crc64",type:{name:"ByteArray"}}},fa={parameterPath:"range",mapper:{serializedName:"x-ms-range",required:!0,xmlName:"x-ms-range",type:{name:"String"}}},ya={parameterPath:"comp",mapper:{defaultValue:"pagelist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},va={parameterPath:["options","prevsnapshot"],mapper:{serializedName:"prevsnapshot",xmlName:"prevsnapshot",type:{name:"String"}}},ba={parameterPath:["options","prevSnapshotUrl"],mapper:{serializedName:"x-ms-previous-snapshot-url",xmlName:"x-ms-previous-snapshot-url",type:{name:"String"}}},xa={parameterPath:"sequenceNumberAction",mapper:{serializedName:"x-ms-sequence-number-action",required:!0,xmlName:"x-ms-sequence-number-action",type:{name:"Enum",allowedValues:["max","update","increment"]}}},wa={parameterPath:"comp",mapper:{defaultValue:"incrementalcopy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Na={parameterPath:"blobType",mapper:{defaultValue:"AppendBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},ka={parameterPath:"comp",mapper:{defaultValue:"appendblock",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Sa={parameterPath:["options","appendPositionAccessConditions","maxSize"],mapper:{serializedName:"x-ms-blob-condition-maxsize",xmlName:"x-ms-blob-condition-maxsize",type:{name:"Number"}}},ja={parameterPath:["options","appendPositionAccessConditions","appendPosition"],mapper:{serializedName:"x-ms-blob-condition-appendpos",xmlName:"x-ms-blob-condition-appendpos",type:{name:"Number"}}},Ca={parameterPath:["options","sourceRange"],mapper:{serializedName:"x-ms-source-range",xmlName:"x-ms-source-range",type:{name:"String"}}},Ta={parameterPath:"comp",mapper:{defaultValue:"seal",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Pa={parameterPath:"blobType",mapper:{defaultValue:"BlockBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},Ea={parameterPath:["options","copySourceBlobProperties"],mapper:{serializedName:"x-ms-copy-source-blob-properties",xmlName:"x-ms-copy-source-blob-properties",type:{name:"Boolean"}}},za={parameterPath:"comp",mapper:{defaultValue:"block",isConstant:!0,serializedName:"comp",type:{name:"String"}}},_a={parameterPath:"blockId",mapper:{serializedName:"blockid",required:!0,xmlName:"blockid",type:{name:"String"}}},Oa={parameterPath:"blocks",mapper:o.BlockLookupList},Ra={parameterPath:"comp",mapper:{defaultValue:"blocklist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Da={parameterPath:"listType",mapper:{defaultValue:"committed",serializedName:"blocklisttype",required:!0,xmlName:"blocklisttype",type:{name:"Enum",allowedValues:["committed","uncommitted","all"]}}}})),x.register("hk2c8",(function(e,t){a(e.exports,"Blob",(()=>n));var i=x("7JW2J"),o=x("hAVxy"),s=x("lWtOt"),r=x("7OcAN");class n{constructor(e){this.client=e}download(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,d)}getProperties(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,l)}delete(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,m)}undelete(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,c)}setExpiry(e,a){const t={expiryOptions:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,u)}setHttpHeaders(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,h)}setImmutabilityPolicy(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,g)}deleteImmutabilityPolicy(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,f)}setLegalHold(e,a){const t={legalHold:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,y)}setMetadata(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,v)}acquireLease(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,b)}releaseLease(e,a){const t={leaseId:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,w)}renewLease(e,a){const t={leaseId:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,N)}changeLease(e,a,t){const o={leaseId:e,proposedLeaseId:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,k)}breakLease(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,S)}createSnapshot(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,j)}startCopyFromURL(e,a){const t={copySource:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,C)}copyFromURL(e,a){const t={copySource:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,T)}abortCopyFromURL(e,a){const t={copyId:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,P)}setTier(e,a){const t={tier:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,E)}getAccountInfo(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,z)}query(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,_)}getTags(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,O)}setTags(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,R)}}const p=new o.Serializer(s,!0),d={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:s.BlobDownloadHeaders},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:s.BlobDownloadHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobDownloadExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.versionId],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.range,r.rangeGetContentMD5,r.rangeGetContentCRC64,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},l={path:"/{containerName}/{blob}",httpMethod:"HEAD",responses:{200:{headersMapper:s.BlobGetPropertiesHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobGetPropertiesExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.versionId],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},m={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{202:{headersMapper:s.BlobDeleteHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobDeleteExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.versionId,r.blobDeleteType],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.deleteSnapshots],isXML:!0,serializer:p},c={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobUndeleteHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobUndeleteExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp8],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1],isXML:!0,serializer:p},u={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetExpiryHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetExpiryExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp11],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.expiryOptions,r.expiresOn],isXML:!0,serializer:p},h={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetHttpHeadersHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetHttpHeadersExceptionHeaders}},queryParameters:[r.comp,r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition],isXML:!0,serializer:p},g={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetImmutabilityPolicyHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetImmutabilityPolicyExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp12],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifUnmodifiedSince,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode],isXML:!0,serializer:p},f={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{200:{headersMapper:s.BlobDeleteImmutabilityPolicyHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobDeleteImmutabilityPolicyExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp12],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1],isXML:!0,serializer:p},y={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetLegalHoldHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetLegalHoldExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp13],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.legalHold],isXML:!0,serializer:p},v={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetMetadataHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetMetadataExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp6],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope],isXML:!0,serializer:p},b={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlobAcquireLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobAcquireLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action,r.duration,r.proposedLeaseId,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},w={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobReleaseLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobReleaseLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action1,r.leaseId1,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},N={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobRenewLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobRenewLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.leaseId1,r.action2,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},k={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobChangeLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobChangeLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.leaseId1,r.action4,r.proposedLeaseId1,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},S={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:s.BlobBreakLeaseHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobBreakLeaseExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp10],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.action3,r.breakPeriod,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},j={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlobCreateSnapshotHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobCreateSnapshotExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp14],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope],isXML:!0,serializer:p},C={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:s.BlobStartCopyFromURLHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobStartCopyFromURLExceptionHeaders}},queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.tier,r.rehydratePriority,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.sourceIfTags,r.copySource,r.blobTagsString,r.sealBlob,r.legalHold1],isXML:!0,serializer:p},T={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:s.BlobCopyFromURLHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobCopyFromURLExceptionHeaders}},queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.encryptionScope,r.tier,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.copySource,r.blobTagsString,r.legalHold1,r.xMsRequiresSync,r.sourceContentMD5,r.copySourceAuthorization],isXML:!0,serializer:p},P={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:s.BlobAbortCopyFromURLHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobAbortCopyFromURLExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp15,r.copyId],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.copyActionAbortConstant],isXML:!0,serializer:p},E={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.BlobSetTierHeaders},202:{headersMapper:s.BlobSetTierHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetTierExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.versionId,r.comp16],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifTags,r.rehydratePriority,r.tier1],isXML:!0,serializer:p},z={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{headersMapper:s.BlobGetAccountInfoHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobGetAccountInfoExceptionHeaders}},queryParameters:[r.comp,r.restype1],urlParameters:[r.url],headerParameters:[r.version,r.accept1],isXML:!0,serializer:p},_={path:"/{containerName}/{blob}",httpMethod:"POST",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:s.BlobQueryHeaders},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:s.BlobQueryHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobQueryExceptionHeaders}},requestBody:r.queryRequest,queryParameters:[r.timeoutInSeconds,r.snapshot,r.comp17],urlParameters:[r.url],headerParameters:[r.contentType,r.accept,r.version,r.requestId,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:p},O={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:s.BlobTags,headersMapper:s.BlobGetTagsHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobGetTagsExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.versionId,r.comp18],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifTags],isXML:!0,serializer:p},R={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:s.BlobSetTagsHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlobSetTagsExceptionHeaders}},requestBody:r.tags,queryParameters:[r.timeoutInSeconds,r.versionId,r.comp18],urlParameters:[r.url],headerParameters:[r.contentType,r.accept,r.version,r.requestId,r.leaseId,r.ifTags,r.transactionalContentMD5,r.transactionalContentCrc64],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:p}})),x.register("bd4Qe",(function(e,t){a(e.exports,"PageBlob",(()=>n));var i=x("7JW2J"),o=x("hAVxy"),s=x("lWtOt"),r=x("7OcAN");class n{constructor(e){this.client=e}create(e,a,t){const o={contentLength:e,blobContentLength:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,l)}uploadPages(e,a,t){const o={contentLength:e,body:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,m)}clearPages(e,a){const t={contentLength:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,c)}uploadPagesFromURL(e,a,t,o,s){const r={sourceUrl:e,sourceRange:a,contentLength:t,range:o,options:i.operationOptionsToRequestOptionsBase(s||{})};return this.client.sendOperationRequest(r,u)}getPageRanges(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,h)}getPageRangesDiff(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,g)}resize(e,a){const t={blobContentLength:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,f)}updateSequenceNumber(e,a){const t={sequenceNumberAction:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,y)}copyIncremental(e,a){const t={copySource:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,v)}}const p=new o.Serializer(s,!0),d=new o.Serializer(s,!1),l={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.PageBlobCreateHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobCreateExceptionHeaders}},queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.encryptionScope,r.tier,r.blobTagsString,r.legalHold1,r.blobType,r.blobContentLength,r.blobSequenceNumber],isXML:!0,serializer:p},m={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.PageBlobUploadPagesHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobUploadPagesExceptionHeaders}},requestBody:r.body1,queryParameters:[r.timeoutInSeconds,r.comp19],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.contentLength,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.range,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.transactionalContentMD5,r.transactionalContentCrc64,r.contentType1,r.accept2,r.pageWrite,r.ifSequenceNumberLessThanOrEqualTo,r.ifSequenceNumberLessThan,r.ifSequenceNumberEqualTo],mediaType:"binary",serializer:d},c={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.PageBlobClearPagesHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobClearPagesExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp19],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.range,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.ifSequenceNumberLessThanOrEqualTo,r.ifSequenceNumberLessThan,r.ifSequenceNumberEqualTo,r.pageWrite1],isXML:!0,serializer:p},u={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.PageBlobUploadPagesFromURLHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobUploadPagesFromURLExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp19],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.sourceContentMD5,r.copySourceAuthorization,r.pageWrite,r.ifSequenceNumberLessThanOrEqualTo,r.ifSequenceNumberLessThan,r.ifSequenceNumberEqualTo,r.sourceUrl,r.sourceRange,r.sourceContentCrc64,r.range1],isXML:!0,serializer:p},h={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:s.PageList,headersMapper:s.PageBlobGetPageRangesHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobGetPageRangesExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.comp20],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.range,r.ifMatch,r.ifNoneMatch,r.ifTags],isXML:!0,serializer:p},g={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:s.PageList,headersMapper:s.PageBlobGetPageRangesDiffHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobGetPageRangesDiffExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.comp20,r.prevsnapshot],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.range,r.ifMatch,r.ifNoneMatch,r.ifTags,r.prevSnapshotUrl],isXML:!0,serializer:p},f={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.PageBlobResizeHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobResizeExceptionHeaders}},queryParameters:[r.comp,r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.blobContentLength],isXML:!0,serializer:p},y={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.PageBlobUpdateSequenceNumberHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobUpdateSequenceNumberExceptionHeaders}},queryParameters:[r.comp,r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobSequenceNumber,r.sequenceNumberAction],isXML:!0,serializer:p},v={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:s.PageBlobCopyIncrementalHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.PageBlobCopyIncrementalExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp21],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.ifTags,r.copySource],isXML:!0,serializer:p}})),x.register("6peY7",(function(e,t){a(e.exports,"AppendBlob",(()=>n));var i=x("7JW2J"),o=x("hAVxy"),s=x("lWtOt"),r=x("7OcAN");class n{constructor(e){this.client=e}create(e,a){const t={contentLength:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,l)}appendBlock(e,a,t){const o={contentLength:e,body:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,m)}appendBlockFromUrl(e,a,t){const o={sourceUrl:e,contentLength:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,c)}seal(e){const a={options:i.operationOptionsToRequestOptionsBase(e||{})};return this.client.sendOperationRequest(a,u)}}const p=new o.Serializer(s,!0),d=new o.Serializer(s,!1),l={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.AppendBlobCreateHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.AppendBlobCreateExceptionHeaders}},queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.encryptionScope,r.blobTagsString,r.legalHold1,r.blobType1],isXML:!0,serializer:p},m={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.AppendBlobAppendBlockHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.AppendBlobAppendBlockExceptionHeaders}},requestBody:r.body1,queryParameters:[r.timeoutInSeconds,r.comp22],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.contentLength,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.transactionalContentMD5,r.transactionalContentCrc64,r.contentType1,r.accept2,r.maxSize,r.appendPosition],mediaType:"binary",serializer:d},c={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.AppendBlobAppendBlockFromUrlHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.AppendBlobAppendBlockFromUrlExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp22],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.encryptionScope,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.sourceContentMD5,r.copySourceAuthorization,r.transactionalContentMD5,r.sourceUrl,r.sourceContentCrc64,r.maxSize,r.appendPosition,r.sourceRange1],isXML:!0,serializer:p},u={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:s.AppendBlobSealHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.AppendBlobSealExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp23],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.ifMatch,r.ifNoneMatch,r.appendPosition],isXML:!0,serializer:p}})),x.register("lmGM4",(function(e,t){a(e.exports,"BlockBlob",(()=>n));var i=x("7JW2J"),o=x("hAVxy"),s=x("lWtOt"),r=x("7OcAN");class n{constructor(e){this.client=e}upload(e,a,t){const o={contentLength:e,body:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,l)}putBlobFromUrl(e,a,t){const o={contentLength:e,copySource:a,options:i.operationOptionsToRequestOptionsBase(t||{})};return this.client.sendOperationRequest(o,m)}stageBlock(e,a,t,o){const s={blockId:e,contentLength:a,body:t,options:i.operationOptionsToRequestOptionsBase(o||{})};return this.client.sendOperationRequest(s,c)}stageBlockFromURL(e,a,t,o){const s={blockId:e,contentLength:a,sourceUrl:t,options:i.operationOptionsToRequestOptionsBase(o||{})};return this.client.sendOperationRequest(s,u)}commitBlockList(e,a){const t={blocks:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,h)}getBlockList(e,a){const t={listType:e,options:i.operationOptionsToRequestOptionsBase(a||{})};return this.client.sendOperationRequest(t,g)}}const p=new o.Serializer(s,!0),d=new o.Serializer(s,!1),l={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlockBlobUploadHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobUploadExceptionHeaders}},requestBody:r.body1,queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.contentLength,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.encryptionScope,r.tier,r.blobTagsString,r.legalHold1,r.transactionalContentMD5,r.contentType1,r.accept2,r.blobType2],mediaType:"binary",serializer:d},m={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlockBlobPutBlobFromUrlHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobPutBlobFromUrlExceptionHeaders}},queryParameters:[r.timeoutInSeconds],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition,r.encryptionScope,r.tier,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.sourceIfTags,r.copySource,r.blobTagsString,r.sourceContentMD5,r.copySourceAuthorization,r.transactionalContentMD5,r.blobType2,r.copySourceBlobProperties],isXML:!0,serializer:p},c={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlockBlobStageBlockHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobStageBlockExceptionHeaders}},requestBody:r.body1,queryParameters:[r.timeoutInSeconds,r.comp24,r.blockId],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.contentLength,r.leaseId,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.encryptionScope,r.transactionalContentMD5,r.transactionalContentCrc64,r.contentType1,r.accept2],mediaType:"binary",serializer:d},u={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlockBlobStageBlockFromURLHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobStageBlockFromURLExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.comp24,r.blockId],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.contentLength,r.leaseId,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.encryptionScope,r.sourceIfModifiedSince,r.sourceIfUnmodifiedSince,r.sourceIfMatch,r.sourceIfNoneMatch,r.sourceContentMD5,r.copySourceAuthorization,r.sourceUrl,r.sourceContentCrc64,r.sourceRange1],isXML:!0,serializer:p},h={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:s.BlockBlobCommitBlockListHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobCommitBlockListExceptionHeaders}},requestBody:r.blocks,queryParameters:[r.timeoutInSeconds,r.comp25],urlParameters:[r.url],headerParameters:[r.contentType,r.accept,r.version,r.requestId,r.metadata,r.leaseId,r.ifModifiedSince,r.ifUnmodifiedSince,r.encryptionKey,r.encryptionKeySha256,r.encryptionAlgorithm,r.ifMatch,r.ifNoneMatch,r.ifTags,r.blobCacheControl,r.blobContentType,r.blobContentMD5,r.blobContentEncoding,r.blobContentLanguage,r.blobContentDisposition,r.immutabilityPolicyExpiry,r.immutabilityPolicyMode,r.encryptionScope,r.tier,r.blobTagsString,r.legalHold1,r.transactionalContentMD5,r.transactionalContentCrc64],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:p},g={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:s.BlockList,headersMapper:s.BlockBlobGetBlockListHeaders},default:{bodyMapper:s.StorageError,headersMapper:s.BlockBlobGetBlockListExceptionHeaders}},queryParameters:[r.timeoutInSeconds,r.snapshot,r.comp25,r.listType],urlParameters:[r.url],headerParameters:[r.version,r.requestId,r.accept1,r.leaseId,r.ifTags],isXML:!0,serializer:p}})),x.register("fgXML",((e,t)=>{function i(e){if(void 0!==e)return e}function o(e,a){if(e&&!a)throw new RangeError("Customer-provided encryption key must be used over HTTPS.");e&&!e.encryptionAlgorithm&&(e.encryptionAlgorithm=p.EncryptionAlgorithmAES25)}a(e.exports,"toAccessTier",(()=>i)),a(e.exports,"ensureCpkIfSpecified",(()=>o));var s,r,n,p=x("bjvJG");(e=>{e.Hot="Hot",e.Cool="Cool",e.Archive="Archive"})(s||(s={})),(e=>{e.P4="P4",e.P6="P6",e.P10="P10",e.P15="P15",e.P20="P20",e.P30="P30",e.P40="P40",e.P50="P50",e.P60="P60",e.P70="P70",e.P80="P80"})(r||(r={})),(e=>{e.StorageOAuthScopes="https://storage.azure.com/.default",e.DiskComputeOAuthScopes="https://disk.compute.azure.com/.default"})(n||(n={}))})),x.register("i18fE",((e,t)=>{function i(e){const a=(e._response.parsedBody.pageRange||[]).map((e=>({offset:e.start,count:e.end-e.start}))),t=(e._response.parsedBody.clearRange||[]).map((e=>({offset:e.start,count:e.end-e.start})));return Object.assign(Object.assign({},e),{pageRange:a,clearRange:t,_response:Object.assign(Object.assign({},e._response),{parsedBody:{pageRange:a,clearRange:t}})})}a(e.exports,"rangeResponseFromModel",(()=>i))})),x.register("lhQSH",(function(e,t){function i(e){if(!e||"object"!=typeof e)return!1;const a=e;return Array.isArray(a.factories)&&"object"==typeof a.options&&"function"==typeof a.toServiceClientOptions}function o(e,a={}){var t;void 0===e&&(e=new y.AnonymousCredential);const i=new b.TelemetryPolicyFactory(a.userAgentOptions),o=[s.tracingPolicy({userAgent:i.telemetryString}),r.keepAlivePolicy(a.keepAliveOptions),i,n.generateClientRequestIdPolicy(),new g.StorageBrowserPolicyFactory,new f.StorageRetryPolicyFactory(a.retryOptions),p.deserializationPolicy(void 0,{xmlCharKey:"#"}),d.logPolicy({logger:h.logger.info,allowedHeaderNames:v.StorageBlobLoggingAllowedHeaderNames,allowedQueryParameters:v.StorageBlobLoggingAllowedQueryParameters})];return l.isNode&&(o.push(m.proxyPolicy(a.proxyOptions)),o.push(c.disableResponseDecompressionPolicy())),o.push(u.isTokenCredential(e)?N.attachCredential(k.storageBearerTokenChallengeAuthenticationPolicy(e,null!==(t=a.audience)&&void 0!==t?t:v.StorageOAuthScopes),e):e),new S(o,a)}a(e.exports,"isPipelineLike",(()=>i)),a(e.exports,"newPipeline",(()=>o));var s=x("q4uRL"),r=x("2EHau"),n=x("1tJzf"),p=x("ZMfJZ"),d=x("4tLWw"),l=x("aQqza"),m=x("h6UBU"),c=x("d3CVQ"),u=x("avTWh"),h=(x("hwe43"),x("7EOPB"),x("7IUr8")),g=x("hTUIV"),f=x("bPlvc"),y=x("cCx4o"),v=x("bjvJG"),b=x("gZPWF"),w=x("6tpKo"),N=x("aHkZ2"),k=x("4bsaX");class S{constructor(e,a={}){this.factories=e,this.options=Object.assign(Object.assign({},a),{httpClient:a.httpClient||w.getCachedDefaultHttpClient()})}toServiceClientOptions(){return{httpClient:this.options.httpClient,requestPolicyFactories:this.factories}}}})),x.register("7IUr8",((e,t)=>{a(e.exports,"logger",(()=>i));const i=x("5AktE").createClientLogger("storage-blob")})),x.register("hTUIV",((e,t)=>{a(e.exports,"StorageBrowserPolicyFactory",(()=>o));var i=x("hZKnZ");class o{create(e,a){return new i.StorageBrowserPolicy(e,a)}}})),x.register("hZKnZ",(function(e,t){a(e.exports,"StorageBrowserPolicy",(()=>n));var i=x("aQqza"),o=x("hwe43"),s=x("bjvJG"),r=x("aHkZ2");class n extends o.BaseRequestPolicy{constructor(e,a){super(e,a)}async sendRequest(e){return i.isNode||("GET"!==e.method.toUpperCase()&&"HEAD"!==e.method.toUpperCase()||(e.url=r.setURLParameter(e.url,s.URLConstants.Parameters.FORCE_BROWSER_NO_CACHE,""+(new Date).getTime())),e.headers.remove(s.HeaderConstants.COOKIE),e.headers.remove(s.HeaderConstants.CONTENT_LENGTH)),this._nextPolicy.sendRequest(e)}}})),x.register("bPlvc",(function(e,t){a(e.exports,"StorageRetryPolicyFactory",(()=>o));var i=x("cNSFB");class o{constructor(e){this.retryOptions=e}create(e,a){return new i.StorageRetryPolicy(e,a,this.retryOptions)}}})),x.register("cNSFB",(function(e,t){a(e.exports,"StorageRetryPolicy",(()=>m));var i,o=x("bhSD8"),s=x("hwe43"),r=x("bjvJG"),n=x("aHkZ2"),p=x("7IUr8");(e=>{e[e.EXPONENTIAL=0]="EXPONENTIAL",e[e.FIXED=1]="FIXED"})(i||(i={}));const d={maxRetryDelayInMs:12e4,maxTries:4,retryDelayInMs:4e3,retryPolicyType:i.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},l=new o.AbortError("The operation was aborted.");class m extends s.BaseRequestPolicy{constructor(e,a,t=d){super(e,a),this.retryOptions={retryPolicyType:t.retryPolicyType?t.retryPolicyType:d.retryPolicyType,maxTries:t.maxTries&&t.maxTries>=1?Math.floor(t.maxTries):d.maxTries,tryTimeoutInMs:t.tryTimeoutInMs&&t.tryTimeoutInMs>=0?t.tryTimeoutInMs:d.tryTimeoutInMs,retryDelayInMs:t.retryDelayInMs&&t.retryDelayInMs>=0?Math.min(t.retryDelayInMs,t.maxRetryDelayInMs?t.maxRetryDelayInMs:d.maxRetryDelayInMs):d.retryDelayInMs,maxRetryDelayInMs:t.maxRetryDelayInMs&&t.maxRetryDelayInMs>=0?t.maxRetryDelayInMs:d.maxRetryDelayInMs,secondaryHost:t.secondaryHost?t.secondaryHost:d.secondaryHost}}async sendRequest(e){return this.attemptSendRequest(e,!1,1)}async attemptSendRequest(e,a,t){const i=e.clone(),o=a||!this.retryOptions.secondaryHost||!("GET"===e.method||"HEAD"===e.method||"OPTIONS"===e.method)||t%2==1;let s;o||(i.url=n.setURLHost(i.url,this.retryOptions.secondaryHost)),this.retryOptions.tryTimeoutInMs&&(i.url=n.setURLParameter(i.url,r.URLConstants.Parameters.TIMEOUT,""+Math.floor(this.retryOptions.tryTimeoutInMs/1e3)));try{if(p.logger.info(`RetryPolicy: =====> Try=${t} ${o?"Primary":"Secondary"}`),s=await this._nextPolicy.sendRequest(i),!this.shouldRetry(o,t,s))return s;a=a||!o&&404===s.status}catch(e){if(p.logger.error(`RetryPolicy: Caught error, message: ${e.message}, code: ${e.code}`),!this.shouldRetry(o,t,s,e))throw e}return await this.delay(o,t,e.abortSignal),this.attemptSendRequest(e,a,++t)}shouldRetry(e,a,t,i){if(a>=this.retryOptions.maxTries)return p.logger.info(`RetryPolicy: Attempt(s) ${a} >= maxTries ${this.retryOptions.maxTries}, no further try.`),!1;const o=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"];if(i)for(const e of o)if(i.name.toUpperCase().includes(e)||i.message.toUpperCase().includes(e)||i.code&&(""+i.code).toUpperCase()===e)return p.logger.info(`RetryPolicy: Network error ${e} found, will retry.`),!0;if(t||i){const a=t?t.status:i?i.statusCode:0;if(!e&&404===a)return p.logger.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(503===a||500===a)return p.logger.info(`RetryPolicy: Will retry for status code ${a}.`),!0}return!("PARSE_ERROR"!==(null==i?void 0:i.code)||!(null==i?void 0:i.message.startsWith('Error "Error: Unclosed root tag'))||(p.logger.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),0))}async delay(e,a,t){let o=0;if(e)switch(this.retryOptions.retryPolicyType){case i.EXPONENTIAL:o=Math.min((Math.pow(2,a-1)-1)*this.retryOptions.retryDelayInMs,this.retryOptions.maxRetryDelayInMs);break;case i.FIXED:o=this.retryOptions.retryDelayInMs}else o=1e3*Math.random();return p.logger.info(`RetryPolicy: Delay for ${o}ms`),n.delay(o,t,l)}}})),x.register("gZPWF",(function(e,t){a(e.exports,"TelemetryPolicyFactory",(()=>n));var i=x("aQqza"),s=x("2fr9p"),r=x("bjvJG");class n{constructor(e){const a=[];if(i.isNode){if(e){const t=e.userAgentPrefix||"";t.length>0&&-1===a.indexOf(t)&&a.push(t)}const t="azsdk-js-storageblob/"+r.SDK_VERSION;-1===a.indexOf(t)&&a.push(t);const i=`(NODE-VERSION ${process.version}; ${o.type()} ${o.release()})`;-1===a.indexOf(i)&&a.push(i)}this.telemetryString=a.join(" ")}create(e,a){return new s.TelemetryPolicy(e,a,this.telemetryString)}}})),x.register("2fr9p",(function(e,t){a(e.exports,"TelemetryPolicy",(()=>n));var i=x("aQqza"),o=x("7EOPB"),s=x("hwe43"),r=x("bjvJG");class n extends s.BaseRequestPolicy{constructor(e,a,t){super(e,a),this.telemetry=t}async sendRequest(e){return i.isNode&&(e.headers||(e.headers=new o.HttpHeaders),e.headers.get(r.HeaderConstants.USER_AGENT)||e.headers.set(r.HeaderConstants.USER_AGENT,this.telemetry)),this._nextPolicy.sendRequest(e)}}})),x.register("6tpKo",((e,t)=>{function i(){return o}a(e.exports,"getCachedDefaultHttpClient",(()=>i));const o=new(x("fP8t3").NodeFetchHttpClient)})),x.register("4bsaX",(function(e,t){function i(e,a,t){function i(t){var i;return p.isRefreshing||(o=(async(e,a,t)=>{async function i(){if(Date.now()>=t){const a=await e();if(null===a)throw Error("Failed to refresh access token.");return a}try{return await e()}catch(e){return null}}let o=await i();for(;null===o;)await s.delay(a),o=await i();return o})((()=>e.getToken(a,t)),n.retryIntervalInMs,null!==(i=null==r?void 0:r.expiresOnTimestamp)&&void 0!==i?i:Date.now()).then((e=>(o=null,r=e,r))).catch((e=>{throw o=null,r=null,e}))),o}let o=null,r=null;const n=Object.assign(Object.assign({},l),t),p={get isRefreshing(){return null!==o},get shouldRefresh(){var e;return!p.isRefreshing&&(null!==(e=null==r?void 0:r.expiresOnTimestamp)&&void 0!==e?e:0)-n.refreshWindowInMsp.mustRefresh?i(e):(p.shouldRefresh&&i(e),r)}function o(e,a){let t=i(e,a);class o extends n.BaseRequestPolicy{constructor(e,a){super(e,a)}async sendRequest(a){if(!a.url.toLowerCase().startsWith("https://"))throw Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");const o=t,s=(await o({abortSignal:a.abortSignal,tracingOptions:{tracingContext:a.tracingContext}})).token;a.headers.set(d.AUTHORIZATION,"Bearer "+s);const n=await this._nextPolicy.sendRequest(a);if(401===(null==n?void 0:n.status)){const o=(e=>{const a=e.headers.get("WWW-Authenticate");if(401===e.status&&a)return a})(n);if(o){const s=(e=>(e.slice(7).trim()+" ").split(" ").filter((e=>e)).map((e=>(([e,a])=>({[e]:a}))(e.trim().split("=")))).reduce(((e,a)=>Object.assign(Object.assign({},e),a)),{}))(o),n=s.resource_id+p,l=r.URLBuilder.parse(s.authorization_uri).getPath().split("/")[1],m=i(e,n),c=(await m({abortSignal:a.abortSignal,tracingOptions:{tracingContext:a.tracingContext},tenantId:l})).token;return t=m,a.headers.set(d.AUTHORIZATION,"Bearer "+c),this._nextPolicy.sendRequest(a)}}return n}}return{create(e,a){return new o(e,a)}}}a(e.exports,"storageBearerTokenChallengeAuthenticationPolicy",(()=>o));var s=x("6foGL"),r=x("8asXx"),n=x("hwe43");s=x("6foGL"),r=x("8asXx"),x("hwe43"),s=x("6foGL"),r=x("8asXx"),n=x("hwe43");const p="/.default",d={AUTHORIZATION:"authorization"},l={forcedRefreshWindowInMs:1e3,retryIntervalInMs:3e3,refreshWindowInMs:12e4}})),x.register("lQkfq",(function(e,t){function i(e){return{state:Object.assign({},e),cancel:n,toString:d,update:p}}a(e.exports,"BlobBeginCopyFromUrlPoller",(()=>r));var o=x("6foGL"),s=x("g5zs9");class r extends s.Poller{constructor(e){const{blobClient:a,copySource:t,intervalInMs:o=15e3,onProgress:s,resumeFrom:r,startCopyFromURLOptions:n}=e;let p;r&&(p=JSON.parse(r).state),super(i(Object.assign(Object.assign({},p),{blobClient:a,copySource:t,startCopyFromURLOptions:n}))),"function"==typeof s&&this.onProgress(s),this.intervalInMs=o}delay(){return o.delay(this.intervalInMs)}}const n=async function(e={}){const a=this.state,{copyId:t}=a;return a.isCompleted?i(a):t?(await a.blobClient.abortCopyFromURL(t,{abortSignal:e.abortSignal}),a.isCancelled=!0,i(a)):(a.isCancelled=!0,i(a))},p=async function(e={}){const a=this.state,{blobClient:t,copySource:o,startCopyFromURLOptions:s}=a;if(a.isStarted){if(!a.isCompleted)try{const t=await a.blobClient.getProperties({abortSignal:e.abortSignal}),{copyStatus:i,copyProgress:o}=t,s=a.copyProgress;o&&(a.copyProgress=o),"pending"===i&&o!==s&&"function"==typeof e.fireProgress?e.fireProgress(a):"success"===i?(a.result=t,a.isCompleted=!0):"failed"===i&&(a.error=Error(`Blob copy failed with reason: "${t.copyStatusDescription||"unknown"}"`),a.isCompleted=!0)}catch(e){a.error=e,a.isCompleted=!0}}else{a.isStarted=!0;const e=await t.startCopyFromURL(o,s);a.copyId=e.copyId,"success"===e.copyStatus&&(a.result=e,a.isCompleted=!0)}return i(a)},d=function(){return JSON.stringify({state:this.state},((e,a)=>{if("blobClient"!==e)return a}))}})),x.register("g5zs9",(function(e,t){a(e.exports,"Poller",(()=>s));class i extends Error{constructor(e){super(e),this.name="PollerStoppedError",Object.setPrototypeOf(this,i.prototype)}}class o extends Error{constructor(e){super(e),this.name="PollerCancelledError",Object.setPrototypeOf(this,o.prototype)}}class s{constructor(e){this.stopped=!0,this.pollProgressCallbacks=[],this.operation=e,this.promise=new Promise(((e,a)=>{this.resolve=e,this.reject=a})),this.promise.catch((()=>{}))}async startPolling(){for(this.stopped&&(this.stopped=!1);!this.isStopped()&&!this.isDone();)await this.poll(),await this.delay()}async pollOnce(e={}){try{this.isDone()||(this.operation=await this.operation.update({abortSignal:e.abortSignal,fireProgress:this.fireProgress.bind(this)}),this.isDone()&&this.resolve&&this.resolve(this.operation.state.result))}catch(e){throw this.operation.state.error=e,this.reject&&this.reject(e),e}}fireProgress(e){for(const a of this.pollProgressCallbacks)a(e)}async cancelOnce(e={}){this.operation=await this.operation.cancel(e),this.reject&&this.reject(new o("Poller cancelled"))}poll(e={}){if(!this.pollOncePromise){this.pollOncePromise=this.pollOnce(e);const a=()=>{this.pollOncePromise=void 0};this.pollOncePromise.then(a,a).catch(this.reject)}return this.pollOncePromise}async pollUntilDone(){return this.stopped&&this.startPolling().catch(this.reject),this.promise}onProgress(e){return this.pollProgressCallbacks.push(e),()=>{this.pollProgressCallbacks=this.pollProgressCallbacks.filter((a=>a!==e))}}isDone(){const e=this.operation.state;return!!(e.isCompleted||e.isCancelled||e.error)}stopPolling(){this.stopped||(this.stopped=!0,this.reject&&this.reject(new i("This poller is already stopped")))}isStopped(){return this.stopped}cancelOperation(e={}){if(this.stopped||(this.stopped=!0),this.cancelPromise){if(e.abortSignal)throw Error("A cancel request is currently pending")}else this.cancelPromise=this.cancelOnce(e);return this.cancelPromise}getOperationState(){return this.operation.state}getResult(){return this.operation.state.result}toString(){return""+this.operation}}})),x.register("ed3Ve",((e,t)=>{function i(e){if(0>e.offset)throw new RangeError("Range.offset cannot be smaller than 0.");if(e.count&&0>=e.count)throw new RangeError("Range.count must be larger than 0. Leave it undefined if you want a range from offset to the end.");return e.count?`bytes=${e.offset}-${e.offset+e.count-1}`:`bytes=${e.offset}-`}a(e.exports,"rangeToString",(()=>i))})),x.register("14Ixk",(function(e,t){a(e.exports,"StorageClient",(()=>d));var i=x("fzn7k"),o=x("aHkZ2"),s=x("cCx4o"),r=x("dhM4N"),n=x("aQqza"),p=x("avTWh");class d{constructor(e,a){this.url=o.escapeURLPath(e),this.accountName=o.getAccountNameFromUrl(e),this.pipeline=a,this.storageClientContext=new i.StorageClientContext(this.url,a.toServiceClientOptions()),this.isHttps=o.iEqual(o.getURLScheme(this.url)||"","https"),this.credential=new s.AnonymousCredential;for(const e of this.pipeline.factories)n.isNode&&e instanceof r.StorageSharedKeyCredential||e instanceof s.AnonymousCredential?this.credential=e:p.isTokenCredential(e.credential)&&(this.credential=e.credential);this.storageClientContext.requestContentType=void 0}}})),x.register("fzn7k",(function(e,t){a(e.exports,"StorageClientContext",(()=>s));var i=x("fyICy"),o=x("eg2Jn");class s extends o.ServiceClient{constructor(e,a){if(void 0===e)throw Error("'url' cannot be null");if(a||(a={}),!a.userAgent){const e=i.getDefaultUserAgentValue();a.userAgent="azure-storage-blob/12.9.0 "+e}super(void 0,a),this.requestContentType="application/json; charset=utf-8",this.baseUri=a.endpoint||"{url}",this.url=e,this.version=a.version||"2021-04-10"}}})),x.register("7WPai",(function(e,t){var i,o;a(e.exports,"Batch",(()=>s)),(o=i||(i={}))[o.Good=0]="Good",o[o.Error=1]="Error";class s{constructor(e=5){if(this.actives=0,this.completed=0,this.offset=0,this.operations=[],this.state=i.Good,1>e)throw new RangeError("concurrency must be larger than 0");this.concurrency=e,this.emitter=new g.EventEmitter}addOperation(e){this.operations.push((async()=>{try{this.actives++,await e(),this.actives--,this.completed++,this.parallelExecute()}catch(e){this.emitter.emit("error",e)}}))}async do(){return 0===this.operations.length?Promise.resolve():(this.parallelExecute(),new Promise(((e,a)=>{this.emitter.on("finish",e),this.emitter.on("error",(e=>{this.state=i.Error,a(e)}))})))}nextOperation(){return this.operations.length>this.offset?this.operations[this.offset++]:null}parallelExecute(){if(this.state!==i.Error)if(this.operations.length>this.completed)for(;this.concurrency>this.actives;){const e=this.nextOperation();if(!e)return;e()}else this.emitter.emit("finish")}}})),x.register("hyeym",(function(e,t){a(e.exports,"BufferScheduler",(()=>o));var i=x("dARba");class o{constructor(e,a,t,i,o,s){if(this.emitter=new g.EventEmitter,this.offset=0,this.isStreamEnd=!1,this.isError=!1,this.executingOutgoingHandlers=0,this.numBuffers=0,this.unresolvedDataArray=[],this.unresolvedLength=0,this.incoming=[],this.outgoing=[],0>=a)throw new RangeError("bufferSize must be larger than 0, current is "+a);if(0>=t)throw new RangeError("maxBuffers must be larger than 0, current is "+t);if(0>=o)throw new RangeError("concurrency must be larger than 0, current is "+o);this.bufferSize=a,this.maxBuffers=t,this.readable=e,this.outgoingHandler=i,this.concurrency=o,this.encoding=s}async do(){return new Promise(((e,a)=>{this.readable.on("data",(e=>{e="string"==typeof e?Buffer.from(e,this.encoding):e,this.appendUnresolvedData(e),this.resolveData()||this.readable.pause()})),this.readable.on("error",(e=>{this.emitter.emit("error",e)})),this.readable.on("end",(()=>{this.isStreamEnd=!0,this.emitter.emit("checkEnd")})),this.emitter.on("error",(e=>{this.isError=!0,this.readable.pause(),a(e)})),this.emitter.on("checkEnd",(()=>{if(this.outgoing.length>0)this.triggerOutgoingHandlers();else if(this.isStreamEnd&&0===this.executingOutgoingHandlers)if(this.unresolvedLength>0&&this.bufferSize>this.unresolvedLength){const t=this.shiftBufferFromUnresolvedDataArray();this.outgoingHandler((()=>t.getReadableStream()),t.size,this.offset).then(e).catch(a)}else{if(this.unresolvedLength>=this.bufferSize)return;e()}}))}))}appendUnresolvedData(e){this.unresolvedDataArray.push(e),this.unresolvedLength+=e.length}shiftBufferFromUnresolvedDataArray(e){return e?e.fill(this.unresolvedDataArray,this.unresolvedLength):e=new i.PooledBuffer(this.bufferSize,this.unresolvedDataArray,this.unresolvedLength),this.unresolvedLength-=e.size,e}resolveData(){for(;this.unresolvedLength>=this.bufferSize;){let e;if(this.incoming.length>0)e=this.incoming.shift(),this.shiftBufferFromUnresolvedDataArray(e);else{if(this.numBuffers>=this.maxBuffers)return!1;e=this.shiftBufferFromUnresolvedDataArray(),this.numBuffers++}this.outgoing.push(e),this.triggerOutgoingHandlers()}return!0}async triggerOutgoingHandlers(){let e;do{if(this.executingOutgoingHandlers>=this.concurrency)return;e=this.outgoing.shift(),e&&this.triggerOutgoingHandler(e)}while(e)}async triggerOutgoingHandler(e){const a=e.size;this.executingOutgoingHandlers++,this.offset+=a;try{await this.outgoingHandler((()=>e.getReadableStream()),a,this.offset-a)}catch(e){return void this.emitter.emit("error",e)}this.executingOutgoingHandlers--,this.reuseBuffer(e),this.emitter.emit("checkEnd")}reuseBuffer(e){this.incoming.push(e),this.isError||!this.resolveData()||this.isStreamEnd||this.readable.resume()}}})),x.register("dARba",(function(e,t){a(e.exports,"PooledBuffer",(()=>s));var i=x("d5bIw");const o=d.constants.MAX_LENGTH;class s{constructor(e,a,t){this.buffers=[],this.capacity=e,this._size=0;const i=Math.ceil(e/o);for(let a=0;i>a;a++){let t=a===i-1?e%o:o;0===t&&(t=o),this.buffers.push(Buffer.allocUnsafe(t))}a&&this.fill(a,t)}get size(){return this._size}fill(e,a){this._size=Math.min(this.capacity,a);let t=0,i=0,o=0,s=0,r=0;for(;this._size>r;){const a=e[t],n=this.buffers[i],p=a.copy(n,o,s);r+=p,s+=p,o+=p,s===a.length&&(t++,s=0),o===n.length&&(i++,o=0)}e.splice(0,t),e.length>0&&(e[0]=e[0].slice(s))}getReadableStream(){return new i.BuffersStream(this.buffers,this.size)}}})),x.register("d5bIw",(function(e,t){a(e.exports,"BuffersStream",(()=>i));class i extends l.Readable{constructor(e,a,t){super(t),this.buffers=e,this.byteLength=a,this.byteOffsetInCurrentBuffer=0,this.bufferIndex=0,this.pushedBytesLength=0;let i=0;for(const e of this.buffers)i+=e.byteLength;if(this.byteLength>i)throw Error("Data size shouldn't be larger than the total length of buffers.")}_read(e){this.byteLength>this.pushedBytesLength||this.push(null),e||(e=this.readableHighWaterMark);const a=[];let t=0;for(;e>t&&this.byteLength>this.pushedBytesLength;){const i=this.buffers[this.bufferIndex].byteLength-this.byteOffsetInCurrentBuffer,o=Math.min(i,this.byteLength-this.pushedBytesLength);if(o>e-t){const i=this.byteOffsetInCurrentBuffer+e-t;a.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,i)),this.pushedBytesLength+=e-t,this.byteOffsetInCurrentBuffer=i,t=e;break}{const e=this.byteOffsetInCurrentBuffer+o;a.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,e)),o===i?(this.byteOffsetInCurrentBuffer=0,this.bufferIndex++):this.byteOffsetInCurrentBuffer=e,this.pushedBytesLength+=o,t+=o}}a.length>1?this.push(Buffer.concat(a)):1===a.length&&this.push(a[0])}}})),x.register("e07tx",((e,t)=>{function i(e){var a,t;return{spanOptions:null===(a=null==e?void 0:e.tracingOptions)||void 0===a?void 0:a.spanOptions,tracingContext:null===(t=null==e?void 0:e.tracingOptions)||void 0===t?void 0:t.tracingContext}}a(e.exports,"createSpan",(()=>o)),a(e.exports,"convertTracingToRequestOptionsBase",(()=>i));const o=x("9lMq8").createSpanFunction({packagePrefix:"Azure.Storage.Blob",namespace:"Microsoft.Storage"})})),x.register("5xL7S",((e,t)=>{async function o(e,a,t,i,o){let s=0;const r=i-t;return new Promise(((i,n)=>{e.on("readable",(()=>{if(s>=r)return void i();let n=e.read();if(!n)return;"string"==typeof n&&(n=Buffer.from(n,o));const p=s+n.length>r?r-s:n.length;a.fill(n.slice(0,p),t+s,t+s+p),s+=p})),e.on("end",(()=>{r>s&&n(Error(`Stream drains before getting enough data needed. Data read: ${s}, data need: ${r}`)),i()})),e.on("error",n)}))}async function r(e,a){return new Promise(((t,o)=>{const s=i.createWriteStream(a);e.on("error",(e=>{o(e)})),s.on("error",(e=>{o(e)})),s.on("close",t),e.pipe(s)}))}a(e.exports,"streamToBuffer",(()=>o)),a(e.exports,"readStreamToLocalFile",(()=>r)),a(e.exports,"fsStat",(()=>n)),a(e.exports,"fsCreateReadStream",(()=>p));const n=s.promisify(i.stat),p=i.createReadStream})),x.register("928Wp",((e,t)=>{function i(e,a,t){const i=e.version?e.version:c.SERVICE_VERSION,h=a instanceof p.StorageSharedKeyCredential?a:void 0;let g;if(void 0===h&&void 0!==t&&(g=new d.UserDelegationKeyCredential(t,a)),void 0===h&&void 0===g)throw TypeError("Invalid sharedKeyCredential, userDelegationKey or accountName.");if(i>="2020-12-06")return void 0!==h?((e,a)=>{if(!((e=s(e)).identifier||e.permissions&&e.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let t,i="c",p=e.snapshotTime;e.blobName&&(i="b",e.snapshotTime?i="bs":e.versionId&&(i="bv",p=e.versionId)),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const d=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),e.identifier,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,i,p,e.encryptionScope,e.cacheControl?e.cacheControl:"",e.contentDisposition?e.contentDisposition:"",e.contentEncoding?e.contentEncoding:"",e.contentLanguage?e.contentLanguage:"",e.contentType?e.contentType:""].join("\n"),c=a.computeHMACSHA256(d);return new m.SASQueryParameters(e.version,c,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,void 0,void 0,void 0,e.encryptionScope)})(e,h):((e,a)=>{if(!(e=s(e)).permissions||!e.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let t,i="c",p=e.snapshotTime;e.blobName&&(i="b",e.snapshotTime?i="bs":e.versionId&&(i="bv",p=e.versionId)),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const d=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),a.userDelegationKey.signedObjectId,a.userDelegationKey.signedTenantId,a.userDelegationKey.signedStartsOn?u.truncatedISO8061Date(a.userDelegationKey.signedStartsOn,!1):"",a.userDelegationKey.signedExpiresOn?u.truncatedISO8061Date(a.userDelegationKey.signedExpiresOn,!1):"",a.userDelegationKey.signedService,a.userDelegationKey.signedVersion,e.preauthorizedAgentObjectId,"",e.correlationId,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,i,p,e.encryptionScope,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join("\n"),c=a.computeHMACSHA256(d);return new m.SASQueryParameters(e.version,c,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,a.userDelegationKey,e.preauthorizedAgentObjectId,e.correlationId,e.encryptionScope)})(e,g);if(i>="2018-11-09")return void 0!==h?((e,a)=>{if(!((e=s(e)).identifier||e.permissions&&e.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let t,i="c",p=e.snapshotTime;e.blobName&&(i="b",e.snapshotTime?i="bs":e.versionId&&(i="bv",p=e.versionId)),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const d=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),e.identifier,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,i,p,e.cacheControl?e.cacheControl:"",e.contentDisposition?e.contentDisposition:"",e.contentEncoding?e.contentEncoding:"",e.contentLanguage?e.contentLanguage:"",e.contentType?e.contentType:""].join("\n"),c=a.computeHMACSHA256(d);return new m.SASQueryParameters(e.version,c,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType)})(e,h):"2020-02-10">i?((e,a)=>{if(!(e=s(e)).permissions||!e.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let t,i="c",p=e.snapshotTime;e.blobName&&(i="b",e.snapshotTime?i="bs":e.versionId&&(i="bv",p=e.versionId)),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const d=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),a.userDelegationKey.signedObjectId,a.userDelegationKey.signedTenantId,a.userDelegationKey.signedStartsOn?u.truncatedISO8061Date(a.userDelegationKey.signedStartsOn,!1):"",a.userDelegationKey.signedExpiresOn?u.truncatedISO8061Date(a.userDelegationKey.signedExpiresOn,!1):"",a.userDelegationKey.signedService,a.userDelegationKey.signedVersion,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,i,p,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join("\n"),c=a.computeHMACSHA256(d);return new m.SASQueryParameters(e.version,c,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,a.userDelegationKey)})(e,g):((e,a)=>{if(!(e=s(e)).permissions||!e.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let t,i="c",p=e.snapshotTime;e.blobName&&(i="b",e.snapshotTime?i="bs":e.versionId&&(i="bv",p=e.versionId)),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const d=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),a.userDelegationKey.signedObjectId,a.userDelegationKey.signedTenantId,a.userDelegationKey.signedStartsOn?u.truncatedISO8061Date(a.userDelegationKey.signedStartsOn,!1):"",a.userDelegationKey.signedExpiresOn?u.truncatedISO8061Date(a.userDelegationKey.signedExpiresOn,!1):"",a.userDelegationKey.signedService,a.userDelegationKey.signedVersion,e.preauthorizedAgentObjectId,"",e.correlationId,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,i,p,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType].join("\n"),c=a.computeHMACSHA256(d);return new m.SASQueryParameters(e.version,c,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType,a.userDelegationKey,e.preauthorizedAgentObjectId,e.correlationId)})(e,g);if(i>="2015-04-05"){if(void 0!==h)return((e,a)=>{if(!((e=s(e)).identifier||e.permissions&&e.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let t,i="c";e.blobName&&(i="b"),e.permissions&&(t=e.blobName?""+r.BlobSASPermissions.parse(""+e.permissions):""+n.ContainerSASPermissions.parse(""+e.permissions));const p=[t||"",e.startsOn?u.truncatedISO8061Date(e.startsOn,!1):"",e.expiresOn?u.truncatedISO8061Date(e.expiresOn,!1):"",o(a.accountName,e.containerName,e.blobName),e.identifier,e.ipRange?l.ipRangeToString(e.ipRange):"",e.protocol?e.protocol:"",e.version,e.cacheControl?e.cacheControl:"",e.contentDisposition?e.contentDisposition:"",e.contentEncoding?e.contentEncoding:"",e.contentLanguage?e.contentLanguage:"",e.contentType?e.contentType:""].join("\n"),d=a.computeHMACSHA256(p);return new m.SASQueryParameters(e.version,d,t,void 0,void 0,e.protocol,e.startsOn,e.expiresOn,e.ipRange,e.identifier,i,e.cacheControl,e.contentDisposition,e.contentEncoding,e.contentLanguage,e.contentType)})(e,h);throw new RangeError("'version' must be >= '2018-11-09' when generating user delegation SAS using user delegation key.")}throw new RangeError("'version' must be >= '2015-04-05'.")}function o(e,a,t){const i=[`/blob/${e}/${a}`];return t&&i.push("/"+t),i.join("")}function s(e){const a=e.version?e.version:c.SERVICE_VERSION;if(e.snapshotTime&&"2018-11-09">a)throw RangeError("'version' must be >= '2018-11-09' when providing 'snapshotTime'.");if(void 0===e.blobName&&e.snapshotTime)throw RangeError("Must provide 'blobName' when providing 'snapshotTime'.");if(e.versionId&&"2019-10-10">a)throw RangeError("'version' must be >= '2019-10-10' when providing 'versionId'.");if(void 0===e.blobName&&e.versionId)throw RangeError("Must provide 'blobName' when providing 'versionId'.");if(e.permissions&&e.permissions.setImmutabilityPolicy&&"2020-08-04">a)throw RangeError("'version' must be >= '2020-08-04' when provided 'i' permission.");if(e.permissions&&e.permissions.deleteVersion&&"2019-10-10">a)throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");if(e.permissions&&e.permissions.permanentDelete&&"2019-10-10">a)throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");if(e.permissions&&e.permissions.tag&&"2019-12-12">a)throw RangeError("'version' must be >= '2019-12-12' when providing 't' permission.");if("2020-02-10">a&&e.permissions&&(e.permissions.move||e.permissions.execute))throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");if("2021-04-10">a&&e.permissions&&e.permissions.filterByTags)throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");if("2020-02-10">a&&(e.preauthorizedAgentObjectId||e.correlationId))throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");if(e.encryptionScope&&"2020-12-06">a)throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");return e.version=a,e}a(e.exports,"generateBlobSASQueryParameters",(()=>i));var r=x("8cZs1"),n=x("1gsXM"),p=x("dhM4N"),d=x("eVc67"),l=x("fC5B7"),m=x("iBqGJ"),c=x("bjvJG"),u=x("aHkZ2")})),x.register("8cZs1",(function(e,t){a(e.exports,"BlobSASPermissions",(()=>i));class i{constructor(){this.read=!1,this.add=!1,this.create=!1,this.write=!1,this.delete=!1,this.deleteVersion=!1,this.tag=!1,this.move=!1,this.execute=!1,this.setImmutabilityPolicy=!1,this.permanentDelete=!1}static parse(e){const a=new i;for(const t of e)switch(t){case"r":a.read=!0;break;case"a":a.add=!0;break;case"c":a.create=!0;break;case"w":a.write=!0;break;case"d":a.delete=!0;break;case"x":a.deleteVersion=!0;break;case"t":a.tag=!0;break;case"m":a.move=!0;break;case"e":a.execute=!0;break;case"i":a.setImmutabilityPolicy=!0;break;case"y":a.permanentDelete=!0;break;default:throw new RangeError("Invalid permission: "+t)}return a}static from(e){const a=new i;return e.read&&(a.read=!0),e.add&&(a.add=!0),e.create&&(a.create=!0),e.write&&(a.write=!0),e.delete&&(a.delete=!0),e.deleteVersion&&(a.deleteVersion=!0),e.tag&&(a.tag=!0),e.move&&(a.move=!0),e.execute&&(a.execute=!0),e.setImmutabilityPolicy&&(a.setImmutabilityPolicy=!0),e.permanentDelete&&(a.permanentDelete=!0),a}toString(){const e=[];return this.read&&e.push("r"),this.add&&e.push("a"),this.create&&e.push("c"),this.write&&e.push("w"),this.delete&&e.push("d"),this.deleteVersion&&e.push("x"),this.tag&&e.push("t"),this.move&&e.push("m"),this.execute&&e.push("e"),this.setImmutabilityPolicy&&e.push("i"),this.permanentDelete&&e.push("y"),e.join("")}}})),x.register("1gsXM",(function(e,t){a(e.exports,"ContainerSASPermissions",(()=>i));class i{constructor(){this.read=!1,this.add=!1,this.create=!1,this.write=!1,this.delete=!1,this.deleteVersion=!1,this.list=!1,this.tag=!1,this.move=!1,this.execute=!1,this.setImmutabilityPolicy=!1,this.permanentDelete=!1,this.filterByTags=!1}static parse(e){const a=new i;for(const t of e)switch(t){case"r":a.read=!0;break;case"a":a.add=!0;break;case"c":a.create=!0;break;case"w":a.write=!0;break;case"d":a.delete=!0;break;case"l":a.list=!0;break;case"t":a.tag=!0;break;case"x":a.deleteVersion=!0;break;case"m":a.move=!0;break;case"e":a.execute=!0;break;case"i":a.setImmutabilityPolicy=!0;break;case"y":a.permanentDelete=!0;break;case"f":a.filterByTags=!0;break;default:throw new RangeError("Invalid permission "+t)}return a}static from(e){const a=new i;return e.read&&(a.read=!0),e.add&&(a.add=!0),e.create&&(a.create=!0),e.write&&(a.write=!0),e.delete&&(a.delete=!0),e.list&&(a.list=!0),e.deleteVersion&&(a.deleteVersion=!0),e.tag&&(a.tag=!0),e.move&&(a.move=!0),e.execute&&(a.execute=!0),e.setImmutabilityPolicy&&(a.setImmutabilityPolicy=!0),e.permanentDelete&&(a.permanentDelete=!0),e.filterByTags&&(a.filterByTags=!0),a}toString(){const e=[];return this.read&&e.push("r"),this.add&&e.push("a"),this.create&&e.push("c"),this.write&&e.push("w"),this.delete&&e.push("d"),this.deleteVersion&&e.push("x"),this.list&&e.push("l"),this.tag&&e.push("t"),this.move&&e.push("m"),this.execute&&e.push("e"),this.setImmutabilityPolicy&&e.push("i"),this.permanentDelete&&e.push("y"),this.filterByTags&&e.push("f"),e.join("")}}})),x.register("eVc67",(function(e,t){a(e.exports,"UserDelegationKeyCredential",(()=>i));class i{constructor(e,a){this.accountName=e,this.userDelegationKey=a,this.key=Buffer.from(a.value,"base64")}computeHMACSHA256(e){return n.createHmac("sha256",this.key).update(e,"utf8").digest("base64")}}})),x.register("fC5B7",((e,t)=>{function i(e){return e.end?`${e.start}-${e.end}`:e.start}a(e.exports,"ipRangeToString",(()=>i))})),x.register("iBqGJ",(function(e,t){a(e.exports,"SASQueryParameters",(()=>r));var i,o=x("fC5B7"),s=x("aHkZ2");(e=>{e.Https="https",e.HttpsAndHttp="https,http"})(i||(i={}));class r{constructor(e,a,t,i,o,s,r,n,p,d,l,m,c,u,h,g,f,y,v,b){this.version=e,this.signature=a,void 0!==t&&"string"!=typeof t?(this.permissions=t.permissions,this.services=t.services,this.resourceTypes=t.resourceTypes,this.protocol=t.protocol,this.startsOn=t.startsOn,this.expiresOn=t.expiresOn,this.ipRangeInner=t.ipRange,this.identifier=t.identifier,this.encryptionScope=t.encryptionScope,this.resource=t.resource,this.cacheControl=t.cacheControl,this.contentDisposition=t.contentDisposition,this.contentEncoding=t.contentEncoding,this.contentLanguage=t.contentLanguage,this.contentType=t.contentType,t.userDelegationKey&&(this.signedOid=t.userDelegationKey.signedObjectId,this.signedTenantId=t.userDelegationKey.signedTenantId,this.signedStartsOn=t.userDelegationKey.signedStartsOn,this.signedExpiresOn=t.userDelegationKey.signedExpiresOn,this.signedService=t.userDelegationKey.signedService,this.signedVersion=t.userDelegationKey.signedVersion,this.preauthorizedAgentObjectId=t.preauthorizedAgentObjectId,this.correlationId=t.correlationId)):(this.services=i,this.resourceTypes=o,this.expiresOn=n,this.permissions=t,this.protocol=s,this.startsOn=r,this.ipRangeInner=p,this.encryptionScope=b,this.identifier=d,this.resource=l,this.cacheControl=m,this.contentDisposition=c,this.contentEncoding=u,this.contentLanguage=h,this.contentType=g,f&&(this.signedOid=f.signedObjectId,this.signedTenantId=f.signedTenantId,this.signedStartsOn=f.signedStartsOn,this.signedExpiresOn=f.signedExpiresOn,this.signedService=f.signedService,this.signedVersion=f.signedVersion,this.preauthorizedAgentObjectId=y,this.correlationId=v))}get ipRange(){if(this.ipRangeInner)return{end:this.ipRangeInner.end,start:this.ipRangeInner.start}}toString(){const e=["sv","ss","srt","spr","st","se","sip","si","ses","skoid","sktid","skt","ske","sks","skv","sr","sp","sig","rscc","rscd","rsce","rscl","rsct","saoid","scid"],a=[];for(const t of e)switch(t){case"sv":this.tryAppendQueryParameter(a,t,this.version);break;case"ss":this.tryAppendQueryParameter(a,t,this.services);break;case"srt":this.tryAppendQueryParameter(a,t,this.resourceTypes);break;case"spr":this.tryAppendQueryParameter(a,t,this.protocol);break;case"st":this.tryAppendQueryParameter(a,t,this.startsOn?s.truncatedISO8061Date(this.startsOn,!1):void 0);break;case"se":this.tryAppendQueryParameter(a,t,this.expiresOn?s.truncatedISO8061Date(this.expiresOn,!1):void 0);break;case"sip":this.tryAppendQueryParameter(a,t,this.ipRange?o.ipRangeToString(this.ipRange):void 0);break;case"si":this.tryAppendQueryParameter(a,t,this.identifier);break;case"ses":this.tryAppendQueryParameter(a,t,this.encryptionScope);break;case"skoid":this.tryAppendQueryParameter(a,t,this.signedOid);break;case"sktid":this.tryAppendQueryParameter(a,t,this.signedTenantId);break;case"skt":this.tryAppendQueryParameter(a,t,this.signedStartsOn?s.truncatedISO8061Date(this.signedStartsOn,!1):void 0);break;case"ske":this.tryAppendQueryParameter(a,t,this.signedExpiresOn?s.truncatedISO8061Date(this.signedExpiresOn,!1):void 0);break;case"sks":this.tryAppendQueryParameter(a,t,this.signedService);break;case"skv":this.tryAppendQueryParameter(a,t,this.signedVersion);break;case"sr":this.tryAppendQueryParameter(a,t,this.resource);break;case"sp":this.tryAppendQueryParameter(a,t,this.permissions);break;case"sig":this.tryAppendQueryParameter(a,t,this.signature);break;case"rscc":this.tryAppendQueryParameter(a,t,this.cacheControl);break;case"rscd":this.tryAppendQueryParameter(a,t,this.contentDisposition);break;case"rsce":this.tryAppendQueryParameter(a,t,this.contentEncoding);break;case"rscl":this.tryAppendQueryParameter(a,t,this.contentLanguage);break;case"rsct":this.tryAppendQueryParameter(a,t,this.contentType);break;case"saoid":this.tryAppendQueryParameter(a,t,this.preauthorizedAgentObjectId);break;case"scid":this.tryAppendQueryParameter(a,t,this.correlationId)}return a.join("&")}tryAppendQueryParameter(e,a,t){t&&(a=encodeURIComponent(a),t=encodeURIComponent(t),a.length>0&&t.length>0&&e.push(`${a}=${t}`))}}})),x.register("6LpVh",(function(e,t){a(e.exports,"BlobLeaseClient",(()=>l));var i=x("aQqza"),o=x("fzn7k"),s=x("hYkTo"),r=x("eOX0d"),n=x("hk2c8"),p=x("bjvJG"),d=x("e07tx");class l{constructor(e,a){const t=new o.StorageClientContext(e.url,e.pipeline.toServiceClientOptions());this._url=e.url,void 0===e.name?(this._isContainer=!0,this._containerOrBlobOperation=new r.Container(t)):(this._isContainer=!1,this._containerOrBlobOperation=new n.Blob(t)),a||(a=i.generateUuid()),this._leaseId=a}get leaseId(){return this._leaseId}get url(){return this._url}async acquireLease(e,a={}){var t,i,o,r,n,l;const{span:m,updatedOptions:c}=d.createSpan("BlobLeaseClient-acquireLease",a);if(this._isContainer&&((null===(t=a.conditions)||void 0===t?void 0:t.ifMatch)&&(null===(i=a.conditions)||void 0===i?void 0:i.ifMatch)!==p.ETagNone||(null===(o=a.conditions)||void 0===o?void 0:o.ifNoneMatch)&&(null===(r=a.conditions)||void 0===r?void 0:r.ifNoneMatch)!==p.ETagNone||(null===(n=a.conditions)||void 0===n?void 0:n.tagConditions)))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");try{return await this._containerOrBlobOperation.acquireLease(Object.assign({abortSignal:a.abortSignal,duration:e,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(l=a.conditions)||void 0===l?void 0:l.tagConditions}),proposedLeaseId:this._leaseId},d.convertTracingToRequestOptionsBase(c)))}catch(e){throw m.setStatus({code:s.SpanStatusCode.ERROR,message:e.message}),e}finally{m.end()}}async changeLease(e,a={}){var t,i,o,r,n,l;const{span:m,updatedOptions:c}=d.createSpan("BlobLeaseClient-changeLease",a);if(this._isContainer&&((null===(t=a.conditions)||void 0===t?void 0:t.ifMatch)&&(null===(i=a.conditions)||void 0===i?void 0:i.ifMatch)!==p.ETagNone||(null===(o=a.conditions)||void 0===o?void 0:o.ifNoneMatch)&&(null===(r=a.conditions)||void 0===r?void 0:r.ifNoneMatch)!==p.ETagNone||(null===(n=a.conditions)||void 0===n?void 0:n.tagConditions)))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");try{const t=await this._containerOrBlobOperation.changeLease(this._leaseId,e,Object.assign({abortSignal:a.abortSignal,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(l=a.conditions)||void 0===l?void 0:l.tagConditions})},d.convertTracingToRequestOptionsBase(c)));return this._leaseId=e,t}catch(e){throw m.setStatus({code:s.SpanStatusCode.ERROR,message:e.message}),e}finally{m.end()}}async releaseLease(e={}){var a,t,i,o,r,n;const{span:l,updatedOptions:m}=d.createSpan("BlobLeaseClient-releaseLease",e);if(this._isContainer&&((null===(a=e.conditions)||void 0===a?void 0:a.ifMatch)&&(null===(t=e.conditions)||void 0===t?void 0:t.ifMatch)!==p.ETagNone||(null===(i=e.conditions)||void 0===i?void 0:i.ifNoneMatch)&&(null===(o=e.conditions)||void 0===o?void 0:o.ifNoneMatch)!==p.ETagNone||(null===(r=e.conditions)||void 0===r?void 0:r.tagConditions)))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");try{return await this._containerOrBlobOperation.releaseLease(this._leaseId,Object.assign({abortSignal:e.abortSignal,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(n=e.conditions)||void 0===n?void 0:n.tagConditions})},d.convertTracingToRequestOptionsBase(m)))}catch(e){throw l.setStatus({code:s.SpanStatusCode.ERROR,message:e.message}),e}finally{l.end()}}async renewLease(e={}){var a,t,i,o,r,n;const{span:l,updatedOptions:m}=d.createSpan("BlobLeaseClient-renewLease",e);if(this._isContainer&&((null===(a=e.conditions)||void 0===a?void 0:a.ifMatch)&&(null===(t=e.conditions)||void 0===t?void 0:t.ifMatch)!==p.ETagNone||(null===(i=e.conditions)||void 0===i?void 0:i.ifNoneMatch)&&(null===(o=e.conditions)||void 0===o?void 0:o.ifNoneMatch)!==p.ETagNone||(null===(r=e.conditions)||void 0===r?void 0:r.tagConditions)))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");try{return await this._containerOrBlobOperation.renewLease(this._leaseId,Object.assign({abortSignal:e.abortSignal,modifiedAccessConditions:Object.assign(Object.assign({},e.conditions),{ifTags:null===(n=e.conditions)||void 0===n?void 0:n.tagConditions})},d.convertTracingToRequestOptionsBase(m)))}catch(e){throw l.setStatus({code:s.SpanStatusCode.ERROR,message:e.message}),e}finally{l.end()}}async breakLease(e,a={}){var t,i,o,r,n,l;const{span:m,updatedOptions:c}=d.createSpan("BlobLeaseClient-breakLease",a);if(this._isContainer&&((null===(t=a.conditions)||void 0===t?void 0:t.ifMatch)&&(null===(i=a.conditions)||void 0===i?void 0:i.ifMatch)!==p.ETagNone||(null===(o=a.conditions)||void 0===o?void 0:o.ifNoneMatch)&&(null===(r=a.conditions)||void 0===r?void 0:r.ifNoneMatch)!==p.ETagNone||(null===(n=a.conditions)||void 0===n?void 0:n.tagConditions)))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");try{const t=Object.assign({abortSignal:a.abortSignal,breakPeriod:e,modifiedAccessConditions:Object.assign(Object.assign({},a.conditions),{ifTags:null===(l=a.conditions)||void 0===l?void 0:l.tagConditions})},d.convertTracingToRequestOptionsBase(c));return await this._containerOrBlobOperation.breakLease(t)}catch(e){throw m.setStatus({code:s.SpanStatusCode.ERROR,message:e.message}),e}finally{m.end()}}}})),x.register("1GGyk",(function(e,a){"use strict";function t(e){return!e||e>=500}function i(e){return!!e&&[d.HttpCodes.BadGateway,d.HttpCodes.ServiceUnavailable,d.HttpCodes.GatewayTimeout].includes(e)}function o(e){return r(this,void 0,void 0,(function*(){return new Promise((a=>setTimeout(a,e)))}))}function s(e,a,s,n=l.DefaultRetryAttempts,d=l.DefaultRetryDelay,m){return r(this,void 0,void 0,(function*(){let r="",l=1;for(;n>=l;){let c,u,h=!1;try{c=yield a()}catch(e){m&&(c=m(e)),h=!0,r=e.message}if(c&&(u=s(c),!t(u)))return c;if(u&&(h=i(u),r="Cache service responded with "+u),p.debug(`${e} - Attempt ${l} of ${n} failed with error: ${r}`),!h){p.debug(e+" - Error is not retryable");break}yield o(d),l++}throw Error(`${e} failed: ${r}`)}))}var r=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const p=n(x("5O4BX"));var d=x("5iwoJ"),l=x("i4ATt");e.exports.isSuccessStatusCode=e=>!!e&&e>=200&&300>e,e.exports.isServerErrorStatusCode=t,e.exports.isRetryableStatusCode=i,e.exports.retry=s,e.exports.retryTypedResponse=function(e,a,t=l.DefaultRetryAttempts,i=l.DefaultRetryDelay){return r(this,void 0,void 0,(function*(){return yield s(e,a,(e=>e.statusCode),t,i,(e=>e instanceof d.HttpClientError?{statusCode:e.statusCode,result:null,headers:{},error:e}:void 0))}))},e.exports.retryHttpClientResponse=function(e,a,t=l.DefaultRetryAttempts,i=l.DefaultRetryDelay){return r(this,void 0,void 0,(function*(){return yield s(e,a,(e=>e.message.statusCode),t,i)}))}})),x.register("f0ask",((e,a)=>{"use strict";var t=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});const i=t(x("5O4BX"));e.exports.getUploadOptions=e=>{const a={uploadConcurrency:4,uploadChunkSize:33554432};return e&&("number"==typeof e.uploadConcurrency&&(a.uploadConcurrency=e.uploadConcurrency),"number"==typeof e.uploadChunkSize&&(a.uploadChunkSize=e.uploadChunkSize)),i.debug("Upload concurrency: "+a.uploadConcurrency),i.debug("Upload chunk size: "+a.uploadChunkSize),a},e.exports.getDownloadOptions=e=>{const a={useAzureSdk:!0,downloadConcurrency:8,timeoutInMs:3e4};return e&&("boolean"==typeof e.useAzureSdk&&(a.useAzureSdk=e.useAzureSdk),"number"==typeof e.downloadConcurrency&&(a.downloadConcurrency=e.downloadConcurrency),"number"==typeof e.timeoutInMs&&(a.timeoutInMs=e.timeoutInMs)),i.debug("Use Azure SDK: "+a.useAzureSdk),i.debug("Download concurrency: "+a.downloadConcurrency),i.debug("Request timeout (ms): "+a.timeoutInMs),a}})),x.register("bnSiv",(function(e,a){"use strict";function o(e,a,t){return r(this,void 0,void 0,(function*(){try{yield p.exec(`"${yield function(e,a){return r(this,void 0,void 0,(function*(){switch(process.platform){case"win32":{const t=process.env.windir+"\\System32\\tar.exe";if(a!==c.CompressionMethod.Gzip)e.push("--force-local");else{if(i.existsSync(t))return t;(yield m.isGnuTarInstalled())&&e.push("--force-local")}break}case"darwin":{const a=yield d.which("gtar",!1);if(a)return e.push("--delay-directory-restore"),a;break}}return yield d.which("tar",!0)}))}(e,a)}"`,e,{cwd:t})}catch(e){throw Error("Tar failed with error: "+(null==e?void 0:e.message))}}))}function s(){var e;return null!==(e=process.env.GITHUB_WORKSPACE)&&void 0!==e?e:process.cwd()}var r=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)Object.hasOwnProperty.call(e,t)&&(a[t]=e[t]);return a.default=e,a});Object.defineProperty(e.exports,"__esModule",{value:!0});var p=x("hZSfz");const d=n(x("6vm01")),l=n(t),m=n(x("7QIfE"));var c=x("i4ATt");e.exports.extractTar=function(e,a){return r(this,void 0,void 0,(function*(){const t=s();yield d.mkdirP(t);const i=[...(()=>{switch(a){case c.CompressionMethod.Zstd:return["--use-compress-program","zstd -d --long=30"];case c.CompressionMethod.ZstdWithoutLong:return["--use-compress-program","zstd -d"];default:return["-z"]}})(),"-xf",e.replace(RegExp("\\"+l.sep,"g"),"/"),"-P","-C",t.replace(RegExp("\\"+l.sep,"g"),"/")];yield o(i,a)}))},e.exports.createTar=function(e,a,t){return r(this,void 0,void 0,(function*(){const r="manifest.txt",n=m.getCacheFileName(t);i.writeFileSync(l.join(e,r),a.join("\n"));const p=s(),d=["--posix",...(()=>{switch(t){case c.CompressionMethod.Zstd:return["--use-compress-program","zstd -T0 --long=30"];case c.CompressionMethod.ZstdWithoutLong:return["--use-compress-program","zstd -T0"];default:return["-z"]}})(),"-cf",n.replace(RegExp("\\"+l.sep,"g"),"/"),"-P","-C",p.replace(RegExp("\\"+l.sep,"g"),"/"),"--files-from",r];yield o(d,t,e)}))},e.exports.listTar=function(e,a){return r(this,void 0,void 0,(function*(){const t=[...(()=>{switch(a){case c.CompressionMethod.Zstd:return["--use-compress-program","zstd -d --long=30"];case c.CompressionMethod.ZstdWithoutLong:return["--use-compress-program","zstd -d"];default:return["-z"]}})(),"-tf",e.replace(RegExp("\\"+l.sep,"g"),"/"),"-P"];yield o(t,a)}))}})),x.register("cV2Dc",((e,i)=>{async function o(e,a){const t=await n.getManifestFromRepo(c,u,m,h);return await n.findFromManifest(e,!1,t,a)}async function s(e){const a=e.files[0].download_url;r.info(`Download from "${a}"`);const i=await n.downloadTool(a,void 0,m);let o;r.info("Extract downloaded archive"),o=d.IS_WINDOWS?await n.extractZip(i):await n.extractTar(i),r.info("Execute installation script"),await(async e=>{const a={cwd:e,env:{...process.env,...d.IS_LINUX&&{LD_LIBRARY_PATH:t.join(e,"lib")}},silent:!0,listeners:{stdout(e){r.info((""+e).trim())},stderr(e){r.error((""+e).trim())}}};d.IS_WINDOWS?await p.exec("powershell",["./setup.ps1"],a):await p.exec("bash",["./setup.sh"],a)})(o)}a(e.exports,"MANIFEST_URL",(()=>g)),a(e.exports,"findReleaseFromManifest",(()=>o)),a(e.exports,"installCpythonFromRelease",(()=>s));var r=x("5O4BX"),n=x("2yTXk"),p=x("hZSfz"),d=x("3pRFp");const l=r.getInput("token"),m=!l||d.isGhes()?void 0:"token "+l,c="actions",u="python-versions",h="main",g="https://raw.githubusercontent.com/actions/python-versions/main/versions-manifest.json"})),x.register("cmexd",((e,i)=>{async function o(e,a){let i,o="",l="";const m=(e=>{const a=e.split("-").filter((e=>!!e));if(2>a.length||"pypy"!=a[0])throw Error("Invalid 'version' property for PyPy. PyPy version should be specified as 'pypy-'. See README for examples and documentation.");const t=a[1];let i;if(i=a.length>2?s.pypyVersionToSemantic(a[2]):"x",!r.validateVersion(t)||!r.validateVersion(i))throw Error("Invalid 'version' property for PyPy. Both Python version and PyPy versions should satisfy SemVer notation. See README for examples and documentation.");if(!r.validatePythonVersionFormatForPyPy(t))throw Error("Invalid format of Python version for PyPy. Python version should be specified in format 'x.y'. See README for examples and documentation.");return{pypyVersion:i,pythonVersion:t}})(e);({installDir:i,resolvedPythonVersion:l,resolvedPyPyVersion:o}=((e,a,t)=>{let i="",o="",s=r.IS_WINDOWS?(e=>{let a="";return r.WINDOWS_ARCHS.forEach((t=>a=a||d.find("PyPy",e,t))),a})(e):d.find("PyPy",e,t);return s&&(o=r.getPyPyVersionFromPath(s),i=r.readExactPyPyVersionFile(s),n.satisfies(i,a)||(s=null,i="",o="")),s||p.info(`PyPy version ${e} (${a}) was not found in the local cache`),{installDir:s,resolvedPythonVersion:o,resolvedPyPyVersion:i}})(m.pythonVersion,m.pypyVersion,a)),i||({installDir:i,resolvedPythonVersion:l,resolvedPyPyVersion:o}=await s.installPyPy(m.pypyVersion,m.pythonVersion,a));const c=t.join(i,r.IS_WINDOWS?"Scripts":"bin"),u=s.getPyPyBinaryPath(i);return p.exportVariable("pythonLocation",u),p.addPath(u),p.addPath(c),p.setOutput("python-version","pypy"+o.trim()),{resolvedPyPyVersion:o,resolvedPythonVersion:l}}a(e.exports,"findPyPyVersion",(()=>o));var s=x("999Rr"),r=x("3pRFp"),n=x("4IYN6"),p=x("5O4BX"),d=x("2yTXk")})),x.register("999Rr",((o,s)=>{async function r(a,o,s){let r;const y=await(async()=>{const e="https://downloads.python.org/pypy/versions.json",a=new h.HttpClient("tool-cache"),t=await a.getJson(e);if(!t.result)throw Error(`Unable to retrieve the list of available PyPy versions from '${e}'`);return t.result})();if(!y||0===y.length)throw Error("No release was found in PyPy version.json");const v=((e,a,t,i)=>{const o=e.filter((e=>{const o=u.satisfies(u.coerce(e.python_version),a),s=f.isNightlyKeyword(t)&&f.isNightlyKeyword(e.pypy_version)||u.satisfies(p(e.pypy_version),t),r=e.files&&(f.IS_WINDOWS?(e=>e.files.some((e=>f.WINDOWS_ARCHS.includes(e.arch)&&f.WINDOWS_PLATFORMS.includes(e.platform))))(e):((e,a,t)=>e.files.some((e=>e.arch===a&&e.platform===t)))(e,i,process.platform));return o&&s&&r}));if(0===o.length)return null;const s=o.sort(((e,a)=>u.compare(u.coerce(p(a.pypy_version)),u.coerce(p(e.pypy_version)))||u.compare(u.coerce(a.python_version),u.coerce(e.python_version))))[0];return{foundAsset:f.IS_WINDOWS?d(s):l(s,i,process.platform),resolvedPythonVersion:s.python_version,resolvedPyPyVersion:s.pypy_version}})(y,o,a,s);if(!v||!v.foundAsset)throw Error(`PyPy version ${o} (${a}) with arch ${s} not found`);const{foundAsset:b,resolvedPythonVersion:x,resolvedPyPyVersion:w}=v;let N=""+b.download_url;m.info(`Downloading PyPy from "${N}" ...`);const k=await c.downloadTool(N);m.info("Extracting downloaded archive..."),r=f.IS_WINDOWS?await c.extractZip(k):await c.extractTar(k,void 0,"x");const S=e(i).readdirSync(r)[0],j=t.join(r,S);let C=j;f.isNightlyKeyword(w)||(C=await c.cacheDir(j,"PyPy",x,s)),f.writeExactPyPyVersionFile(C,w);const T=n(C);return await(async(e,a)=>{const t=u.coerce(a),i=u.major(t),o=2===i?"":"3";let s=f.IS_WINDOWS?".exe":"";m.info("Creating symlinks..."),f.createSymlinkInFolder(e,`pypy${o}${s}`,`python${i}${s}`,!0),f.createSymlinkInFolder(e,`pypy${o}${s}`,"python"+s,!0)})(T,x),await(async e=>{m.info("Installing and updating pip");const a=t.join(e,"python");await g.exec(a+" -m ensurepip"),await g.exec(e+"/python -m pip install --ignore-installed pip")})(T),{installDir:C,resolvedPythonVersion:x,resolvedPyPyVersion:w}}function n(e){const a=t.join(e,"bin");return f.IS_WINDOWS?e:a}function p(e){return e.replace(/(\d+\.\d+\.\d+)((?:a|b|rc))(\d*)/g,"$1-$2.$3")}function d(e){return e.files.find((e=>f.WINDOWS_ARCHS.includes(e.arch)&&f.WINDOWS_PLATFORMS.includes(e.platform)))}function l(e,a,t){return e.files.find((e=>e.arch===a&&e.platform===t))}a(o.exports,"installPyPy",(()=>r)),a(o.exports,"getPyPyBinaryPath",(()=>n)),a(o.exports,"pypyVersionToSemantic",(()=>p));var m=x("5O4BX"),c=x("2yTXk"),u=x("4IYN6"),h=x("5iwoJ"),g=x("hZSfz"),f=x("3pRFp")})),x.register("h1Bam",((e,t)=>{async function i(e,a){if(o.isCacheFeatureAvailable()){const t=s.getCacheDistributor(e,a,void 0);await t.restoreCache()}}a(e.exports,"cacheDependencies",(()=>i));var o=x("3pRFp"),s=x("cKeKz")})),x.register("cKeKz",((e,t)=>{function i(e,a,t){switch(e){case n.Pip:return new o.default(a,t);case n.Pipenv:return new s.default(a,t);case n.Poetry:return new r.default(a,t);default:throw Error(`Caching for '${e}' is not supported`)}}a(e.exports,"getCacheDistributor",(()=>i));var o=x("2kTZm"),s=x("cadCT"),r=x("jYydD");let n;(e=>{e.Pip="pip",e.Pipenv="pipenv",e.Poetry="poetry"})(n||(n={}))})),x.register("2kTZm",(function(i,r){a(i.exports,"default",(()=>c));var n=x("3HWNf"),p=x("5O4BX"),d=x("hZSfz"),l=x("9tvTe"),m=x("3pRFp"),c=class extends l.default{constructor(e,a="**/requirements.txt"){super("pip",a),this.pythonVersion=e}async getCacheGlobalDirectories(){let a=1,i="",r="";if(m.IS_WINDOWS){const a=e(s).promisify(v.exec);({stdout:i,stderr:r}=await a("pip cache dir"))}else({stdout:i,stderr:r,exitCode:a}=await d.getExecOutput("pip cache dir"));if(a&&r)throw Error("Could not get cache folder path for pip package manager");let n=i.trim();return n.includes("~")&&(n=t.join(e(o).homedir(),n.slice(1))),p.debug("global cache directory path is "+n),[n]}async computeKeys(){const e=await n.hashFiles(this.cacheDependencyPath);return{primaryKey:`${this.CACHE_KEY_PREFIX}-${process.env.RUNNER_OS}-python-${this.pythonVersion}-${this.packageManager}-${e}`,restoreKey:[`${this.CACHE_KEY_PREFIX}-${process.env.RUNNER_OS}-python-${this.pythonVersion}-${this.packageManager}`]}}}})),x.register("3HWNf",(function(e,a){"use strict";function t(e,a){return i(this,void 0,void 0,(function*(){return yield o.DefaultGlobber.create(e,a)}))}var i=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())})));Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.hashFiles=e.exports.create=void 0;var o=x("j8Yme"),s=x("iWisy");e.exports.create=t,e.exports.hashFiles=function(e,a){return i(this,void 0,void 0,(function*(){let i=!0;a&&"boolean"==typeof a.followSymbolicLinks&&(i=a.followSymbolicLinks);const o=yield t(e,{followSymbolicLinks:i});return s.hashFiles(o)}))}})),x.register("j8Yme",(function(e,a){"use strict";var o=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),s=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),r=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&o(a,e,t);return s(a,e),a}),n=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),p=e.exports&&e.exports.__asyncValues||function(e){function a(a){t[a]=e[a]&&(t=>new Promise(((i,o)=>{((e,a,t,i)=>{Promise.resolve(i).then((a=>{e({value:a,done:t})}),a)})(i,o,(t=e[a](t)).done,t.value)})))}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t)},d=e.exports&&e.exports.__await||function(e){return this instanceof d?(this.v=e,this):new d(e)},l=e.exports&&e.exports.__asyncGenerator||function(e,a,t){function i(e){l[e]&&(p[e]=a=>new Promise(((t,i)=>{m.push([e,a,t,i])>1||o(e,a)})))}function o(e,a){try{(t=l[e](a)).value instanceof d?Promise.resolve(t.value.v).then(s,r):n(m[0][2],t)}catch(e){n(m[0][3],e)}var t}function s(e){o("next",e)}function r(e){o("throw",e)}function n(e,a){e(a),m.shift(),m.length&&o(m[0][0],m[0][1])}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var p,l=t.apply(e,a||[]),m=[];return p={},i("next"),i("throw"),i("return"),p[Symbol.asyncIterator]=function(){return this},p};Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.DefaultGlobber=void 0;const m=r(x("5O4BX")),c=r(i),u=r(x("79LBX")),h=r(t),g=r(x("ciSJp"));var f=x("iDuo6"),y=x("8mwa3"),v=x("14mba");const b="win32"===process.platform;class w{constructor(e){this.patterns=[],this.searchPaths=[],this.options=u.getOptions(e)}getSearchPaths(){return this.searchPaths.slice()}glob(){var e,a;return n(this,void 0,void 0,(function*(){const t=[];try{for(var i,o=p(this.globGenerator());!(i=yield o.next()).done;)t.push(i.value)}catch(a){e={error:a}}finally{try{i&&!i.done&&(a=o.return)&&(yield a.call(o))}finally{if(e)throw e.error}}return t}))}globGenerator(){return l(this,arguments,(function*(){const e=u.getOptions(this.options),a=[];for(const t of this.patterns)a.push(t),e.implicitDescendants&&(t.trailingSeparator||"**"!==t.segments[t.segments.length-1])&&a.push(new y.Pattern(t.negate,!0,t.segments.concat("**")));const t=[];for(const e of g.getSearchPaths(a)){m.debug(`Search path '${e}'`);try{yield d(c.promises.lstat(e))}catch(e){if("ENOENT"===e.code)continue;throw e}t.unshift(new v.SearchState(e,1))}const i=[];for(;t.length;){const o=t.pop(),s=g.match(a,o.path),r=!!s||g.partialMatch(a,o.path);if(!s&&!r)continue;const n=yield d(w.stat(o,e,i));if(n)if(n.isDirectory()){if(s&f.MatchKind.Directory&&e.matchDirectories)yield yield d(o.path);else if(!r)continue;const a=o.level+1,i=(yield d(c.promises.readdir(o.path))).map((e=>new v.SearchState(h.join(o.path,e),a)));t.push(...i.reverse())}else s&f.MatchKind.File&&(yield yield d(o.path))}}))}static create(e,a){return n(this,void 0,void 0,(function*(){const t=new w(a);b&&(e=(e=e.replace(/\r\n/g,"\n")).replace(/\r/g,"\n"));const i=e.split("\n").map((e=>e.trim()));for(const e of i)e&&!e.startsWith("#")&&t.patterns.push(new y.Pattern(e));return t.searchPaths.push(...g.getSearchPaths(t.patterns)),t}))}static stat(e,a,t){return n(this,void 0,void 0,(function*(){let i;if(a.followSymbolicLinks)try{i=yield c.promises.stat(e.path)}catch(t){if("ENOENT"===t.code){if(a.omitBrokenSymbolicLinks)return void m.debug(`Broken symlink '${e.path}'`);throw Error(`No information found for the path '${e.path}'. This may indicate a broken symbolic link.`)}throw t}else i=yield c.promises.lstat(e.path);if(i.isDirectory()&&a.followSymbolicLinks){const a=yield c.promises.realpath(e.path);for(;t.length>=e.level;)t.pop();if(t.some((e=>e===a)))return void m.debug(`Symlink cycle detected for path '${e.path}' and realpath '${a}'`);t.push(a)}return i}))}}e.exports.DefaultGlobber=w})),x.register("79LBX",((e,a)=>{"use strict";var t=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),i=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&t(a,e,o);return i(a,e),a});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.getOptions=void 0;const s=o(x("5O4BX"));e.exports.getOptions=e=>{const a={followSymbolicLinks:!0,implicitDescendants:!0,matchDirectories:!0,omitBrokenSymbolicLinks:!0};return e&&("boolean"==typeof e.followSymbolicLinks&&(a.followSymbolicLinks=e.followSymbolicLinks,s.debug(`followSymbolicLinks '${a.followSymbolicLinks}'`)),"boolean"==typeof e.implicitDescendants&&(a.implicitDescendants=e.implicitDescendants,s.debug(`implicitDescendants '${a.implicitDescendants}'`)),"boolean"==typeof e.matchDirectories&&(a.matchDirectories=e.matchDirectories,s.debug(`matchDirectories '${a.matchDirectories}'`)),"boolean"==typeof e.omitBrokenSymbolicLinks&&(a.omitBrokenSymbolicLinks=e.omitBrokenSymbolicLinks,s.debug(`omitBrokenSymbolicLinks '${a.omitBrokenSymbolicLinks}'`))),a}})),x.register("ciSJp",((e,a)=>{"use strict";var t=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),i=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),o=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var o in e)"default"!==o&&Object.hasOwnProperty.call(e,o)&&t(a,e,o);return i(a,e),a});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.partialMatch=e.exports.match=e.exports.getSearchPaths=void 0;const s=o(x("fa1gt"));var r=x("iDuo6");const n="win32"===process.platform;e.exports.getSearchPaths=e=>{e=e.filter((e=>!e.negate));const a={};for(const t of e)a[n?t.searchPath.toUpperCase():t.searchPath]="candidate";const t=[];for(const i of e){const e=n?i.searchPath.toUpperCase():i.searchPath;if("included"===a[e])continue;let o=!1,r=e,p=s.dirname(r);for(;p!==r;){if(a[p]){o=!0;break}r=p,p=s.dirname(r)}o||(t.push(i.searchPath),a[e]="included")}return t},e.exports.match=(e,a)=>{let t=r.MatchKind.None;for(const i of e)i.negate?t&=~i.match(a):t|=i.match(a);return t},e.exports.partialMatch=(e,a)=>e.some((e=>!e.negate&&e.partialMatch(a)))})),x.register("fa1gt",((e,a)=>{"use strict";function i(e){return c.default(e,"hasAbsoluteRoot parameter 'itemPath' must not be empty"),e=o(e),u?e.startsWith("\\\\")||/^[A-Z]:\\/i.test(e):e.startsWith("/")}function o(e){return e=e||"",u?(e=e.replace(/\//g,"\\"),(/^\\\\+[^\\]/.test(e)?"\\":"")+e.replace(/\\\\+/g,"\\")):e.replace(/\/\/+/g,"/")}function s(e){return e?(e=o(e)).endsWith(m.sep)?e===m.sep||u&&/^[A-Z]:\\$/i.test(e)?e:e.substr(0,e.length-1):e:""}var n=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),p=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),d=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&n(a,e,t);return p(a,e),a}),l=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.safeTrimTrailingSeparator=e.exports.normalizeSeparators=e.exports.hasRoot=e.exports.hasAbsoluteRoot=e.exports.ensureAbsoluteRoot=e.exports.dirname=void 0;const m=d(t),c=l(r),u="win32"===process.platform;e.exports.dirname=e=>{if(e=s(e),u&&/^\\\\[^\\]+(\\[^\\]+)?$/.test(e))return e;let a=m.dirname(e);return u&&/^\\\\[^\\]+\\[^\\]+\\$/.test(a)&&(a=s(a)),a},e.exports.ensureAbsoluteRoot=(e,a)=>{if(c.default(e,"ensureAbsoluteRoot parameter 'root' must not be empty"),c.default(a,"ensureAbsoluteRoot parameter 'itemPath' must not be empty"),i(a))return a;if(u){if(a.match(/^[A-Z]:[^\\/]|^[A-Z]:$/i)){let e=process.cwd();return c.default(e.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${e}'`),a[0].toUpperCase()===e[0].toUpperCase()?2===a.length?`${a[0]}:\\${e.substr(3)}`:(e.endsWith("\\")||(e+="\\"),`${a[0]}:\\${e.substr(3)}${a.substr(2)}`):`${a[0]}:\\${a.substr(2)}`}if(o(a).match(/^\\$|^\\[^\\]/)){const e=process.cwd();return c.default(e.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${e}'`),`${e[0]}:\\${a.substr(1)}`}}return c.default(i(e),"ensureAbsoluteRoot parameter 'root' must have an absolute root"),e.endsWith("/")||u&&e.endsWith("\\")||(e+=m.sep),e+a},e.exports.hasAbsoluteRoot=i,e.exports.hasRoot=e=>(c.default(e,"isRooted parameter 'itemPath' must not be empty"),e=o(e),u?e.startsWith("\\")||/^[A-Z]:/i.test(e):e.startsWith("/")),e.exports.normalizeSeparators=o,e.exports.safeTrimTrailingSeparator=s})),x.register("iDuo6",((e,a)=>{"use strict";var t;Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.MatchKind=void 0,(t=e.exports.MatchKind||(e.exports.MatchKind={}))[t.None=0]="None",t[t.Directory=1]="Directory",t[t.File=2]="File",t[t.All=3]="All"})),x.register("8mwa3",(function(e,a){"use strict";var i=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),s=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),n=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&i(a,e,t);return s(a,e),a}),p=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.Pattern=void 0;const d=n(o),l=n(t),m=n(x("fa1gt")),c=p(r);var u=x("2mu1W"),h=x("iDuo6"),g=x("6gtCK");const f="win32"===process.platform;class y{constructor(e,a=!1,t,i){let o;if(this.negate=!1,"string"==typeof e)o=e.trim();else{c.default((t=t||[]).length,"Parameter 'segments' must not empty");const a=y.getLiteral(t[0]);c.default(a&&m.hasAbsoluteRoot(a),"Parameter 'segments' first element must be a root path"),o=(""+new g.Path(t)).trim(),e&&(o="!"+o)}for(;o.startsWith("!");)this.negate=!this.negate,o=o.substr(1).trim();o=y.fixupPattern(o,i),this.segments=new g.Path(o).segments,this.trailingSeparator=m.normalizeSeparators(o).endsWith(l.sep),o=m.safeTrimTrailingSeparator(o);let s=!1;const r=this.segments.map((e=>y.getLiteral(e))).filter((e=>!s&&!(s=""===e)));this.searchPath=""+new g.Path(r),this.rootRegExp=RegExp(y.regExpEscape(r[0]),f?"i":""),this.isImplicitPattern=a;const n={dot:!0,nobrace:!0,nocase:f,nocomment:!0,noext:!0,nonegate:!0};o=f?o.replace(/\\/g,"/"):o,this.minimatch=new u.Minimatch(o,n)}match(e){return"**"===this.segments[this.segments.length-1]?(e=m.normalizeSeparators(e)).endsWith(l.sep)||!1!==this.isImplicitPattern||(e=`${e}${l.sep}`):e=m.safeTrimTrailingSeparator(e),this.minimatch.match(e)?this.trailingSeparator?h.MatchKind.Directory:h.MatchKind.All:h.MatchKind.None}partialMatch(e){return e=m.safeTrimTrailingSeparator(e),m.dirname(e)===e?this.rootRegExp.test(e):this.minimatch.matchOne(e.split(f?/\\+/:/\/+/),this.minimatch.set[0],!0)}static globEscape(e){return(f?e:e.replace(/\\/g,"\\\\")).replace(/(\[)(?=[^/]+\])/g,"[[]").replace(/\?/g,"[?]").replace(/\*/g,"[*]")}static fixupPattern(e,a){c.default(e,"pattern cannot be empty");const t=new g.Path(e).segments.map((e=>y.getLiteral(e)));if(c.default(t.every(((e,a)=>("."!==e||0===a)&&".."!==e)),`Invalid pattern '${e}'. Relative pathing '.' and '..' is not allowed.`),c.default(!m.hasRoot(e)||t[0],`Invalid pattern '${e}'. Root segment must not contain globs.`),"."===(e=m.normalizeSeparators(e))||e.startsWith("."+l.sep))e=y.globEscape(process.cwd())+e.substr(1);else if("~"===e||e.startsWith("~"+l.sep))a=a||d.homedir(),c.default(a,"Unable to determine HOME directory"),c.default(m.hasAbsoluteRoot(a),`Expected HOME directory to be a rooted path. Actual '${a}'`),e=y.globEscape(a)+e.substr(1);else if(f&&(e.match(/^[A-Z]:$/i)||e.match(/^[A-Z]:[^\\]/i))){let a=m.ensureAbsoluteRoot("C:\\dummy-root",e.substr(0,2));e.length>2&&!a.endsWith("\\")&&(a+="\\"),e=y.globEscape(a)+e.substr(2)}else if(f&&("\\"===e||e.match(/^\\[^\\]/))){let a=m.ensureAbsoluteRoot("C:\\dummy-root","\\");a.endsWith("\\")||(a+="\\"),e=y.globEscape(a)+e.substr(1)}else e=m.ensureAbsoluteRoot(y.globEscape(process.cwd()),e);return m.normalizeSeparators(e)}static getLiteral(e){let a="";for(let t=0;e.length>t;t++){const i=e[t];if("\\"!==i||f||t+1>=e.length){if("*"===i||"?"===i)return"";if("["===i&&e.length>t+1){let i="",o=-1;for(let a=t+1;e.length>a;a++){const t=e[a];if("\\"!==t||f||a+1>=e.length){if("]"===t){o=a;break}i+=t}else i+=e[++a]}if(o>=0){if(i.length>1)return"";if(i){a+=i,t=o;continue}}}a+=i}else a+=e[++t]}return a}static regExpEscape(e){return e.replace(/[[\\^$.|?*+()]/g,"\\$&")}}e.exports.Pattern=y})),x.register("6gtCK",(function(e,a){"use strict";var i=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),o=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),s=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&i(a,e,t);return o(a,e),a}),n=e.exports&&e.exports.__importDefault||(e=>e&&e.__esModule?e:{default:e});Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.Path=void 0;const p=s(t),d=s(x("fa1gt")),l=n(r),m="win32"===process.platform;e.exports.Path=class{constructor(e){if(this.segments=[],"string"==typeof e)if(l.default(e,"Parameter 'itemPath' must not be empty"),e=d.safeTrimTrailingSeparator(e),d.hasRoot(e)){let a=e,t=d.dirname(a);for(;t!==a;){const e=p.basename(a);this.segments.unshift(e),a=t,t=d.dirname(a)}this.segments.unshift(a)}else this.segments=e.split(p.sep);else{l.default(e.length>0,"Parameter 'itemPath' must not be an empty array");for(let a=0;e.length>a;a++){let t=e[a];l.default(t,"Parameter 'itemPath' must not contain any empty segments"),t=d.normalizeSeparators(e[a]),0===a&&d.hasRoot(t)?(t=d.safeTrimTrailingSeparator(t),l.default(t===d.dirname(t),"Parameter 'itemPath' root segment contains information for multiple segments"),this.segments.push(t)):(l.default(!t.includes(p.sep),"Parameter 'itemPath' contains unexpected path separators"),this.segments.push(t))}}}toString(){let e=this.segments[0],a=e.endsWith(p.sep)||m&&/^[A-Z]:$/i.test(e);for(let t=1;this.segments.length>t;t++)a?a=!1:e+=p.sep,e+=this.segments[t];return e}}})),x.register("14mba",(function(e,a){"use strict";Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.SearchState=void 0,e.exports.SearchState=class{constructor(e,a){this.path=e,this.level=a}}})),x.register("iWisy",(function(e,a){"use strict";var o=e.exports&&e.exports.__createBinding||(Object.create?(e,a,t,i)=>{void 0===i&&(i=t),Object.defineProperty(e,i,{enumerable:!0,get(){return a[t]}})}:(e,a,t,i)=>{void 0===i&&(i=t),e[i]=a[t]}),r=e.exports&&e.exports.__setModuleDefault||(Object.create?(e,a)=>{Object.defineProperty(e,"default",{enumerable:!0,value:a})}:(e,a)=>{e.default=a}),p=e.exports&&e.exports.__importStar||(e=>{if(e&&e.__esModule)return e;var a={};if(null!=e)for(var t in e)"default"!==t&&Object.hasOwnProperty.call(e,t)&&o(a,e,t);return r(a,e),a}),d=e.exports&&e.exports.__awaiter||((e,a,t,i)=>new(t||(t=Promise))(((o,s)=>{function r(e){try{p(i.next(e))}catch(e){s(e)}}function n(e){try{p(i.throw(e))}catch(e){s(e)}}function p(e){var a;e.done?o(e.value):(a=e.value,a instanceof t?a:new t((e=>{e(a)}))).then(r,n)}p((i=i.apply(e,a||[])).next())}))),m=e.exports&&e.exports.__asyncValues||function(e){function a(a){t[a]=e[a]&&(t=>new Promise(((i,o)=>{((e,a,t,i)=>{Promise.resolve(i).then((a=>{e({value:a,done:t})}),a)})(i,o,(t=e[a](t)).done,t.value)})))}if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,i=e[Symbol.asyncIterator];return i?i.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},a("next"),a("throw"),a("return"),t[Symbol.asyncIterator]=function(){return this},t)};Object.defineProperty(e.exports,"__esModule",{value:!0}),e.exports.hashFiles=void 0;const c=p(n),u=p(x("5O4BX")),h=p(i),g=p(l),f=p(s),y=p(t);e.exports.hashFiles=function(e){var a,t,i;return d(this,void 0,void 0,(function*(){let o=!1;const s=null!==(i=process.env.GITHUB_WORKSPACE)&&void 0!==i?i:process.cwd(),r=c.createHash("sha256");let n=0;try{for(var p,d=m(e.globGenerator());!(p=yield d.next()).done;){const e=p.value;if(u.debug(e),!e.startsWith(`${s}${y.sep}`)){u.debug(`Ignore '${e}' since it is not under GITHUB_WORKSPACE.`);continue}if(h.statSync(e).isDirectory()){u.debug(`Skip directory '${e}'.`);continue}const a=c.createHash("sha256"),t=f.promisify(g.pipeline);yield t(h.createReadStream(e),a),r.write(a.digest()),n++,o||(o=!0)}}catch(e){a={error:e}}finally{try{p&&!p.done&&(t=d.return)&&(yield t.call(d))}finally{if(a)throw a.error}}return r.end(),o?(u.debug(`Found ${n} files to hash.`),r.digest("hex")):(u.debug("No matches found for glob"),"")}))}})),x.register("9tvTe",(function(e,t){a(e.exports,"default",(()=>r));var i=x("yjghk"),o=x("5O4BX");let s;(e=>{e.STATE_CACHE_PRIMARY_KEY="cache-primary-key",e.CACHE_MATCHED_KEY="cache-matched-key",e.CACHE_PATHS="cache-paths"})(s||(s={}));var r=class{constructor(e,a){this.packageManager=e,this.cacheDependencyPath=a,this.CACHE_KEY_PREFIX="setup-python"}async restoreCache(){const{primaryKey:e,restoreKey:a}=await this.computeKeys();if(e.endsWith("-"))throw Error(`No file in ${process.cwd()} matched to [${this.cacheDependencyPath.split("\n").join(",")}], make sure you have checked out the target repository`);const t=await this.getCacheGlobalDirectories();o.saveState(s.CACHE_PATHS,t),o.saveState(s.STATE_CACHE_PRIMARY_KEY,e);const r=await i.restoreCache(t,e,a);this.handleMatchResult(r,e)}handleMatchResult(e,a){e?(o.saveState(s.CACHE_MATCHED_KEY,e),o.info("Cache restored from key: "+e)):o.info(this.packageManager+" cache is not found"),o.setOutput("cache-hit",e===a)}}})),x.register("cadCT",(function(e,i){a(e.exports,"default",(()=>p));var s=x("3HWNf"),r=x("5O4BX"),n=x("9tvTe"),p=class extends n.default{constructor(e,a="**/Pipfile.lock"){super("pipenv",a),this.pythonVersion=e,this.patterns=a}async getCacheGlobalDirectories(){let e;e="win32"===process.platform?".virtualenvs":".local/share/virtualenvs";const a=t.join(o.homedir(),e);return r.debug("global cache directory path is "+a),[a]}async computeKeys(){const e=await s.hashFiles(this.patterns);return{primaryKey:`${this.CACHE_KEY_PREFIX}-${process.env.RUNNER_OS}-python-${this.pythonVersion}-${this.packageManager}-${e}`,restoreKey:void 0}}}})),x.register("jYydD",(function(e,i){a(e.exports,"default",(()=>n));var o=x("3HWNf"),s=x("hZSfz"),r=x("9tvTe"),n=class extends r.default{constructor(e,a="**/poetry.lock"){super("poetry",a),this.pythonVersion=e,this.patterns=a}async getCacheGlobalDirectories(){const e=await this.getPoetryConfiguration(),a=[e["virtualenvs.path"].replace("{cache-dir}",e["cache-dir"])];return!0===e["virtualenvs.in-project"]&&a.push(t.join(process.cwd(),".venv")),a}async computeKeys(){const e=await o.hashFiles(this.patterns);return{primaryKey:`${this.CACHE_KEY_PREFIX}-${process.env.RUNNER_OS}-python-${this.pythonVersion}-${this.packageManager}-${e}`,restoreKey:void 0}}async getPoetryConfiguration(){const{stdout:e,stderr:a,exitCode:t}=await s.getExecOutput("poetry",["config","--list"]);if(t&&a)throw Error("Could not get cache folder path for poetry package manager");const i=e.trim().split("\n"),o={};for(let e of i){e=e.replace(/#.*$/,"");const[a,t]=e.split("=").map((e=>e.trim()));o[a]=JSON.parse(t)}return o}}})); -//# sourceMappingURL=actions_python.d60978cf.js.map diff --git a/dist/actions_python.d60978cf.js.map b/dist/actions_python.d60978cf.js.map deleted file mode 100644 index f09f5e70..00000000 --- a/dist/actions_python.d60978cf.js.map +++ /dev/null @@ -1 +0,0 @@ -{"mappings":"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,UAAW,YACX8rG,QAAS,YAYAC,EAAkB,CAC7B53E,cAAe,gBACfC,qBAAsB,SACtBq1E,iBAAkB,mBAClBuC,WAAY,aACZxC,iBAAkB,mBAClBF,eAAgB,iBAChBI,YAAa,cACbuC,0BAA2B,4BAC3BtC,aAAc,eACduC,OAAQ,SACRtC,KAAM,OACNE,SAAU,WACVD,kBAAmB,oBACnBE,cAAe,gBACfC,oBAAqB,sBACrBK,mBAAoB,QACpBJ,MAAO,QACP31E,WAAY,aACZ63E,uBAAwB,yBACxBC,iBAAkB,mBAClB/C,UAAW,YACXgD,gBAAiB,kBACjBC,aAAc,gBAGHC,EAAW,GACXC,EAAU,IAQVC,EAA2B,SAE3BC,EAA8B,uNAE9BC,EAAuC,CAClD,8BACA,gBACA,iBACA,eACA,OACA,aACA,cACA,oBACA,aACA,yBACA,YACA,kBACA,kBACA,gCACA,eACA,gBACA,sBACA,mBACA,mBACA,cACA,gBACA,OACA,gBACA,SACA,OACA,qBACA,mBACA,4BACA,eACA,qBACA,mBACA,+BACA,sBACA,mBACA,oBACA,aACA,gCACA,wBACA,gBACA,oBACA,WACA,oBACA,gBACA,sBACA,mBACA,+BACA,4BACA,oBACA,sBACA,0BACA,0BACA,kCACA,gCACA,8BACA,gCACA,6BACA,6BACA,2BACA,wBACA,yBACA,0BACA,4BACA,iBACA,iCACA,qBACA,gCACA,wBACA,6BACA,sCACA,4BACA,6BACA,6BACA,6BACA,wBACA,oBACA,0BACA,sBACA,gBACA,kBACA,kBACA,yBACA,6BACA,0BACA,8BACA,gBACA,0BACA,uBACA,gCACA,4BACA,kCACA,iBACA,6BACA,eACA,uBAGWC,EAA2C,CACtD,OACA,aACA,OACA,OACA,OACA,OACA,OACA,KACA,KACA,MACA,KACA,MACA,KACA,MACA,KACA,KACA,KACA,UACA,SACA,SACA,SACA,UACA,UACA,gBACA,YACA,eACA,MACA,QACA,MACA,MACA,QACA,MACA,YAGWC,EAAyC,qEC7GhD,SAAUC,EAAc14G,GAC5B,MAAM24G,EAAY9vG,EAAAmM,WA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","sources":["src/python/actions_python.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/find-python.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/utils.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/cache.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/cacheUtils.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/glob.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-globber.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-glob-options-helper.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-pattern-helper.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-path-helper.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-match-kind.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-pattern.ts","node_modules/.pnpm/minimatch@3.1.2/node_modules/minimatch/minimatch.js","node_modules/.pnpm/brace-expansion@1.1.11/node_modules/brace-expansion/index.js","node_modules/.pnpm/concat-map@0.0.1/node_modules/concat-map/index.js","node_modules/.pnpm/balanced-match@1.0.2/node_modules/balanced-match/index.js","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-path.ts","node_modules/.pnpm/@actions+glob@0.1.2/node_modules/@actions/glob/src/internal-search-state.ts","node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/index.js","node_modules/.pnpm/uuid@3.4.0/node_modules/uuid/v1.js","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/constants.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/cacheHttpClient.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/downloadUtils.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/Clients.ts","node_modules/.pnpm/@azure+core-asynciterator-polyfill@1.0.2/node_modules/@azure/core-asynciterator-polyfill/src/index.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/nodeFetchHttpClient.ts","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/cookie.js","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/pubsuffix-psl.js","node_modules/.pnpm/psl@1.8.0/node_modules/psl/index.js","node_modules/.pnpm/psl@1.8.0/node_modules/psl/data/rules.json","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/store.js","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/memstore.js","node_modules/.pnpm/universalify@0.1.2/node_modules/universalify/index.js","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/permuteDomain.js","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/pathMatch.js","node_modules/.pnpm/tough-cookie@4.0.0/node_modules/tough-cookie/lib/version.js","node_modules/.pnpm/@azure+abort-controller@1.0.4/node_modules/@azure/abort-controller/src/AbortController.ts","node_modules/.pnpm/tslib@2.4.0/node_modules/tslib/tslib.es6.js","node_modules/.pnpm/@azure+abort-controller@1.0.4/node_modules/@azure/abort-controller/src/AbortSignal.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/httpHeaders.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/proxyAgent.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/url.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/utils.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/constants.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/serializer.common.ts","node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/v4.js","node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/rng.js","node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/stringify.js","node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/validate.js","node_modules/.pnpm/uuid@8.3.2/node_modules/uuid/dist/esm-node/regex.js","node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/form_data.js","node_modules/.pnpm/combined-stream@1.0.8/node_modules/combined-stream/lib/combined_stream.js","node_modules/.pnpm/delayed-stream@1.0.0/node_modules/delayed-stream/lib/delayed_stream.js","node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js","node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js","node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/index.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/parallel.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/iterate.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/async.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/defer.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/abort.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/state.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/terminator.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serial.js","node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serialOrdered.js","node_modules/.pnpm/form-data@4.0.0/node_modules/form-data/lib/populate.js","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/restError.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/sanitizer.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/inspect.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/log.ts","node_modules/.pnpm/@azure+logger@1.0.3/node_modules/@azure/logger/src/index.ts","node_modules/.pnpm/@azure+logger@1.0.3/node_modules/@azure/logger/src/debug.ts","node_modules/.pnpm/@azure+logger@1.0.3/node_modules/@azure/logger/src/log.ts","node_modules/.pnpm/node-fetch@2.6.7/node_modules/node-fetch/lib/index.mjs","node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/public-api.js","node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL.js","node_modules/.pnpm/webidl-conversions@3.0.1/node_modules/webidl-conversions/lib/index.js","node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/utils.js","node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/URL-impl.js","node_modules/.pnpm/whatwg-url@5.0.0/node_modules/whatwg-url/lib/url-state-machine.js","node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/index.js","node_modules/.pnpm/tr46@0.0.3/node_modules/tr46/lib/mappingTable.json","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/operationOptions.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/serviceClient.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/serializer.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/base64.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/deserializationPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/requestPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/httpPipelineLogLevel.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/xml.ts","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/xml2js.js","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/defaults.js","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/builder.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/index.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/Utility.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDOMImplementation.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDocument.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDOMStringList.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLNode.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLElement.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/NodeType.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLAttribute.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLCData.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLCharacterData.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLComment.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDeclaration.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDocType.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDTDAttList.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDTDEntity.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDTDElement.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDTDNotation.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLRaw.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLText.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDummy.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLNodeList.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/DocumentPosition.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLStringifier.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLStringWriter.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLWriterBase.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/WriterState.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLDocumentCB.js","node_modules/.pnpm/xmlbuilder@11.0.1/node_modules/xmlbuilder/lib/XMLStreamWriter.js","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/parser.js","node_modules/.pnpm/sax@1.2.4/node_modules/sax/lib/sax.js","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/bom.js","node_modules/.pnpm/xml2js@0.4.23/node_modules/xml2js/lib/processors.js","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/keepAlivePolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/redirectPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/exponentialRetryPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/exponentialBackoffStrategy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/delay.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/typeguards.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/logPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/operationParameter.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/operationSpec.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/webResource.ts","node_modules/.pnpm/@azure+core-auth@1.3.2/node_modules/@azure/core-auth/src/tokenCredential.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/userAgentPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/msRestUserAgentPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/queryCollectionFormat.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/bearerTokenAuthenticationPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/disableResponseDecompressionPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/generateClientRequestIdPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/httpClientCache.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/ndJsonPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/proxyPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/rpRegistrationPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/signingPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/systemErrorRetryPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/throttlingRetryPolicy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/util/throttlingRetryStrategy.ts","node_modules/.pnpm/@azure+core-http@2.2.4/node_modules/@azure/core-http/src/policies/tracingPolicy.ts","node_modules/.pnpm/@azure+core-tracing@1.0.0-preview.13/node_modules/@azure/core-tracing/src/createSpan.ts","node_modules/.pnpm/@azure+core-tracing@1.0.0-preview.13/node_modules/@azure/core-tracing/src/interfaces.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/index.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/api/context.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/context/NoopContextManager.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/context/context.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/internal/global-utils.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/platform/index.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/platform/node/index.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/platform/node/globalThis.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/version.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/internal/semver.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/api/diag.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/diag/ComponentLogger.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/diag/internal/logLevelLogger.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/diag/types.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/api/trace.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/ProxyTracerProvider.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/ProxyTracer.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/NoopTracer.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/context-utils.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/NonRecordingSpan.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/invalid-span-constants.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/trace_flags.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/spancontext-utils.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/NoopTracerProvider.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/api/propagation.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/propagation/NoopTextMapPropagator.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/propagation/TextMapPropagator.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/baggage/context-helpers.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/baggage/utils.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/baggage/internal/baggage-impl.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/baggage/internal/symbol.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/diag/index.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/SamplingResult.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/span_kind.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/status.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/internal/utils.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/internal/tracestate-impl.ts","node_modules/.pnpm/@opentelemetry+api@1.1.0/node_modules/@opentelemetry/api/src/trace/internal/tracestate-validators.ts","node_modules/.pnpm/@azure+core-tracing@1.0.0-preview.13/node_modules/@azure/core-tracing/src/utils/traceParentHeader.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/BlobDownloadResponse.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/RetriableReadableStream.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/BlobQueryResponse.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/BlobQuickQueryStream.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/AvroReader.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/AvroConstants.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/utils/utils.common.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/AvroParser.ts","node_modules/.pnpm/@azure+core-paging@1.2.1/node_modules/@azure/core-paging/src/index.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/AvroReadableFromStream.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-internal-avro/src/AvroReadable.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/credentials/AnonymousCredential.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/AnonymousCredentialPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/CredentialPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/credentials/Credential.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/credentials/StorageSharedKeyCredential.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/StorageSharedKeyCredentialPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/constants.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/utils.common.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/operations/container.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/models/mappers.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/models/parameters.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/operations/blob.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/operations/pageBlob.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/operations/appendBlob.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/operations/blockBlob.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/models.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/PageBlobRangeResponse.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/Pipeline.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/log.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/StorageBrowserPolicyFactory.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/StorageBrowserPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/StorageRetryPolicyFactory.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/StorageRetryPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/TelemetryPolicyFactory.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/TelemetryPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/cache.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/policies/StorageBearerTokenChallengeAuthenticationPolicy.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts","node_modules/.pnpm/@azure+core-lro@2.2.4/node_modules/@azure/core-lro/src/poller.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/Range.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/StorageClient.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/generated/src/storageClientContext.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/Batch.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-common/src/BufferScheduler.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-common/src/PooledBuffer.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-common/src/BuffersStream.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/tracing.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/utils/utils.node.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/sas/BlobSASSignatureValues.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/sas/BlobSASPermissions.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/sas/ContainerSASPermissions.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/credentials/UserDelegationKeyCredential.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/sas/SasIPRange.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/sas/SASQueryParameters.ts","node_modules/.pnpm/@azure+storage-blob@12.9.0/node_modules/@azure/storage-blob/src/BlobLeaseClient.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/requestUtils.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/options.ts","node_modules/.pnpm/@actions+cache@2.0.2/node_modules/@actions/cache/src/internal/tar.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/install-python.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/find-pypy.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/install-pypy.ts","src/python/actions_cache.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/cache-distributions/cache-factory.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/cache-distributions/pip-cache.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/glob.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-globber.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-glob-options-helper.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-pattern-helper.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-path-helper.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-match-kind.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-pattern.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-path.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-search-state.ts","node_modules/.pnpm/@actions+glob@0.2.1/node_modules/@actions/glob/src/internal-hash-files.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/cache-distributions/cache-distributor.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/cache-distributions/pipenv-cache.ts","node_modules/.pnpm/github.com+actions+setup-python@98f2ad02fd48d057ee3b4d4f66525b231c3e52b6/node_modules/setup-python/src/cache-distributions/poetry-cache.ts"],"sourcesContent":["import { useCpythonVersion } from \"setup-python/src/find-python\"\nimport { findPyPyVersion } from \"setup-python/src/find-pypy\"\nimport { existsSync } from \"fs\"\nimport { info, warning } from \"../utils/io/io\"\nimport { debug } from \"@actions/core\"\nimport path from \"path\"\nimport { isGitHubCI } from \"../utils/env/isci\"\nimport { cacheDependencies } from \"./actions_cache\"\n\nfunction isPyPyVersion(versionSpec: string) {\n return versionSpec.startsWith(\"pypy-\")\n}\n\nexport async function setupActionsPython(version: string, _setupDir: string, arch: string) {\n if (process.env.AGENT_TOOLSDIRECTORY?.trim()) {\n debug(`Python is expected to be installed into AGENT_TOOLSDIRECTORY=${process.env.AGENT_TOOLSDIRECTORY}`)\n process.env.RUNNER_TOOL_CACHE = process.env.AGENT_TOOLSDIRECTORY\n } else {\n debug(`Python is expected to be installed into RUNNER_TOOL_CACHE==${process.env.RUNNER_TOOL_CACHE}`)\n }\n if (version) {\n let pythonVersion: string\n if (isPyPyVersion(version)) {\n const installed = await findPyPyVersion(version, arch)\n pythonVersion = `${installed.resolvedPyPyVersion}-${installed.resolvedPythonVersion}`\n info(`Successfully setup PyPy ${installed.resolvedPyPyVersion} with Python (${installed.resolvedPythonVersion})`)\n } else {\n const installed = await useCpythonVersion(version, arch)\n pythonVersion = installed.version\n info(`Successfully setup ${installed.impl} (${pythonVersion})`)\n }\n\n const cache = \"pip\" // core.getInput(\"cache\") // package manager used for caching\n\n await cacheDependencies(cache, pythonVersion)\n }\n\n if (isGitHubCI()) {\n addPythonLoggingMatcher()\n }\n\n return undefined\n}\n\nfunction addPythonLoggingMatcher() {\n const matcherPath = path.join(__dirname, \"python_matcher.json\")\n if (!existsSync(matcherPath)) {\n return warning(\"the python_matcher.json file does not exist in the same folder as setup_cpp.js\")\n }\n info(`::add-matcher::${matcherPath}`)\n}\n","import * as os from 'os';\nimport * as path from 'path';\nimport {IS_WINDOWS, IS_LINUX} from './utils';\n\nimport * as semver from 'semver';\n\nimport * as installer from './install-python';\n\nimport * as core from '@actions/core';\nimport * as tc from '@actions/tool-cache';\n\n// Python has \"scripts\" or \"bin\" directories where command-line tools that come with packages are installed.\n// This is where pip is, along with anything that pip installs.\n// There is a seperate directory for `pip install --user`.\n//\n// For reference, these directories are as follows:\n// macOS / Linux:\n// /bin (by default /usr/local/bin, but not on hosted agents -- see the `else`)\n// (--user) ~/.local/bin\n// Windows:\n// \\Scripts\n// (--user) %APPDATA%\\Python\\PythonXY\\Scripts\n// See https://docs.python.org/3/library/sysconfig.html\n\nfunction binDir(installDir: string): string {\n if (IS_WINDOWS) {\n return path.join(installDir, 'Scripts');\n } else {\n return path.join(installDir, 'bin');\n }\n}\n\nexport async function useCpythonVersion(\n version: string,\n architecture: string\n): Promise {\n const desugaredVersionSpec = desugarDevVersion(version);\n const semanticVersionSpec = pythonVersionToSemantic(desugaredVersionSpec);\n core.debug(`Semantic version spec of ${version} is ${semanticVersionSpec}`);\n\n let installDir: string | null = tc.find(\n 'Python',\n semanticVersionSpec,\n architecture\n );\n if (!installDir) {\n core.info(\n `Version ${semanticVersionSpec} was not found in the local cache`\n );\n const foundRelease = await installer.findReleaseFromManifest(\n semanticVersionSpec,\n architecture\n );\n\n if (foundRelease && foundRelease.files && foundRelease.files.length > 0) {\n core.info(`Version ${semanticVersionSpec} is available for downloading`);\n await installer.installCpythonFromRelease(foundRelease);\n\n installDir = tc.find('Python', semanticVersionSpec, architecture);\n }\n }\n\n if (!installDir) {\n throw new Error(\n [\n `Version ${version} with arch ${architecture} not found`,\n `The list of all available versions can be found here: ${installer.MANIFEST_URL}`\n ].join(os.EOL)\n );\n }\n\n core.exportVariable('pythonLocation', installDir);\n\n if (IS_LINUX) {\n const libPath = process.env.LD_LIBRARY_PATH\n ? `:${process.env.LD_LIBRARY_PATH}`\n : '';\n const pyLibPath = path.join(installDir, 'lib');\n\n if (!libPath.split(':').includes(pyLibPath)) {\n core.exportVariable('LD_LIBRARY_PATH', pyLibPath + libPath);\n }\n }\n\n core.addPath(installDir);\n core.addPath(binDir(installDir));\n\n if (IS_WINDOWS) {\n // Add --user directory\n // `installDir` from tool cache should look like $RUNNER_TOOL_CACHE/Python//x64/\n // So if `findLocalTool` succeeded above, we must have a conformant `installDir`\n const version = path.basename(path.dirname(installDir));\n const major = semver.major(version);\n const minor = semver.minor(version);\n\n const userScriptsDir = path.join(\n process.env['APPDATA'] || '',\n 'Python',\n `Python${major}${minor}`,\n 'Scripts'\n );\n core.addPath(userScriptsDir);\n }\n // On Linux and macOS, pip will create the --user directory and add it to PATH as needed.\n\n const installed = versionFromPath(installDir);\n core.setOutput('python-version', installed);\n\n return {impl: 'CPython', version: installed};\n}\n\n/** Convert versions like `3.8-dev` to a version like `>= 3.8.0-a0`. */\nfunction desugarDevVersion(versionSpec: string) {\n if (versionSpec.endsWith('-dev')) {\n const versionRoot = versionSpec.slice(0, -'-dev'.length);\n return `>= ${versionRoot}.0-a0`;\n } else {\n return versionSpec;\n }\n}\n\n/** Extracts python version from install path from hosted tool cache as described in README.md */\nfunction versionFromPath(installDir: string) {\n const parts = installDir.split(path.sep);\n const idx = parts.findIndex(part => part === 'PyPy' || part === 'Python');\n\n return parts[idx + 1] || '';\n}\n\ninterface InstalledVersion {\n impl: string;\n version: string;\n}\n\n/**\n * Python's prelease versions look like `3.7.0b2`.\n * This is the one part of Python versioning that does not look like semantic versioning, which specifies `3.7.0-b2`.\n * If the version spec contains prerelease versions, we need to convert them to the semantic version equivalent.\n */\nexport function pythonVersionToSemantic(versionSpec: string) {\n const prereleaseVersion = /(\\d+\\.\\d+\\.\\d+)((?:a|b|rc)\\d*)/g;\n return versionSpec.replace(prereleaseVersion, '$1-$2');\n}\n","import * as cache from '@actions/cache';\nimport * as core from '@actions/core';\nimport fs from 'fs';\nimport * as path from 'path';\nimport * as semver from 'semver';\n\nexport const IS_WINDOWS = process.platform === 'win32';\nexport const IS_LINUX = process.platform === 'linux';\nexport const WINDOWS_ARCHS = ['x86', 'x64'];\nexport const WINDOWS_PLATFORMS = ['win32', 'win64'];\nconst PYPY_VERSION_FILE = 'PYPY_VERSION';\n\nexport interface IPyPyManifestAsset {\n filename: string;\n arch: string;\n platform: string;\n download_url: string;\n}\n\nexport interface IPyPyManifestRelease {\n pypy_version: string;\n python_version: string;\n stable: boolean;\n latest_pypy: boolean;\n files: IPyPyManifestAsset[];\n}\n\n/** create Symlinks for downloaded PyPy\n * It should be executed only for downloaded versions in runtime, because\n * toolcache versions have this setup.\n */\nexport function createSymlinkInFolder(\n folderPath: string,\n sourceName: string,\n targetName: string,\n setExecutable = false\n) {\n const sourcePath = path.join(folderPath, sourceName);\n const targetPath = path.join(folderPath, targetName);\n if (fs.existsSync(targetPath)) {\n return;\n }\n\n fs.symlinkSync(sourcePath, targetPath);\n if (!IS_WINDOWS && setExecutable) {\n fs.chmodSync(targetPath, '755');\n }\n}\n\nexport function validateVersion(version: string) {\n return isNightlyKeyword(version) || Boolean(semver.validRange(version));\n}\n\nexport function isNightlyKeyword(pypyVersion: string) {\n return pypyVersion === 'nightly';\n}\n\nexport function getPyPyVersionFromPath(installDir: string) {\n return path.basename(path.dirname(installDir));\n}\n\n/**\n * In tool-cache, we put PyPy to '/PyPy//x64'\n * There is no easy way to determine what PyPy version is located in specific folder\n * 'pypy --version' is not reliable enough since it is not set properly for preview versions\n * \"7.3.3rc1\" is marked as '7.3.3' in 'pypy --version'\n * so we put PYPY_VERSION file to PyPy directory when install it to VM and read it when we need to know version\n * PYPY_VERSION contains exact version from 'versions.json'\n */\nexport function readExactPyPyVersionFile(installDir: string) {\n let pypyVersion = '';\n let fileVersion = path.join(installDir, PYPY_VERSION_FILE);\n if (fs.existsSync(fileVersion)) {\n pypyVersion = fs.readFileSync(fileVersion).toString();\n }\n\n return pypyVersion;\n}\n\nexport function writeExactPyPyVersionFile(\n installDir: string,\n resolvedPyPyVersion: string\n) {\n const pypyFilePath = path.join(installDir, PYPY_VERSION_FILE);\n fs.writeFileSync(pypyFilePath, resolvedPyPyVersion);\n}\n\n/**\n * Python version should be specified explicitly like \"x.y\" (2.7, 3.6, 3.7)\n * \"3.x\" or \"3\" are not supported\n * because it could cause ambiguity when both PyPy version and Python version are not precise\n */\nexport function validatePythonVersionFormatForPyPy(version: string) {\n const re = /^\\d+\\.\\d+$/;\n return re.test(version);\n}\n\nexport function isGhes(): boolean {\n const ghUrl = new URL(\n process.env['GITHUB_SERVER_URL'] || 'https://github.com'\n );\n return ghUrl.hostname.toUpperCase() !== 'GITHUB.COM';\n}\n\nexport function isCacheFeatureAvailable(): boolean {\n if (!cache.isFeatureAvailable()) {\n if (isGhes()) {\n throw new Error(\n 'Caching is only supported on GHES version >= 3.5. If you are on a version >= 3.5, please check with your GHES admin if the Actions cache service is enabled or not.'\n );\n } else {\n core.warning(\n 'The runner was not able to contact the cache service. Caching will be skipped'\n );\n }\n\n return false;\n }\n\n return true;\n}\n",null,null,null,null,null,null,null,null,null,"module.exports = minimatch\nminimatch.Minimatch = Minimatch\n\nvar path = (function () { try { return require('path') } catch (e) {}}()) || {\n sep: '/'\n}\nminimatch.sep = path.sep\n\nvar GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}\nvar expand = require('brace-expansion')\n\nvar plTypes = {\n '!': { open: '(?:(?!(?:', close: '))[^/]*?)'},\n '?': { open: '(?:', close: ')?' },\n '+': { open: '(?:', close: ')+' },\n '*': { open: '(?:', close: ')*' },\n '@': { open: '(?:', close: ')' }\n}\n\n// any single thing other than /\n// don't need to escape / when using new RegExp()\nvar qmark = '[^/]'\n\n// * => any number of characters\nvar star = qmark + '*?'\n\n// ** when dots are allowed. Anything goes, except .. and .\n// not (^ or / followed by one or two dots followed by $ or /),\n// followed by anything, any number of times.\nvar twoStarDot = '(?:(?!(?:\\\\\\/|^)(?:\\\\.{1,2})($|\\\\\\/)).)*?'\n\n// not a ^ or / followed by a dot,\n// followed by anything, any number of times.\nvar twoStarNoDot = '(?:(?!(?:\\\\\\/|^)\\\\.).)*?'\n\n// characters that need to be escaped in RegExp.\nvar reSpecials = charSet('().*{}+?[]^$\\\\!')\n\n// \"abc\" -> { a:true, b:true, c:true }\nfunction charSet (s) {\n return s.split('').reduce(function (set, c) {\n set[c] = true\n return set\n }, {})\n}\n\n// normalizes slashes.\nvar slashSplit = /\\/+/\n\nminimatch.filter = filter\nfunction filter (pattern, options) {\n options = options || {}\n return function (p, i, list) {\n return minimatch(p, pattern, options)\n }\n}\n\nfunction ext (a, b) {\n b = b || {}\n var t = {}\n Object.keys(a).forEach(function (k) {\n t[k] = a[k]\n })\n Object.keys(b).forEach(function (k) {\n t[k] = b[k]\n })\n return t\n}\n\nminimatch.defaults = function (def) {\n if (!def || typeof def !== 'object' || !Object.keys(def).length) {\n return minimatch\n }\n\n var orig = minimatch\n\n var m = function minimatch (p, pattern, options) {\n return orig(p, pattern, ext(def, options))\n }\n\n m.Minimatch = function Minimatch (pattern, options) {\n return new orig.Minimatch(pattern, ext(def, options))\n }\n m.Minimatch.defaults = function defaults (options) {\n return orig.defaults(ext(def, options)).Minimatch\n }\n\n m.filter = function filter (pattern, options) {\n return orig.filter(pattern, ext(def, options))\n }\n\n m.defaults = function defaults (options) {\n return orig.defaults(ext(def, options))\n }\n\n m.makeRe = function makeRe (pattern, options) {\n return orig.makeRe(pattern, ext(def, options))\n }\n\n m.braceExpand = function braceExpand (pattern, options) {\n return orig.braceExpand(pattern, ext(def, options))\n }\n\n m.match = function (list, pattern, options) {\n return orig.match(list, pattern, ext(def, options))\n }\n\n return m\n}\n\nMinimatch.defaults = function (def) {\n return minimatch.defaults(def).Minimatch\n}\n\nfunction minimatch (p, pattern, options) {\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n // shortcut: comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n return false\n }\n\n return new Minimatch(pattern, options).match(p)\n}\n\nfunction Minimatch (pattern, options) {\n if (!(this instanceof Minimatch)) {\n return new Minimatch(pattern, options)\n }\n\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n pattern = pattern.trim()\n\n // windows support: need to use /, not \\\n if (!options.allowWindowsEscape && path.sep !== '/') {\n pattern = pattern.split(path.sep).join('/')\n }\n\n this.options = options\n this.set = []\n this.pattern = pattern\n this.regexp = null\n this.negate = false\n this.comment = false\n this.empty = false\n this.partial = !!options.partial\n\n // make the set of regexps etc.\n this.make()\n}\n\nMinimatch.prototype.debug = function () {}\n\nMinimatch.prototype.make = make\nfunction make () {\n var pattern = this.pattern\n var options = this.options\n\n // empty patterns and comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n this.comment = true\n return\n }\n if (!pattern) {\n this.empty = true\n return\n }\n\n // step 1: figure out negation, etc.\n this.parseNegate()\n\n // step 2: expand braces\n var set = this.globSet = this.braceExpand()\n\n if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) }\n\n this.debug(this.pattern, set)\n\n // step 3: now we have a set, so turn each one into a series of path-portion\n // matching patterns.\n // These will be regexps, except in the case of \"**\", which is\n // set to the GLOBSTAR object for globstar behavior,\n // and will not contain any / characters\n set = this.globParts = set.map(function (s) {\n return s.split(slashSplit)\n })\n\n this.debug(this.pattern, set)\n\n // glob --> regexps\n set = set.map(function (s, si, set) {\n return s.map(this.parse, this)\n }, this)\n\n this.debug(this.pattern, set)\n\n // filter out everything that didn't compile properly.\n set = set.filter(function (s) {\n return s.indexOf(false) === -1\n })\n\n this.debug(this.pattern, set)\n\n this.set = set\n}\n\nMinimatch.prototype.parseNegate = parseNegate\nfunction parseNegate () {\n var pattern = this.pattern\n var negate = false\n var options = this.options\n var negateOffset = 0\n\n if (options.nonegate) return\n\n for (var i = 0, l = pattern.length\n ; i < l && pattern.charAt(i) === '!'\n ; i++) {\n negate = !negate\n negateOffset++\n }\n\n if (negateOffset) this.pattern = pattern.substr(negateOffset)\n this.negate = negate\n}\n\n// Brace expansion:\n// a{b,c}d -> abd acd\n// a{b,}c -> abc ac\n// a{0..3}d -> a0d a1d a2d a3d\n// a{b,c{d,e}f}g -> abg acdfg acefg\n// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg\n//\n// Invalid sets are not expanded.\n// a{2..}b -> a{2..}b\n// a{b}c -> a{b}c\nminimatch.braceExpand = function (pattern, options) {\n return braceExpand(pattern, options)\n}\n\nMinimatch.prototype.braceExpand = braceExpand\n\nfunction braceExpand (pattern, options) {\n if (!options) {\n if (this instanceof Minimatch) {\n options = this.options\n } else {\n options = {}\n }\n }\n\n pattern = typeof pattern === 'undefined'\n ? this.pattern : pattern\n\n assertValidPattern(pattern)\n\n // Thanks to Yeting Li for\n // improving this regexp to avoid a ReDOS vulnerability.\n if (options.nobrace || !/\\{(?:(?!\\{).)*\\}/.test(pattern)) {\n // shortcut. no need to expand.\n return [pattern]\n }\n\n return expand(pattern)\n}\n\nvar MAX_PATTERN_LENGTH = 1024 * 64\nvar assertValidPattern = function (pattern) {\n if (typeof pattern !== 'string') {\n throw new TypeError('invalid pattern')\n }\n\n if (pattern.length > MAX_PATTERN_LENGTH) {\n throw new TypeError('pattern is too long')\n }\n}\n\n// parse a component of the expanded set.\n// At this point, no pattern may contain \"/\" in it\n// so we're going to return a 2d array, where each entry is the full\n// pattern, split on '/', and then turned into a regular expression.\n// A regexp is made at the end which joins each array with an\n// escaped /, and another full one which joins each regexp with |.\n//\n// Following the lead of Bash 4.1, note that \"**\" only has special meaning\n// when it is the *only* thing in a path portion. Otherwise, any series\n// of * is equivalent to a single *. Globstar behavior is enabled by\n// default, and can be disabled by setting options.noglobstar.\nMinimatch.prototype.parse = parse\nvar SUBPARSE = {}\nfunction parse (pattern, isSub) {\n assertValidPattern(pattern)\n\n var options = this.options\n\n // shortcuts\n if (pattern === '**') {\n if (!options.noglobstar)\n return GLOBSTAR\n else\n pattern = '*'\n }\n if (pattern === '') return ''\n\n var re = ''\n var hasMagic = !!options.nocase\n var escaping = false\n // ? => one single character\n var patternListStack = []\n var negativeLists = []\n var stateChar\n var inClass = false\n var reClassStart = -1\n var classStart = -1\n // . and .. never match anything that doesn't start with .,\n // even when options.dot is set.\n var patternStart = pattern.charAt(0) === '.' ? '' // anything\n // not (start or / followed by . or .. followed by / or end)\n : options.dot ? '(?!(?:^|\\\\\\/)\\\\.{1,2}(?:$|\\\\\\/))'\n : '(?!\\\\.)'\n var self = this\n\n function clearStateChar () {\n if (stateChar) {\n // we had some state-tracking character\n // that wasn't consumed by this pass.\n switch (stateChar) {\n case '*':\n re += star\n hasMagic = true\n break\n case '?':\n re += qmark\n hasMagic = true\n break\n default:\n re += '\\\\' + stateChar\n break\n }\n self.debug('clearStateChar %j %j', stateChar, re)\n stateChar = false\n }\n }\n\n for (var i = 0, len = pattern.length, c\n ; (i < len) && (c = pattern.charAt(i))\n ; i++) {\n this.debug('%s\\t%s %s %j', pattern, i, re, c)\n\n // skip over any that are escaped.\n if (escaping && reSpecials[c]) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n switch (c) {\n /* istanbul ignore next */\n case '/': {\n // completely not allowed, even escaped.\n // Should already be path-split by now.\n return false\n }\n\n case '\\\\':\n clearStateChar()\n escaping = true\n continue\n\n // the various stateChar values\n // for the \"extglob\" stuff.\n case '?':\n case '*':\n case '+':\n case '@':\n case '!':\n this.debug('%s\\t%s %s %j <-- stateChar', pattern, i, re, c)\n\n // all of those are literals inside a class, except that\n // the glob [!a] means [^a] in regexp\n if (inClass) {\n this.debug(' in class')\n if (c === '!' && i === classStart + 1) c = '^'\n re += c\n continue\n }\n\n // if we already have a stateChar, then it means\n // that there was something like ** or +? in there.\n // Handle the stateChar, then proceed with this one.\n self.debug('call clearStateChar %j', stateChar)\n clearStateChar()\n stateChar = c\n // if extglob is disabled, then +(asdf|foo) isn't a thing.\n // just clear the statechar *now*, rather than even diving into\n // the patternList stuff.\n if (options.noext) clearStateChar()\n continue\n\n case '(':\n if (inClass) {\n re += '('\n continue\n }\n\n if (!stateChar) {\n re += '\\\\('\n continue\n }\n\n patternListStack.push({\n type: stateChar,\n start: i - 1,\n reStart: re.length,\n open: plTypes[stateChar].open,\n close: plTypes[stateChar].close\n })\n // negation is (?:(?!js)[^/]*)\n re += stateChar === '!' ? '(?:(?!(?:' : '(?:'\n this.debug('plType %j %j', stateChar, re)\n stateChar = false\n continue\n\n case ')':\n if (inClass || !patternListStack.length) {\n re += '\\\\)'\n continue\n }\n\n clearStateChar()\n hasMagic = true\n var pl = patternListStack.pop()\n // negation is (?:(?!js)[^/]*)\n // The others are (?:)\n re += pl.close\n if (pl.type === '!') {\n negativeLists.push(pl)\n }\n pl.reEnd = re.length\n continue\n\n case '|':\n if (inClass || !patternListStack.length || escaping) {\n re += '\\\\|'\n escaping = false\n continue\n }\n\n clearStateChar()\n re += '|'\n continue\n\n // these are mostly the same in regexp and glob\n case '[':\n // swallow any state-tracking char before the [\n clearStateChar()\n\n if (inClass) {\n re += '\\\\' + c\n continue\n }\n\n inClass = true\n classStart = i\n reClassStart = re.length\n re += c\n continue\n\n case ']':\n // a right bracket shall lose its special\n // meaning and represent itself in\n // a bracket expression if it occurs\n // first in the list. -- POSIX.2 2.8.3.2\n if (i === classStart + 1 || !inClass) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n // handle the case where we left a class open.\n // \"[z-a]\" is valid, equivalent to \"\\[z-a\\]\"\n // split where the last [ was, make sure we don't have\n // an invalid re. if so, re-walk the contents of the\n // would-be class to re-translate any characters that\n // were passed through as-is\n // TODO: It would probably be faster to determine this\n // without a try/catch and a new RegExp, but it's tricky\n // to do safely. For now, this is safe and works.\n var cs = pattern.substring(classStart + 1, i)\n try {\n RegExp('[' + cs + ']')\n } catch (er) {\n // not a valid class!\n var sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0] + '\\\\]'\n hasMagic = hasMagic || sp[1]\n inClass = false\n continue\n }\n\n // finish up the class.\n hasMagic = true\n inClass = false\n re += c\n continue\n\n default:\n // swallow any state char that wasn't consumed\n clearStateChar()\n\n if (escaping) {\n // no need\n escaping = false\n } else if (reSpecials[c]\n && !(c === '^' && inClass)) {\n re += '\\\\'\n }\n\n re += c\n\n } // switch\n } // for\n\n // handle the case where we left a class open.\n // \"[abc\" is valid, equivalent to \"\\[abc\"\n if (inClass) {\n // split where the last [ was, and escape it\n // this is a huge pita. We now have to re-walk\n // the contents of the would-be class to re-translate\n // any characters that were passed through as-is\n cs = pattern.substr(classStart + 1)\n sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0]\n hasMagic = hasMagic || sp[1]\n }\n\n // handle the case where we had a +( thing at the *end*\n // of the pattern.\n // each pattern list stack adds 3 chars, and we need to go through\n // and escape any | chars that were passed through as-is for the regexp.\n // Go through and escape them, taking care not to double-escape any\n // | chars that were already escaped.\n for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {\n var tail = re.slice(pl.reStart + pl.open.length)\n this.debug('setting tail', re, pl)\n // maybe some even number of \\, then maybe 1 \\, followed by a |\n tail = tail.replace(/((?:\\\\{2}){0,64})(\\\\?)\\|/g, function (_, $1, $2) {\n if (!$2) {\n // the | isn't already escaped, so escape it.\n $2 = '\\\\'\n }\n\n // need to escape all those slashes *again*, without escaping the\n // one that we need for escaping the | character. As it works out,\n // escaping an even number of slashes can be done by simply repeating\n // it exactly after itself. That's why this trick works.\n //\n // I am sorry that you have to see this.\n return $1 + $1 + $2 + '|'\n })\n\n this.debug('tail=%j\\n %s', tail, tail, pl, re)\n var t = pl.type === '*' ? star\n : pl.type === '?' ? qmark\n : '\\\\' + pl.type\n\n hasMagic = true\n re = re.slice(0, pl.reStart) + t + '\\\\(' + tail\n }\n\n // handle trailing things that only matter at the very end.\n clearStateChar()\n if (escaping) {\n // trailing \\\\\n re += '\\\\\\\\'\n }\n\n // only need to apply the nodot start if the re starts with\n // something that could conceivably capture a dot\n var addPatternStart = false\n switch (re.charAt(0)) {\n case '[': case '.': case '(': addPatternStart = true\n }\n\n // Hack to work around lack of negative lookbehind in JS\n // A pattern like: *.!(x).!(y|z) needs to ensure that a name\n // like 'a.xyz.yz' doesn't match. So, the first negative\n // lookahead, has to look ALL the way ahead, to the end of\n // the pattern.\n for (var n = negativeLists.length - 1; n > -1; n--) {\n var nl = negativeLists[n]\n\n var nlBefore = re.slice(0, nl.reStart)\n var nlFirst = re.slice(nl.reStart, nl.reEnd - 8)\n var nlLast = re.slice(nl.reEnd - 8, nl.reEnd)\n var nlAfter = re.slice(nl.reEnd)\n\n nlLast += nlAfter\n\n // Handle nested stuff like *(*.js|!(*.json)), where open parens\n // mean that we should *not* include the ) in the bit that is considered\n // \"after\" the negated section.\n var openParensBefore = nlBefore.split('(').length - 1\n var cleanAfter = nlAfter\n for (i = 0; i < openParensBefore; i++) {\n cleanAfter = cleanAfter.replace(/\\)[+*?]?/, '')\n }\n nlAfter = cleanAfter\n\n var dollar = ''\n if (nlAfter === '' && isSub !== SUBPARSE) {\n dollar = '$'\n }\n var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast\n re = newRe\n }\n\n // if the re is not \"\" at this point, then we need to make sure\n // it doesn't match against an empty path part.\n // Otherwise a/* will match a/, which it should not.\n if (re !== '' && hasMagic) {\n re = '(?=.)' + re\n }\n\n if (addPatternStart) {\n re = patternStart + re\n }\n\n // parsing just a piece of a larger pattern.\n if (isSub === SUBPARSE) {\n return [re, hasMagic]\n }\n\n // skip the regexp for non-magical patterns\n // unescape anything in it, though, so that it'll be\n // an exact match against a file etc.\n if (!hasMagic) {\n return globUnescape(pattern)\n }\n\n var flags = options.nocase ? 'i' : ''\n try {\n var regExp = new RegExp('^' + re + '$', flags)\n } catch (er) /* istanbul ignore next - should be impossible */ {\n // If it was an invalid regular expression, then it can't match\n // anything. This trick looks for a character after the end of\n // the string, which is of course impossible, except in multi-line\n // mode, but it's not a /m regex.\n return new RegExp('$.')\n }\n\n regExp._glob = pattern\n regExp._src = re\n\n return regExp\n}\n\nminimatch.makeRe = function (pattern, options) {\n return new Minimatch(pattern, options || {}).makeRe()\n}\n\nMinimatch.prototype.makeRe = makeRe\nfunction makeRe () {\n if (this.regexp || this.regexp === false) return this.regexp\n\n // at this point, this.set is a 2d array of partial\n // pattern strings, or \"**\".\n //\n // It's better to use .match(). This function shouldn't\n // be used, really, but it's pretty convenient sometimes,\n // when you just want to work with a regex.\n var set = this.set\n\n if (!set.length) {\n this.regexp = false\n return this.regexp\n }\n var options = this.options\n\n var twoStar = options.noglobstar ? star\n : options.dot ? twoStarDot\n : twoStarNoDot\n var flags = options.nocase ? 'i' : ''\n\n var re = set.map(function (pattern) {\n return pattern.map(function (p) {\n return (p === GLOBSTAR) ? twoStar\n : (typeof p === 'string') ? regExpEscape(p)\n : p._src\n }).join('\\\\\\/')\n }).join('|')\n\n // must match entire pattern\n // ending in a * or ** will make it less strict.\n re = '^(?:' + re + ')$'\n\n // can match anything, as long as it's not this.\n if (this.negate) re = '^(?!' + re + ').*$'\n\n try {\n this.regexp = new RegExp(re, flags)\n } catch (ex) /* istanbul ignore next - should be impossible */ {\n this.regexp = false\n }\n return this.regexp\n}\n\nminimatch.match = function (list, pattern, options) {\n options = options || {}\n var mm = new Minimatch(pattern, options)\n list = list.filter(function (f) {\n return mm.match(f)\n })\n if (mm.options.nonull && !list.length) {\n list.push(pattern)\n }\n return list\n}\n\nMinimatch.prototype.match = function match (f, partial) {\n if (typeof partial === 'undefined') partial = this.partial\n this.debug('match', f, this.pattern)\n // short-circuit in the case of busted things.\n // comments, etc.\n if (this.comment) return false\n if (this.empty) return f === ''\n\n if (f === '/' && partial) return true\n\n var options = this.options\n\n // windows: need to use /, not \\\n if (path.sep !== '/') {\n f = f.split(path.sep).join('/')\n }\n\n // treat the test path as a set of pathparts.\n f = f.split(slashSplit)\n this.debug(this.pattern, 'split', f)\n\n // just ONE of the pattern sets in this.set needs to match\n // in order for it to be valid. If negating, then just one\n // match means that we have failed.\n // Either way, return on the first hit.\n\n var set = this.set\n this.debug(this.pattern, 'set', set)\n\n // Find the basename of the path by looking for the last non-empty segment\n var filename\n var i\n for (i = f.length - 1; i >= 0; i--) {\n filename = f[i]\n if (filename) break\n }\n\n for (i = 0; i < set.length; i++) {\n var pattern = set[i]\n var file = f\n if (options.matchBase && pattern.length === 1) {\n file = [filename]\n }\n var hit = this.matchOne(file, pattern, partial)\n if (hit) {\n if (options.flipNegate) return true\n return !this.negate\n }\n }\n\n // didn't get any hits. this is success if it's a negative\n // pattern, failure otherwise.\n if (options.flipNegate) return false\n return this.negate\n}\n\n// set partial to true to test if, for example,\n// \"/a/b\" matches the start of \"/*/b/*/d\"\n// Partial means, if you run out of file before you run\n// out of pattern, then that's fine, as long as all\n// the parts match.\nMinimatch.prototype.matchOne = function (file, pattern, partial) {\n var options = this.options\n\n this.debug('matchOne',\n { 'this': this, file: file, pattern: pattern })\n\n this.debug('matchOne', file.length, pattern.length)\n\n for (var fi = 0,\n pi = 0,\n fl = file.length,\n pl = pattern.length\n ; (fi < fl) && (pi < pl)\n ; fi++, pi++) {\n this.debug('matchOne loop')\n var p = pattern[pi]\n var f = file[fi]\n\n this.debug(pattern, p, f)\n\n // should be impossible.\n // some invalid regexp stuff in the set.\n /* istanbul ignore if */\n if (p === false) return false\n\n if (p === GLOBSTAR) {\n this.debug('GLOBSTAR', [pattern, p, f])\n\n // \"**\"\n // a/**/b/**/c would match the following:\n // a/b/x/y/z/c\n // a/x/y/z/b/c\n // a/b/x/b/x/c\n // a/b/c\n // To do this, take the rest of the pattern after\n // the **, and see if it would match the file remainder.\n // If so, return success.\n // If not, the ** \"swallows\" a segment, and try again.\n // This is recursively awful.\n //\n // a/**/b/**/c matching a/b/x/y/z/c\n // - a matches a\n // - doublestar\n // - matchOne(b/x/y/z/c, b/**/c)\n // - b matches b\n // - doublestar\n // - matchOne(x/y/z/c, c) -> no\n // - matchOne(y/z/c, c) -> no\n // - matchOne(z/c, c) -> no\n // - matchOne(c, c) yes, hit\n var fr = fi\n var pr = pi + 1\n if (pr === pl) {\n this.debug('** at the end')\n // a ** at the end will just swallow the rest.\n // We have found a match.\n // however, it will not swallow /.x, unless\n // options.dot is set.\n // . and .. are *never* matched by **, for explosively\n // exponential reasons.\n for (; fi < fl; fi++) {\n if (file[fi] === '.' || file[fi] === '..' ||\n (!options.dot && file[fi].charAt(0) === '.')) return false\n }\n return true\n }\n\n // ok, let's see if we can swallow whatever we can.\n while (fr < fl) {\n var swallowee = file[fr]\n\n this.debug('\\nglobstar while', file, fr, pattern, pr, swallowee)\n\n // XXX remove this slice. Just pass the start index.\n if (this.matchOne(file.slice(fr), pattern.slice(pr), partial)) {\n this.debug('globstar found match!', fr, fl, swallowee)\n // found a match.\n return true\n } else {\n // can't swallow \".\" or \"..\" ever.\n // can only swallow \".foo\" when explicitly asked.\n if (swallowee === '.' || swallowee === '..' ||\n (!options.dot && swallowee.charAt(0) === '.')) {\n this.debug('dot detected!', file, fr, pattern, pr)\n break\n }\n\n // ** swallows a segment, and continue.\n this.debug('globstar swallow a segment, and continue')\n fr++\n }\n }\n\n // no match was found.\n // However, in partial mode, we can't say this is necessarily over.\n // If there's more *pattern* left, then\n /* istanbul ignore if */\n if (partial) {\n // ran out of file\n this.debug('\\n>>> no match, partial?', file, fr, pattern, pr)\n if (fr === fl) return true\n }\n return false\n }\n\n // something other than **\n // non-magic patterns just have to match exactly\n // patterns with magic have been turned into regexps.\n var hit\n if (typeof p === 'string') {\n hit = f === p\n this.debug('string match', p, f, hit)\n } else {\n hit = f.match(p)\n this.debug('pattern match', p, f, hit)\n }\n\n if (!hit) return false\n }\n\n // Note: ending in / means that we'll get a final \"\"\n // at the end of the pattern. This can only match a\n // corresponding \"\" at the end of the file.\n // If the file ends in /, then it can only match a\n // a pattern that ends in /, unless the pattern just\n // doesn't have any more for it. But, a/b/ should *not*\n // match \"a/b/*\", even though \"\" matches against the\n // [^/]*? pattern, except in partial mode, where it might\n // simply not be reached yet.\n // However, a/b/ should still satisfy a/*\n\n // now either we fell off the end of the pattern, or we're done.\n if (fi === fl && pi === pl) {\n // ran out of pattern and filename at the same time.\n // an exact hit!\n return true\n } else if (fi === fl) {\n // ran out of file, but still had pattern left.\n // this is ok if we're doing the match as part of\n // a glob fs traversal.\n return partial\n } else /* istanbul ignore else */ if (pi === pl) {\n // ran out of pattern, still have file left.\n // this is only acceptable if we're on the very last\n // empty segment of a file with a trailing slash.\n // a/* should match a/b/\n return (fi === fl - 1) && (file[fi] === '')\n }\n\n // should be unreachable.\n /* istanbul ignore next */\n throw new Error('wtf?')\n}\n\n// replace stuff like \\* with *\nfunction globUnescape (s) {\n return s.replace(/\\\\(.)/g, '$1')\n}\n\nfunction regExpEscape (s) {\n return s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n}\n","var concatMap = require('concat-map');\nvar balanced = require('balanced-match');\n\nmodule.exports = expandTop;\n\nvar escSlash = '\\0SLASH'+Math.random()+'\\0';\nvar escOpen = '\\0OPEN'+Math.random()+'\\0';\nvar escClose = '\\0CLOSE'+Math.random()+'\\0';\nvar escComma = '\\0COMMA'+Math.random()+'\\0';\nvar escPeriod = '\\0PERIOD'+Math.random()+'\\0';\n\nfunction numeric(str) {\n return parseInt(str, 10) == str\n ? parseInt(str, 10)\n : str.charCodeAt(0);\n}\n\nfunction escapeBraces(str) {\n return str.split('\\\\\\\\').join(escSlash)\n .split('\\\\{').join(escOpen)\n .split('\\\\}').join(escClose)\n .split('\\\\,').join(escComma)\n .split('\\\\.').join(escPeriod);\n}\n\nfunction unescapeBraces(str) {\n return str.split(escSlash).join('\\\\')\n .split(escOpen).join('{')\n .split(escClose).join('}')\n .split(escComma).join(',')\n .split(escPeriod).join('.');\n}\n\n\n// Basically just str.split(\",\"), but handling cases\n// where we have nested braced sections, which should be\n// treated as individual members, like {a,{b,c},d}\nfunction parseCommaParts(str) {\n if (!str)\n return [''];\n\n var parts = [];\n var m = balanced('{', '}', str);\n\n if (!m)\n return str.split(',');\n\n var pre = m.pre;\n var body = m.body;\n var post = m.post;\n var p = pre.split(',');\n\n p[p.length-1] += '{' + body + '}';\n var postParts = parseCommaParts(post);\n if (post.length) {\n p[p.length-1] += postParts.shift();\n p.push.apply(p, postParts);\n }\n\n parts.push.apply(parts, p);\n\n return parts;\n}\n\nfunction expandTop(str) {\n if (!str)\n return [];\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.substr(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.substr(2);\n }\n\n return expand(escapeBraces(str), true).map(unescapeBraces);\n}\n\nfunction identity(e) {\n return e;\n}\n\nfunction embrace(str) {\n return '{' + str + '}';\n}\nfunction isPadded(el) {\n return /^-?0\\d/.test(el);\n}\n\nfunction lte(i, y) {\n return i <= y;\n}\nfunction gte(i, y) {\n return i >= y;\n}\n\nfunction expand(str, isTop) {\n var expansions = [];\n\n var m = balanced('{', '}', str);\n if (!m || /\\$$/.test(m.pre)) return [str];\n\n var isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body);\n var isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(m.body);\n var isSequence = isNumericSequence || isAlphaSequence;\n var isOptions = m.body.indexOf(',') >= 0;\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,.*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post;\n return expand(str);\n }\n return [str];\n }\n\n var n;\n if (isSequence) {\n n = m.body.split(/\\.\\./);\n } else {\n n = parseCommaParts(m.body);\n if (n.length === 1) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand(n[0], false).map(embrace);\n if (n.length === 1) {\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n return post.map(function(p) {\n return m.pre + n[0] + p;\n });\n }\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n var pre = m.pre;\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n\n var N;\n\n if (isSequence) {\n var x = numeric(n[0]);\n var y = numeric(n[1]);\n var width = Math.max(n[0].length, n[1].length)\n var incr = n.length == 3\n ? Math.abs(numeric(n[2]))\n : 1;\n var test = lte;\n var reverse = y < x;\n if (reverse) {\n incr *= -1;\n test = gte;\n }\n var pad = n.some(isPadded);\n\n N = [];\n\n for (var i = x; test(i, y); i += incr) {\n var c;\n if (isAlphaSequence) {\n c = String.fromCharCode(i);\n if (c === '\\\\')\n c = '';\n } else {\n c = String(i);\n if (pad) {\n var need = width - c.length;\n if (need > 0) {\n var z = new Array(need + 1).join('0');\n if (i < 0)\n c = '-' + z + c.slice(1);\n else\n c = z + c;\n }\n }\n }\n N.push(c);\n }\n } else {\n N = concatMap(n, function(el) { return expand(el, false) });\n }\n\n for (var j = 0; j < N.length; j++) {\n for (var k = 0; k < post.length; k++) {\n var expansion = pre + N[j] + post[k];\n if (!isTop || isSequence || expansion)\n expansions.push(expansion);\n }\n }\n\n return expansions;\n}\n\n","module.exports = function (xs, fn) {\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n var x = fn(xs[i], i);\n if (isArray(x)) res.push.apply(res, x);\n else res.push(x);\n }\n return res;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n","'use strict';\nmodule.exports = balanced;\nfunction balanced(a, b, str) {\n if (a instanceof RegExp) a = maybeMatch(a, str);\n if (b instanceof RegExp) b = maybeMatch(b, str);\n\n var r = range(a, b, str);\n\n return r && {\n start: r[0],\n end: r[1],\n pre: str.slice(0, r[0]),\n body: str.slice(r[0] + a.length, r[1]),\n post: str.slice(r[1] + b.length)\n };\n}\n\nfunction maybeMatch(reg, str) {\n var m = str.match(reg);\n return m ? m[0] : null;\n}\n\nbalanced.range = range;\nfunction range(a, b, str) {\n var begs, beg, left, right, result;\n var ai = str.indexOf(a);\n var bi = str.indexOf(b, ai + 1);\n var i = ai;\n\n if (ai >= 0 && bi > 0) {\n if(a===b) {\n return [ai, bi];\n }\n begs = [];\n left = str.length;\n\n while (i >= 0 && !result) {\n if (i == ai) {\n begs.push(i);\n ai = str.indexOf(a, i + 1);\n } else if (begs.length == 1) {\n result = [ begs.pop(), bi ];\n } else {\n beg = begs.pop();\n if (beg < left) {\n left = beg;\n right = bi;\n }\n\n bi = str.indexOf(b, i + 1);\n }\n\n i = ai < bi && ai >= 0 ? ai : bi;\n }\n\n if (begs.length) {\n result = [ left, right ];\n }\n }\n\n return result;\n}\n",null,null,"var v1 = require('./v1');\nvar v4 = require('./v4');\n\nvar uuid = v4;\nuuid.v1 = v1;\nuuid.v4 = v4;\n\nmodule.exports = uuid;\n","var rng = require('./lib/rng');\nvar bytesToUuid = require('./lib/bytesToUuid');\n\n// **`v1()` - Generate time-based UUID**\n//\n// Inspired by https://github.com/LiosK/UUID.js\n// and http://docs.python.org/library/uuid.html\n\nvar _nodeId;\nvar _clockseq;\n\n// Previous uuid creation time\nvar _lastMSecs = 0;\nvar _lastNSecs = 0;\n\n// See https://github.com/uuidjs/uuid for API details\nfunction v1(options, buf, offset) {\n var i = buf && offset || 0;\n var b = buf || [];\n\n options = options || {};\n var node = options.node || _nodeId;\n var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq;\n\n // node and clockseq need to be initialized to random values if they're not\n // specified. We do this lazily to minimize issues related to insufficient\n // system entropy. See #189\n if (node == null || clockseq == null) {\n var seedBytes = rng();\n if (node == null) {\n // Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1)\n node = _nodeId = [\n seedBytes[0] | 0x01,\n seedBytes[1], seedBytes[2], seedBytes[3], seedBytes[4], seedBytes[5]\n ];\n }\n if (clockseq == null) {\n // Per 4.2.2, randomize (14 bit) clockseq\n clockseq = _clockseq = (seedBytes[6] << 8 | seedBytes[7]) & 0x3fff;\n }\n }\n\n // UUID timestamps are 100 nano-second units since the Gregorian epoch,\n // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so\n // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs'\n // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00.\n var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime();\n\n // Per 4.2.1.2, use count of uuid's generated during the current clock\n // cycle to simulate higher resolution clock\n var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1;\n\n // Time since last uuid creation (in msecs)\n var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000;\n\n // Per 4.2.1.2, Bump clockseq on clock regression\n if (dt < 0 && options.clockseq === undefined) {\n clockseq = clockseq + 1 & 0x3fff;\n }\n\n // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new\n // time interval\n if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) {\n nsecs = 0;\n }\n\n // Per 4.2.1.2 Throw error if too many uuids are requested\n if (nsecs >= 10000) {\n throw new Error('uuid.v1(): Can\\'t create more than 10M uuids/sec');\n }\n\n _lastMSecs = msecs;\n _lastNSecs = nsecs;\n _clockseq = clockseq;\n\n // Per 4.1.4 - Convert from unix epoch to Gregorian epoch\n msecs += 12219292800000;\n\n // `time_low`\n var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000;\n b[i++] = tl >>> 24 & 0xff;\n b[i++] = tl >>> 16 & 0xff;\n b[i++] = tl >>> 8 & 0xff;\n b[i++] = tl & 0xff;\n\n // `time_mid`\n var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff;\n b[i++] = tmh >>> 8 & 0xff;\n b[i++] = tmh & 0xff;\n\n // `time_high_and_version`\n b[i++] = tmh >>> 24 & 0xf | 0x10; // include version\n b[i++] = tmh >>> 16 & 0xff;\n\n // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant)\n b[i++] = clockseq >>> 8 | 0x80;\n\n // `clock_seq_low`\n b[i++] = clockseq & 0xff;\n\n // `node`\n for (var n = 0; n < 6; ++n) {\n b[i + n] = node[n];\n }\n\n return buf ? buf : bytesToUuid(b);\n}\n\nmodule.exports = v1;\n",null,null,null,"// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n generateUuid,\n getDefaultProxySettings,\n HttpRequestBody,\n HttpResponse,\n isNode,\n isTokenCredential,\n TokenCredential,\n TransferProgressEvent,\n URLBuilder,\n} from \"@azure/core-http\";\nimport { PollerLike, PollOperationState } from \"@azure/core-lro\";\nimport { SpanStatusCode } from \"@azure/core-tracing\";\nimport { Readable } from \"stream\";\n\nimport { BlobDownloadResponse } from \"./BlobDownloadResponse\";\nimport { BlobQueryResponse } from \"./BlobQueryResponse\";\nimport { AnonymousCredential } from \"./credentials/AnonymousCredential\";\nimport { StorageSharedKeyCredential } from \"./credentials/StorageSharedKeyCredential\";\nimport { AppendBlob, Blob as StorageBlob, BlockBlob, PageBlob } from \"./generated/src/operations\";\nimport {\n AppendBlobAppendBlockFromUrlResponse,\n AppendBlobAppendBlockResponse,\n AppendBlobCreateResponse,\n BlobAbortCopyFromURLResponse,\n BlobCopyFromURLResponse,\n BlobCreateSnapshotResponse,\n BlobDeleteResponse,\n BlobDownloadOptionalParams,\n BlobDownloadResponseModel,\n BlobGetPropertiesResponseModel,\n BlobGetTagsHeaders,\n BlobSetHTTPHeadersResponse,\n BlobSetMetadataResponse,\n BlobSetTagsResponse,\n BlobSetTierResponse,\n BlobStartCopyFromURLResponse,\n BlobTags,\n BlobUndeleteResponse,\n BlockBlobCommitBlockListResponse,\n BlockBlobGetBlockListResponse,\n BlockBlobStageBlockFromURLResponse,\n BlockBlobStageBlockResponse,\n BlockBlobUploadHeaders,\n BlockBlobUploadResponse,\n BlockListType,\n CpkInfo,\n DeleteSnapshotsOptionType,\n LeaseAccessConditions,\n PageBlobClearPagesResponse,\n PageBlobCopyIncrementalResponse,\n PageBlobCreateResponse,\n PageBlobResizeResponse,\n PageBlobUpdateSequenceNumberResponse,\n PageBlobUploadPagesFromURLResponse,\n PageBlobUploadPagesResponse,\n RehydratePriority,\n SequenceNumberActionType,\n BlockBlobPutBlobFromUrlResponse,\n BlobHTTPHeaders,\n} from \"./generatedModels\";\nimport {\n AppendBlobRequestConditions,\n BlobDownloadResponseParsed,\n BlobRequestConditions,\n BlockBlobTier,\n ensureCpkIfSpecified,\n Metadata,\n ObjectReplicationPolicy,\n PageBlobRequestConditions,\n PremiumPageBlobTier,\n Tags,\n toAccessTier,\n TagConditions,\n MatchConditions,\n ModificationConditions,\n ModifiedAccessConditions,\n BlobQueryArrowField,\n BlobImmutabilityPolicy,\n HttpAuthorization,\n} from \"./models\";\nimport {\n PageBlobGetPageRangesDiffResponse,\n PageBlobGetPageRangesResponse,\n rangeResponseFromModel,\n} from \"./PageBlobRangeResponse\";\nimport { newPipeline, PipelineLike, isPipelineLike, StoragePipelineOptions } from \"./Pipeline\";\nimport {\n BlobBeginCopyFromUrlPoller,\n BlobBeginCopyFromUrlPollState,\n CopyPollerBlobClient,\n} from \"./pollers/BlobStartCopyFromUrlPoller\";\nimport { Range, rangeToString } from \"./Range\";\nimport { CommonOptions, StorageClient } from \"./StorageClient\";\nimport { Batch } from \"./utils/Batch\";\nimport { BufferScheduler } from \"../../storage-common/src\";\nimport {\n BlobUsesCustomerSpecifiedEncryptionMsg,\n BLOCK_BLOB_MAX_BLOCKS,\n BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES,\n BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES,\n DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES,\n DEFAULT_BLOCK_BUFFER_SIZE_BYTES,\n DEFAULT_MAX_DOWNLOAD_RETRY_REQUESTS,\n ETagAny,\n URLConstants,\n} from \"./utils/constants\";\nimport { createSpan, convertTracingToRequestOptionsBase } from \"./utils/tracing\";\nimport {\n appendToURLPath,\n appendToURLQuery,\n extractConnectionStringParts,\n generateBlockID,\n getURLParameter,\n httpAuthorizationToString,\n isIpEndpointStyle,\n parseObjectReplicationRecord,\n setURLParameter,\n toBlobTags,\n toBlobTagsString,\n toQuerySerialization,\n toTags,\n} from \"./utils/utils.common\";\nimport {\n fsCreateReadStream,\n fsStat,\n readStreamToLocalFile,\n streamToBuffer,\n} from \"./utils/utils.node\";\nimport { SASProtocol } from \"./sas/SASQueryParameters\";\nimport { SasIPRange } from \"./sas/SasIPRange\";\nimport { generateBlobSASQueryParameters } from \"./sas/BlobSASSignatureValues\";\nimport { BlobSASPermissions } from \"./sas/BlobSASPermissions\";\nimport { BlobLeaseClient } from \"./BlobLeaseClient\";\nimport {\n BlobDeleteImmutabilityPolicyResponse,\n BlobSetImmutabilityPolicyResponse,\n BlobSetLegalHoldResponse,\n} from \"./generatedModels\";\n\n/**\n * Options to configure the {@link BlobClient.beginCopyFromURL} operation.\n */\nexport interface BlobBeginCopyFromURLOptions extends BlobStartCopyFromURLOptions {\n /**\n * The amount of time in milliseconds the poller should wait between\n * calls to the service to determine the status of the Blob copy.\n * Defaults to 15 seconds.\n */\n intervalInMs?: number;\n /**\n * Callback to receive the state of the copy progress.\n */\n onProgress?: (state: BlobBeginCopyFromUrlPollState) => void;\n /**\n * Serialized poller state that can be used to resume polling from.\n * This may be useful when starting a copy on one process or thread\n * and you wish to continue polling on another process or thread.\n *\n * To get serialized poller state, call `poller.toString()` on an existing\n * poller.\n */\n resumeFrom?: string;\n}\n\n/**\n * Contains response data for the {@link BlobClient.beginCopyFromURL} operation.\n */\nexport interface BlobBeginCopyFromURLResponse extends BlobStartCopyFromURLResponse {}\n\n/**\n * Options to configure the {@link BlobClient.download} operation.\n */\nexport interface BlobDownloadOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * An opaque DateTime string value that, when present, specifies the blob snapshot to retrieve.\n */\n snapshot?: string;\n /**\n * When this is set to true and download range of blob, the service returns the MD5 hash for the range,\n * as long as the range is less than or equal to 4 MB in size.\n *\n * rangeGetContentCrc64 and rangeGetContentMD5 cannot be set at same time.\n */\n rangeGetContentMD5?: boolean;\n /**\n * When this is set to true and download range of blob, the service returns the CRC64 hash for the range,\n * as long as the range is less than or equal to 4 MB in size.\n *\n * rangeGetContentCrc64 and rangeGetContentMD5 cannot be set at same time.\n */\n rangeGetContentCrc64?: boolean;\n /**\n * Conditions to meet when downloading blobs.\n */\n conditions?: BlobRequestConditions;\n /**\n * Call back to receive events on the progress of download operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n\n /**\n * Optional. ONLY AVAILABLE IN NODE.JS.\n *\n * How many retries will perform when original body download stream unexpected ends.\n * Above kind of ends will not trigger retry policy defined in a pipeline,\n * because they doesn't emit network errors.\n *\n * With this option, every additional retry means an additional `FileClient.download()` request will be made\n * from the broken point, until the requested range has been successfully downloaded or maxRetryRequests is reached.\n *\n * Default value is 5, please set a larger value when loading large files in poor network.\n */\n maxRetryRequests?: number;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure the {@link BlobClient.exists} operation.\n */\nexport interface BlobExistsOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Conditions to meet.\n */\n conditions?: BlobRequestConditions;\n}\n\n/**\n * Options to configure the {@link BlobClient.getProperties} operation.\n */\nexport interface BlobGetPropertiesOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when getting blob properties.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure the {@link BlobClient.delete} operation.\n */\nexport interface BlobDeleteOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when deleting blobs.\n */\n conditions?: BlobRequestConditions;\n /**\n * Specifies options to delete blobs that have associated snapshots.\n * - `include`: Delete the base blob and all of its snapshots.\n * - `only`: Delete only the blob's snapshots and not the blob itself.\n */\n deleteSnapshots?: DeleteSnapshotsOptionType;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure the {@link BlobClient.undelete} operation.\n */\nexport interface BlobUndeleteOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure the {@link BlobClient.setHTTPHeaders} operation.\n */\nexport interface BlobSetHTTPHeadersOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when setting blob HTTP headers.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure the {@link BlobClient.setMetadata} operation.\n */\nexport interface BlobSetMetadataOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when setting blob metadata.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link BlobClient.setTags} operation.\n */\nexport interface BlobSetTagsOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet for the blob to perform this operation.\n */\n conditions?: TagConditions & LeaseAccessConditions;\n}\n\n/**\n * Options to configure the {@link BlobClient.getTags} operation.\n */\nexport interface BlobGetTagsOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet for the blob to perform this operation.\n */\n conditions?: TagConditions & LeaseAccessConditions;\n}\n\n/**\n * Contains response data for the {@link BlobClient.getTags} operation.\n */\nexport type BlobGetTagsResponse = { tags: Tags } & BlobGetTagsHeaders & {\n /**\n * The underlying HTTP response.\n */\n _response: HttpResponse & {\n /**\n * The parsed HTTP response headers.\n */\n parsedHeaders: BlobGetTagsHeaders;\n\n /**\n * The response body as text (string format)\n */\n bodyAsText: string;\n\n /**\n * The response body as parsed JSON or XML\n */\n parsedBody: BlobTags;\n };\n };\n\n/**\n * Options to configure Blob - Acquire Lease operation.\n */\nexport interface BlobAcquireLeaseOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when acquiring the lease of a blob.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure Blob - Release Lease operation.\n */\nexport interface BlobReleaseLeaseOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when releasing the lease of a blob.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure Blob - Renew Lease operation.\n */\nexport interface BlobRenewLeaseOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when renewing the lease of a blob.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure Blob - Change Lease operation.\n */\nexport interface BlobChangeLeaseOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when changing the lease of a blob.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure Blob - Break Lease operation.\n */\nexport interface BlobBreakLeaseOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when breaking the lease of a blob.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure the {@link BlobClient.createSnapshot} operation.\n */\nexport interface BlobCreateSnapshotOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * A collection of key-value string pair to associate with the snapshot.\n */\n metadata?: Metadata;\n /**\n * Conditions to meet when creating blob snapshots.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link BlobClient.beginCopyFromURL} operation.\n */\nexport interface BlobStartCopyFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * A collection of key-value string pair to associate with the blob that are being copied.\n */\n metadata?: Metadata;\n /**\n * Conditions to meet for the destination blob when copying from a URL to the blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * Conditions to meet for the source Azure Blob/File when copying from a URL to the blob.\n */\n sourceConditions?: ModifiedAccessConditions;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | PremiumPageBlobTier | string;\n /**\n * Rehydrate Priority - possible values include 'High', 'Standard'.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-rehydration#rehydrate-an-archived-blob-to-an-online-tier\n */\n rehydratePriority?: RehydratePriority;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Blob tags.\n */\n tags?: Tags;\n /**\n * Overrides the sealed state of the destination blob. Default true.\n */\n sealBlob?: boolean;\n}\n\n/**\n * Options to configure the {@link BlobClient.abortCopyFromURL} operation.\n */\nexport interface BlobAbortCopyFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * If specified, contains the lease id that must be matched and lease with this id\n * must be active in order for the operation to succeed.\n */\n conditions?: LeaseAccessConditions;\n}\n\n/**\n * Options to configure the {@link BlobClient.syncCopyFromURL} operation.\n */\nexport interface BlobSyncCopyFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * A collection of key-value string pair to associate with the snapshot.\n */\n metadata?: Metadata;\n /**\n * Conditions to meet for the destination blob when copying from a URL to the blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * Conditions to meet for the source Azure Blob/File when copying from a URL to the blob.\n */\n sourceConditions?: MatchConditions & ModificationConditions;\n /**\n * Specify the md5 calculated for the range of bytes that must be read from the copy source.\n */\n sourceContentMD5?: Uint8Array;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Blob tags.\n */\n tags?: Tags;\n /**\n * Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.\n */\n sourceAuthorization?: HttpAuthorization;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to encrypt the data provided in the request. If not specified, encryption is performed with the default account encryption scope. For more information, see Encryption at Rest for Azure Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link BlobClient.setAccessTier} operation.\n */\nexport interface BlobSetTierOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * If specified, contains the lease id that must be matched and lease with this id\n * must be active in order for the operation to succeed.\n */\n conditions?: LeaseAccessConditions & TagConditions;\n /**\n * Rehydrate Priority - possible values include 'High', 'Standard'.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-rehydration#rehydrate-an-archived-blob-to-an-online-tier\n */\n rehydratePriority?: RehydratePriority;\n}\n\n/**\n * Option interface for the {@link BlobClient.downloadToBuffer} operation.\n */\nexport interface BlobDownloadToBufferOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n\n /**\n * blockSize is the data every request trying to download.\n * Must be greater than or equal to 0.\n * If set to 0 or undefined, blockSize will automatically calculated according to the blob size.\n */\n blockSize?: number;\n\n /**\n * Optional. ONLY AVAILABLE IN NODE.JS.\n *\n * How many retries will perform when original block download stream unexpected ends.\n * Above kind of ends will not trigger retry policy defined in a pipeline,\n * because they doesn't emit network errors.\n *\n * With this option, every additional retry means an additional FileClient.download() request will be made\n * from the broken point, until the requested block has been successfully downloaded or\n * maxRetryRequestsPerBlock is reached.\n *\n * Default value is 5, please set a larger value when in poor network.\n */\n maxRetryRequestsPerBlock?: number;\n\n /**\n * Progress updater.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n\n /**\n * Access conditions headers.\n */\n conditions?: BlobRequestConditions;\n\n /**\n * Concurrency of parallel download.\n */\n concurrency?: number;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Contains response data for the {@link BlobClient.deleteIfExists} operation.\n */\nexport interface BlobDeleteIfExistsResponse extends BlobDeleteResponse {\n /**\n * Indicate whether the blob is successfully deleted. Is false if the blob does not exist in the first place.\n */\n succeeded: boolean;\n}\n\n/**\n * Contains response data for the {@link BlobClient.getProperties} operation.\n */\nexport interface BlobGetPropertiesResponse extends BlobGetPropertiesResponseModel {\n /**\n * Parsed Object Replication Policy Id, Rule Id(s) and status of the source blob.\n */\n objectReplicationSourceProperties?: ObjectReplicationPolicy[];\n\n /**\n * Object Replication Policy Id of the destination blob.\n */\n objectReplicationDestinationPolicyId?: string;\n}\n\n/**\n * Common options of {@link BlobGenerateSasUrlOptions} and {@link ContainerGenerateSasUrlOptions}.\n */\nexport interface CommonGenerateSasUrlOptions {\n /**\n * The version of the service this SAS will target. If not specified, it will default to the version targeted by the\n * library.\n */\n version?: string;\n\n /**\n * Optional. SAS protocols, HTTPS only or HTTPSandHTTP\n */\n protocol?: SASProtocol;\n\n /**\n * Optional. When the SAS will take effect.\n */\n startsOn?: Date;\n\n /**\n * Optional only when identifier is provided. The time after which the SAS will no longer work.\n */\n expiresOn?: Date;\n\n /**\n * Optional. IP ranges allowed in this SAS.\n */\n ipRange?: SasIPRange;\n\n /**\n * Optional. The name of the access policy on the container this SAS references if any.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/establishing-a-stored-access-policy\n */\n identifier?: string;\n\n /**\n * Optional. Encryption scope to use when sending requests authorized with this SAS URI.\n */\n encryptionScope?: string;\n\n /**\n * Optional. The cache-control header for the SAS.\n */\n cacheControl?: string;\n\n /**\n * Optional. The content-disposition header for the SAS.\n */\n contentDisposition?: string;\n\n /**\n * Optional. The content-encoding header for the SAS.\n */\n contentEncoding?: string;\n\n /**\n * Optional. The content-language header for the SAS.\n */\n contentLanguage?: string;\n\n /**\n * Optional. The content-type header for the SAS.\n */\n contentType?: string;\n}\n\n/**\n * Options to configure {@link BlobClient.generateSasUrl} operation.\n */\nexport interface BlobGenerateSasUrlOptions extends CommonGenerateSasUrlOptions {\n /**\n * Optional only when identifier is provided. Specifies the list of permissions to be associated with the SAS.\n */\n permissions?: BlobSASPermissions;\n}\n\n/**\n * Options for deleting immutability policy {@link BlobClient.deleteImmutabilityPolicy} operation.\n */\nexport interface BlobDeleteImmutabilityPolicyOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n}\n\n/**\n * Options for setting immutability policy {@link BlobClient.setImmutabilityPolicy} operation.\n */\nexport interface BlobSetImmutabilityPolicyOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n modifiedAccessCondition?: ModificationConditions;\n}\n\n/**\n * Options for setting legal hold {@link BlobClient.setLegalHold} operation.\n */\nexport interface BlobSetLegalHoldOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n}\n\n/**\n * A BlobClient represents a URL to an Azure Storage blob; the blob may be a block blob,\n * append blob, or page blob.\n */\nexport class BlobClient extends StorageClient {\n /**\n * blobContext provided by protocol layer.\n */\n private blobContext: StorageBlob;\n\n private _name: string;\n private _containerName: string;\n\n private _versionId?: string;\n private _snapshot?: string;\n\n /**\n * The name of the blob.\n */\n public get name(): string {\n return this._name;\n }\n\n /**\n * The name of the storage container the blob is associated with.\n */\n public get containerName(): string {\n return this._containerName;\n }\n\n /**\n *\n * Creates an instance of BlobClient from connection string.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param containerName - Container name.\n * @param blobName - Blob name.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n connectionString: string,\n containerName: string,\n blobName: string,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of BlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A Client string pointing to Azure Storage blob service, such as\n * \"https://myaccount.blob.core.windows.net\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.blob.core.windows.net?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of BlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A URL string pointing to Azure Storage blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blob\".\n * You can append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: PipelineLike);\n constructor(\n urlOrConnectionString: string,\n credentialOrPipelineOrContainerName?:\n | string\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | PipelineLike,\n blobNameOrOptions?: string | StoragePipelineOptions,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n ) {\n options = options || {};\n let pipeline: PipelineLike;\n let url: string;\n if (isPipelineLike(credentialOrPipelineOrContainerName)) {\n // (url: string, pipeline: Pipeline)\n url = urlOrConnectionString;\n pipeline = credentialOrPipelineOrContainerName;\n } else if (\n (isNode && credentialOrPipelineOrContainerName instanceof StorageSharedKeyCredential) ||\n credentialOrPipelineOrContainerName instanceof AnonymousCredential ||\n isTokenCredential(credentialOrPipelineOrContainerName)\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n url = urlOrConnectionString;\n options = blobNameOrOptions as StoragePipelineOptions;\n pipeline = newPipeline(credentialOrPipelineOrContainerName, options);\n } else if (\n !credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName !== \"string\"\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n // The second parameter is undefined. Use anonymous credential.\n url = urlOrConnectionString;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else if (\n credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName === \"string\" &&\n blobNameOrOptions &&\n typeof blobNameOrOptions === \"string\"\n ) {\n // (connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)\n const containerName = credentialOrPipelineOrContainerName;\n const blobName = blobNameOrOptions;\n\n const extractedCreds = extractConnectionStringParts(urlOrConnectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey\n );\n url = appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n );\n\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n\n pipeline = newPipeline(sharedKeyCredential, options);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n url =\n appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n ) +\n \"?\" +\n extractedCreds.accountSas;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\"\n );\n }\n } else {\n throw new Error(\"Expecting non-empty strings for containerName and blobName parameters\");\n }\n\n super(url, pipeline);\n ({ blobName: this._name, containerName: this._containerName } =\n this.getBlobAndContainerNamesFromUrl());\n this.blobContext = new StorageBlob(this.storageClientContext);\n\n this._snapshot = getURLParameter(this.url, URLConstants.Parameters.SNAPSHOT) as string;\n this._versionId = getURLParameter(this.url, URLConstants.Parameters.VERSIONID) as string;\n }\n\n /**\n * Creates a new BlobClient object identical to the source but with the specified snapshot timestamp.\n * Provide \"\" will remove the snapshot and return a Client to the base blob.\n *\n * @param snapshot - The snapshot timestamp.\n * @returns A new BlobClient object identical to the source but with the specified snapshot timestamp\n */\n public withSnapshot(snapshot: string): BlobClient {\n return new BlobClient(\n setURLParameter(\n this.url,\n URLConstants.Parameters.SNAPSHOT,\n snapshot.length === 0 ? undefined : snapshot\n ),\n this.pipeline\n );\n }\n\n /**\n * Creates a new BlobClient object pointing to a version of this blob.\n * Provide \"\" will remove the versionId and return a Client to the base blob.\n *\n * @param versionId - The versionId.\n * @returns A new BlobClient object pointing to the version of this blob.\n */\n public withVersion(versionId: string): BlobClient {\n return new BlobClient(\n setURLParameter(\n this.url,\n URLConstants.Parameters.VERSIONID,\n versionId.length === 0 ? undefined : versionId\n ),\n this.pipeline\n );\n }\n\n /**\n * Creates a AppendBlobClient object.\n *\n */\n public getAppendBlobClient(): AppendBlobClient {\n return new AppendBlobClient(this.url, this.pipeline);\n }\n\n /**\n * Creates a BlockBlobClient object.\n *\n */\n public getBlockBlobClient(): BlockBlobClient {\n return new BlockBlobClient(this.url, this.pipeline);\n }\n\n /**\n * Creates a PageBlobClient object.\n *\n */\n public getPageBlobClient(): PageBlobClient {\n return new PageBlobClient(this.url, this.pipeline);\n }\n\n /**\n * Reads or downloads a blob from the system, including its metadata and properties.\n * You can also call Get Blob to read a snapshot.\n *\n * * In Node.js, data returns in a Readable stream readableStreamBody\n * * In browsers, data returns in a promise blobBody\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob\n *\n * @param offset - From which position of the blob to download, greater than or equal to 0\n * @param count - How much data to be downloaded, greater than 0. Will download to the end when undefined\n * @param options - Optional options to Blob Download operation.\n *\n *\n * Example usage (Node.js):\n *\n * ```js\n * // Download and convert a blob to a string\n * const downloadBlockBlobResponse = await blobClient.download();\n * const downloaded = await streamToBuffer(downloadBlockBlobResponse.readableStreamBody);\n * console.log(\"Downloaded blob content:\", downloaded.toString());\n *\n * async function streamToBuffer(readableStream) {\n * return new Promise((resolve, reject) => {\n * const chunks = [];\n * readableStream.on(\"data\", (data) => {\n * chunks.push(data instanceof Buffer ? data : Buffer.from(data));\n * });\n * readableStream.on(\"end\", () => {\n * resolve(Buffer.concat(chunks));\n * });\n * readableStream.on(\"error\", reject);\n * });\n * }\n * ```\n *\n * Example usage (browser):\n *\n * ```js\n * // Download and convert a blob to a string\n * const downloadBlockBlobResponse = await blobClient.download();\n * const downloaded = await blobToString(await downloadBlockBlobResponse.blobBody);\n * console.log(\n * \"Downloaded blob content\",\n * downloaded\n * );\n *\n * async function blobToString(blob: Blob): Promise {\n * const fileReader = new FileReader();\n * return new Promise((resolve, reject) => {\n * fileReader.onloadend = (ev: any) => {\n * resolve(ev.target!.result);\n * };\n * fileReader.onerror = reject;\n * fileReader.readAsText(blob);\n * });\n * }\n * ```\n */\n public async download(\n offset: number = 0,\n count?: number,\n options: BlobDownloadOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n options.conditions = options.conditions || {};\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n\n const { span, updatedOptions } = createSpan(\"BlobClient-download\", options);\n\n try {\n const res = await this.blobContext.download({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n requestOptions: {\n onDownloadProgress: isNode ? undefined : options.onProgress, // for Node.js, progress is reported by RetriableReadableStream\n },\n range: offset === 0 && !count ? undefined : rangeToString({ offset, count }),\n rangeGetContentMD5: options.rangeGetContentMD5,\n rangeGetContentCRC64: options.rangeGetContentCrc64,\n snapshot: options.snapshot,\n cpkInfo: options.customerProvidedKey,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n\n const wrappedRes = {\n ...res,\n _response: res._response, // _response is made non-enumerable\n objectReplicationDestinationPolicyId: res.objectReplicationPolicyId,\n objectReplicationSourceProperties: parseObjectReplicationRecord(res.objectReplicationRules),\n };\n // Return browser response immediately\n if (!isNode) {\n return wrappedRes;\n }\n\n // We support retrying when download stream unexpected ends in Node.js runtime\n // Following code shouldn't be bundled into browser build, however some\n // bundlers may try to bundle following code and \"FileReadResponse.ts\".\n // In this case, \"FileDownloadResponse.browser.ts\" will be used as a shim of \"FileDownloadResponse.ts\"\n // The config is in package.json \"browser\" field\n if (options.maxRetryRequests === undefined || options.maxRetryRequests < 0) {\n // TODO: Default value or make it a required parameter?\n options.maxRetryRequests = DEFAULT_MAX_DOWNLOAD_RETRY_REQUESTS;\n }\n\n if (res.contentLength === undefined) {\n throw new RangeError(`File download response doesn't contain valid content length header`);\n }\n\n if (!res.etag) {\n throw new RangeError(`File download response doesn't contain valid etag header`);\n }\n\n return new BlobDownloadResponse(\n wrappedRes,\n async (start: number): Promise => {\n const updatedDownloadOptions: BlobDownloadOptionalParams = {\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ifMatch: options.conditions!.ifMatch || res.etag,\n ifModifiedSince: options.conditions!.ifModifiedSince,\n ifNoneMatch: options.conditions!.ifNoneMatch,\n ifUnmodifiedSince: options.conditions!.ifUnmodifiedSince,\n ifTags: options.conditions?.tagConditions,\n },\n range: rangeToString({\n count: offset + res.contentLength! - start,\n offset: start,\n }),\n rangeGetContentMD5: options.rangeGetContentMD5,\n rangeGetContentCRC64: options.rangeGetContentCrc64,\n snapshot: options.snapshot,\n cpkInfo: options.customerProvidedKey,\n };\n\n // Debug purpose only\n // console.log(\n // `Read from internal stream, range: ${\n // updatedOptions.range\n // }, options: ${JSON.stringify(updatedOptions)}`\n // );\n\n return (\n await this.blobContext.download({\n abortSignal: options.abortSignal,\n ...updatedDownloadOptions,\n })\n ).readableStreamBody!;\n },\n offset,\n res.contentLength!,\n {\n maxRetryRequests: options.maxRetryRequests,\n onProgress: options.onProgress,\n }\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns true if the Azure blob resource represented by this client exists; false otherwise.\n *\n * NOTE: use this function with care since an existing blob might be deleted by other clients or\n * applications. Vice versa new blobs might be added by other clients or applications after this\n * function completes.\n *\n * @param options - options to Exists operation.\n */\n public async exists(options: BlobExistsOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-exists\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n await this.getProperties({\n abortSignal: options.abortSignal,\n customerProvidedKey: options.customerProvidedKey,\n conditions: options.conditions,\n tracingOptions: updatedOptions.tracingOptions,\n });\n return true;\n } catch (e) {\n if (e.statusCode === 404) {\n // Expected exception when checking blob existence\n return false;\n } else if (\n e.statusCode === 409 &&\n e.details.errorCode === BlobUsesCustomerSpecifiedEncryptionMsg\n ) {\n // Expected exception when checking blob existence\n return true;\n }\n\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns all user-defined metadata, standard HTTP properties, and system properties\n * for the blob. It does not return the content of the blob.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob-properties\n *\n * WARNING: The `metadata` object returned in the response will have its keys in lowercase, even if\n * they originally contained uppercase characters. This differs from the metadata keys returned by\n * the methods of {@link ContainerClient} that list blobs using the `includeMetadata` option, which\n * will retain their original casing.\n *\n * @param options - Optional options to Get Properties operation.\n */\n public async getProperties(\n options: BlobGetPropertiesOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-getProperties\", options);\n try {\n options.conditions = options.conditions || {};\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n const res = await this.blobContext.getProperties({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n\n return {\n ...res,\n _response: res._response, // _response is made non-enumerable\n objectReplicationDestinationPolicyId: res.objectReplicationPolicyId,\n objectReplicationSourceProperties: parseObjectReplicationRecord(res.objectReplicationRules),\n };\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Marks the specified blob or snapshot for deletion. The blob is later deleted\n * during garbage collection. Note that in order to delete a blob, you must delete\n * all of its snapshots. You can delete both at the same time with the Delete\n * Blob operation.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob\n *\n * @param options - Optional options to Blob Delete operation.\n */\n public async delete(options: BlobDeleteOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-delete\", options);\n options.conditions = options.conditions || {};\n try {\n return await this.blobContext.delete({\n abortSignal: options.abortSignal,\n deleteSnapshots: options.deleteSnapshots,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Marks the specified blob or snapshot for deletion if it exists. The blob is later deleted\n * during garbage collection. Note that in order to delete a blob, you must delete\n * all of its snapshots. You can delete both at the same time with the Delete\n * Blob operation.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/delete-blob\n *\n * @param options - Optional options to Blob Delete operation.\n */\n public async deleteIfExists(\n options: BlobDeleteOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-deleteIfExists\", options);\n try {\n const res = await this.delete(updatedOptions);\n return {\n succeeded: true,\n ...res,\n _response: res._response, // _response is made non-enumerable\n };\n } catch (e) {\n if (e.details?.errorCode === \"BlobNotFound\") {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: \"Expected exception when deleting a blob or snapshot only if it exists.\",\n });\n return {\n succeeded: false,\n ...e.response?.parsedHeaders,\n _response: e.response,\n };\n }\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Restores the contents and metadata of soft deleted blob and any associated\n * soft deleted snapshots. Undelete Blob is supported only on version 2017-07-29\n * or later.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/undelete-blob\n *\n * @param options - Optional options to Blob Undelete operation.\n */\n public async undelete(options: BlobUndeleteOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-undelete\", options);\n try {\n return await this.blobContext.undelete({\n abortSignal: options.abortSignal,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets system properties on the blob.\n *\n * If no value provided, or no value provided for the specified blob HTTP headers,\n * these blob HTTP headers without a value will be cleared.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties\n *\n * @param blobHTTPHeaders - If no value provided, or no value provided for\n * the specified blob HTTP headers, these blob HTTP\n * headers without a value will be cleared.\n * A common header to set is `blobContentType`\n * enabling the browser to provide functionality\n * based on file type.\n * @param options - Optional options to Blob Set HTTP Headers operation.\n */\n public async setHTTPHeaders(\n blobHTTPHeaders?: BlobHTTPHeaders,\n options: BlobSetHTTPHeadersOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setHTTPHeaders\", options);\n options.conditions = options.conditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blobContext.setHttpHeaders({\n abortSignal: options.abortSignal,\n blobHttpHeaders: blobHTTPHeaders,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n // cpkInfo: options.customerProvidedKey, // CPK is not included in Swagger, should change this back when this issue is fixed in Swagger.\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets user-defined metadata for the specified blob as one or more name-value pairs.\n *\n * If no option provided, or no metadata defined in the parameter, the blob\n * metadata will be removed.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-metadata\n *\n * @param metadata - Replace existing metadata with this value.\n * If no value provided the existing metadata will be removed.\n * @param options - Optional options to Set Metadata operation.\n */\n public async setMetadata(\n metadata?: Metadata,\n options: BlobSetMetadataOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setMetadata\", options);\n options.conditions = options.conditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blobContext.setMetadata({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets tags on the underlying blob.\n * A blob can have up to 10 tags. Tag keys must be between 1 and 128 characters. Tag values must be between 0 and 256 characters.\n * Valid tag key and value characters include lower and upper case letters, digits (0-9),\n * space (' '), plus ('+'), minus ('-'), period ('.'), foward slash ('/'), colon (':'), equals ('='), and underscore ('_').\n *\n * @param tags -\n * @param options -\n */\n public async setTags(tags: Tags, options: BlobSetTagsOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setTags\", options);\n try {\n return await this.blobContext.setTags({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n tags: toBlobTags(tags),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the tags associated with the underlying blob.\n *\n * @param options -\n */\n public async getTags(options: BlobGetTagsOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-getTags\", options);\n try {\n const response = await this.blobContext.getTags({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n const wrappedResponse: BlobGetTagsResponse = {\n ...response,\n _response: response._response, // _response is made non-enumerable\n tags: toTags({ blobTagSet: response.blobTagSet }) || {},\n };\n return wrappedResponse;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Get a {@link BlobLeaseClient} that manages leases on the blob.\n *\n * @param proposeLeaseId - Initial proposed lease Id.\n * @returns A new BlobLeaseClient object for managing leases on the blob.\n */\n public getBlobLeaseClient(proposeLeaseId?: string): BlobLeaseClient {\n return new BlobLeaseClient(this, proposeLeaseId);\n }\n\n /**\n * Creates a read-only snapshot of a blob.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-blob\n *\n * @param options - Optional options to the Blob Create Snapshot operation.\n */\n public async createSnapshot(\n options: BlobCreateSnapshotOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-createSnapshot\", options);\n options.conditions = options.conditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blobContext.createSnapshot({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Asynchronously copies a blob to a destination within the storage account.\n * This method returns a long running operation poller that allows you to wait\n * indefinitely until the copy is completed.\n * You can also cancel a copy before it is completed by calling `cancelOperation` on the poller.\n * Note that the onProgress callback will not be invoked if the operation completes in the first\n * request, and attempting to cancel a completed copy will result in an error being thrown.\n *\n * In version 2012-02-12 and later, the source for a Copy Blob operation can be\n * a committed blob in any Azure storage account.\n * Beginning with version 2015-02-21, the source for a Copy Blob operation can be\n * an Azure file in any Azure storage account.\n * Only storage accounts created on or after June 7th, 2012 allow the Copy Blob\n * operation to copy from another storage account.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob\n *\n * Example using automatic polling:\n *\n * ```js\n * const copyPoller = await blobClient.beginCopyFromURL('url');\n * const result = await copyPoller.pollUntilDone();\n * ```\n *\n * Example using manual polling:\n *\n * ```js\n * const copyPoller = await blobClient.beginCopyFromURL('url');\n * while (!poller.isDone()) {\n * await poller.poll();\n * }\n * const result = copyPoller.getResult();\n * ```\n *\n * Example using progress updates:\n *\n * ```js\n * const copyPoller = await blobClient.beginCopyFromURL('url', {\n * onProgress(state) {\n * console.log(`Progress: ${state.copyProgress}`);\n * }\n * });\n * const result = await copyPoller.pollUntilDone();\n * ```\n *\n * Example using a changing polling interval (default 15 seconds):\n *\n * ```js\n * const copyPoller = await blobClient.beginCopyFromURL('url', {\n * intervalInMs: 1000 // poll blob every 1 second for copy progress\n * });\n * const result = await copyPoller.pollUntilDone();\n * ```\n *\n * Example using copy cancellation:\n *\n * ```js\n * const copyPoller = await blobClient.beginCopyFromURL('url');\n * // cancel operation after starting it.\n * try {\n * await copyPoller.cancelOperation();\n * // calls to get the result now throw PollerCancelledError\n * await copyPoller.getResult();\n * } catch (err) {\n * if (err.name === 'PollerCancelledError') {\n * console.log('The copy was cancelled.');\n * }\n * }\n * ```\n *\n * @param copySource - url to the source Azure Blob/File.\n * @param options - Optional options to the Blob Start Copy From URL operation.\n */\n public async beginCopyFromURL(\n copySource: string,\n options: BlobBeginCopyFromURLOptions = {}\n ): Promise<\n PollerLike, BlobBeginCopyFromURLResponse>\n > {\n const client: CopyPollerBlobClient = {\n abortCopyFromURL: (...args) => this.abortCopyFromURL(...args),\n getProperties: (...args) => this.getProperties(...args),\n startCopyFromURL: (...args) => this.startCopyFromURL(...args),\n };\n const poller = new BlobBeginCopyFromUrlPoller({\n blobClient: client,\n copySource,\n intervalInMs: options.intervalInMs,\n onProgress: options.onProgress,\n resumeFrom: options.resumeFrom,\n startCopyFromURLOptions: options,\n });\n\n // Trigger the startCopyFromURL call by calling poll.\n // Any errors from this method should be surfaced to the user.\n await poller.poll();\n\n return poller;\n }\n\n /**\n * Aborts a pending asynchronous Copy Blob operation, and leaves a destination blob with zero\n * length and full metadata. Version 2012-02-12 and newer.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/abort-copy-blob\n *\n * @param copyId - Id of the Copy From URL operation.\n * @param options - Optional options to the Blob Abort Copy From URL operation.\n */\n public async abortCopyFromURL(\n copyId: string,\n options: BlobAbortCopyFromURLOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-abortCopyFromURL\", options);\n try {\n return await this.blobContext.abortCopyFromURL(copyId, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * The synchronous Copy From URL operation copies a blob or an internet resource to a new blob. It will not\n * return a response until the copy is complete.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob-from-url\n *\n * @param copySource - The source URL to copy from, Shared Access Signature(SAS) maybe needed for authentication\n * @param options -\n */\n public async syncCopyFromURL(\n copySource: string,\n options: BlobSyncCopyFromURLOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-syncCopyFromURL\", options);\n options.conditions = options.conditions || {};\n options.sourceConditions = options.sourceConditions || {};\n\n try {\n return await this.blobContext.copyFromURL(copySource, {\n abortSignal: options.abortSignal,\n metadata: options.metadata,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n sourceModifiedAccessConditions: {\n sourceIfMatch: options.sourceConditions.ifMatch,\n sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,\n sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,\n sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,\n },\n sourceContentMD5: options.sourceContentMD5,\n copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization),\n blobTagsString: toBlobTagsString(options.tags),\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets the tier on a blob. The operation is allowed on a page blob in a premium\n * storage account and on a block blob in a blob storage account (locally redundant\n * storage only). A premium page blob's tier determines the allowed size, IOPS,\n * and bandwidth of the blob. A block blob's tier determines Hot/Cool/Archive\n * storage type. This operation does not update the blob's ETag.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-tier\n *\n * @param tier - The tier to be set on the blob. Valid values are Hot, Cool, or Archive.\n * @param options - Optional options to the Blob Set Tier operation.\n */\n public async setAccessTier(\n tier: BlockBlobTier | PremiumPageBlobTier | string,\n options: BlobSetTierOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setAccessTier\", options);\n try {\n return await this.blobContext.setTier(toAccessTier(tier)!, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n rehydratePriority: options.rehydratePriority,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n // High level function\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Downloads an Azure Blob in parallel to a buffer.\n * Offset and count are optional, downloads the entire blob if they are not provided.\n *\n * Warning: Buffers can only support files up to about one gigabyte on 32-bit systems or about two\n * gigabytes on 64-bit systems due to limitations of Node.js/V8. For blobs larger than this size,\n * consider {@link downloadToFile}.\n *\n * @param offset - From which position of the block blob to download(in bytes)\n * @param count - How much data(in bytes) to be downloaded. Will download to the end when passing undefined\n * @param options - BlobDownloadToBufferOptions\n */\n public async downloadToBuffer(\n offset?: number,\n count?: number,\n options?: BlobDownloadToBufferOptions\n ): Promise;\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Downloads an Azure Blob in parallel to a buffer.\n * Offset and count are optional, downloads the entire blob if they are not provided.\n *\n * Warning: Buffers can only support files up to about one gigabyte on 32-bit systems or about two\n * gigabytes on 64-bit systems due to limitations of Node.js/V8. For blobs larger than this size,\n * consider {@link downloadToFile}.\n *\n * @param buffer - Buffer to be fill, must have length larger than count\n * @param offset - From which position of the block blob to download(in bytes)\n * @param count - How much data(in bytes) to be downloaded. Will download to the end when passing undefined\n * @param options - BlobDownloadToBufferOptions\n */\n public async downloadToBuffer(\n buffer: Buffer,\n offset?: number,\n count?: number,\n options?: BlobDownloadToBufferOptions\n ): Promise;\n\n public async downloadToBuffer(\n param1?: Buffer | number,\n param2?: number,\n param3?: BlobDownloadToBufferOptions | number,\n param4: BlobDownloadToBufferOptions = {}\n ): Promise {\n let buffer: Buffer | undefined;\n let offset = 0;\n let count = 0;\n let options = param4;\n if (param1 instanceof Buffer) {\n buffer = param1;\n offset = param2 || 0;\n count = typeof param3 === \"number\" ? param3 : 0;\n } else {\n offset = typeof param1 === \"number\" ? param1 : 0;\n count = typeof param2 === \"number\" ? param2 : 0;\n options = (param3 as BlobDownloadToBufferOptions) || {};\n }\n const { span, updatedOptions } = createSpan(\"BlobClient-downloadToBuffer\", options);\n\n try {\n if (!options.blockSize) {\n options.blockSize = 0;\n }\n if (options.blockSize < 0) {\n throw new RangeError(\"blockSize option must be >= 0\");\n }\n if (options.blockSize === 0) {\n options.blockSize = DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES;\n }\n\n if (offset < 0) {\n throw new RangeError(\"offset option must be >= 0\");\n }\n\n if (count && count <= 0) {\n throw new RangeError(\"count option must be greater than 0\");\n }\n\n if (!options.conditions) {\n options.conditions = {};\n }\n\n // Customer doesn't specify length, get it\n if (!count) {\n const response = await this.getProperties({\n ...options,\n tracingOptions: {\n ...options.tracingOptions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n },\n });\n count = response.contentLength! - offset;\n if (count < 0) {\n throw new RangeError(\n `offset ${offset} shouldn't be larger than blob size ${response.contentLength!}`\n );\n }\n }\n\n // Allocate the buffer of size = count if the buffer is not provided\n if (!buffer) {\n try {\n buffer = Buffer.alloc(count);\n } catch (error) {\n throw new Error(\n `Unable to allocate the buffer of size: ${count}(in bytes). Please try passing your own buffer to the \"downloadToBuffer\" method or try using other methods like \"download\" or \"downloadToFile\".\\t ${error.message}`\n );\n }\n }\n\n if (buffer.length < count) {\n throw new RangeError(\n `The buffer's size should be equal to or larger than the request count of bytes: ${count}`\n );\n }\n\n let transferProgress: number = 0;\n const batch = new Batch(options.concurrency);\n for (let off = offset; off < offset + count; off = off + options.blockSize) {\n batch.addOperation(async () => {\n // Exclusive chunk end position\n let chunkEnd = offset + count!;\n if (off + options.blockSize! < chunkEnd) {\n chunkEnd = off + options.blockSize!;\n }\n const response = await this.download(off, chunkEnd - off, {\n abortSignal: options.abortSignal,\n conditions: options.conditions,\n maxRetryRequests: options.maxRetryRequestsPerBlock,\n customerProvidedKey: options.customerProvidedKey,\n tracingOptions: {\n ...options.tracingOptions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n },\n });\n const stream = response.readableStreamBody!;\n await streamToBuffer(stream, buffer!, off - offset, chunkEnd - offset);\n // Update progress after block is downloaded, in case of block trying\n // Could provide finer grained progress updating inside HTTP requests,\n // only if convenience layer download try is enabled\n transferProgress += chunkEnd - off;\n if (options.onProgress) {\n options.onProgress({ loadedBytes: transferProgress });\n }\n });\n }\n await batch.do();\n return buffer;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Downloads an Azure Blob to a local file.\n * Fails if the the given file path already exits.\n * Offset and count are optional, pass 0 and undefined respectively to download the entire blob.\n *\n * @param filePath -\n * @param offset - From which position of the block blob to download.\n * @param count - How much data to be downloaded. Will download to the end when passing undefined.\n * @param options - Options to Blob download options.\n * @returns The response data for blob download operation,\n * but with readableStreamBody set to undefined since its\n * content is already read and written into a local file\n * at the specified path.\n */\n public async downloadToFile(\n filePath: string,\n offset: number = 0,\n count?: number,\n options: BlobDownloadOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-downloadToFile\", options);\n try {\n const response = await this.download(offset, count, {\n ...options,\n tracingOptions: {\n ...options.tracingOptions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n },\n });\n if (response.readableStreamBody) {\n await readStreamToLocalFile(response.readableStreamBody, filePath);\n }\n\n // The stream is no longer accessible so setting it to undefined.\n (response as any).blobDownloadStream = undefined;\n return response;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n private getBlobAndContainerNamesFromUrl(): { blobName: string; containerName: string } {\n let containerName;\n let blobName;\n try {\n // URL may look like the following\n // \"https://myaccount.blob.core.windows.net/mycontainer/blob?sasString\";\n // \"https://myaccount.blob.core.windows.net/mycontainer/blob\";\n // \"https://myaccount.blob.core.windows.net/mycontainer/blob/a.txt?sasString\";\n // \"https://myaccount.blob.core.windows.net/mycontainer/blob/a.txt\";\n // IPv4/IPv6 address hosts, Endpoints - `http://127.0.0.1:10000/devstoreaccount1/containername/blob`\n // http://localhost:10001/devstoreaccount1/containername/blob\n\n const parsedUrl = URLBuilder.parse(this.url);\n\n if (parsedUrl.getHost()!.split(\".\")[1] === \"blob\") {\n // \"https://myaccount.blob.core.windows.net/containername/blob\".\n // .getPath() -> /containername/blob\n const pathComponents = parsedUrl.getPath()!.match(\"/([^/]*)(/(.*))?\");\n containerName = pathComponents![1];\n blobName = pathComponents![3];\n } else if (isIpEndpointStyle(parsedUrl)) {\n // IPv4/IPv6 address hosts... Example - http://192.0.0.10:10001/devstoreaccount1/containername/blob\n // Single word domain without a [dot] in the endpoint... Example - http://localhost:10001/devstoreaccount1/containername/blob\n // .getPath() -> /devstoreaccount1/containername/blob\n const pathComponents = parsedUrl.getPath()!.match(\"/([^/]*)/([^/]*)(/(.*))?\");\n containerName = pathComponents![2];\n blobName = pathComponents![4];\n } else {\n // \"https://customdomain.com/containername/blob\".\n // .getPath() -> /containername/blob\n const pathComponents = parsedUrl.getPath()!.match(\"/([^/]*)(/(.*))?\");\n containerName = pathComponents![1];\n blobName = pathComponents![3];\n }\n\n // decode the encoded blobName, containerName - to get all the special characters that might be present in them\n containerName = decodeURIComponent(containerName);\n blobName = decodeURIComponent(blobName);\n\n // Azure Storage Server will replace \"\\\" with \"/\" in the blob names\n // doing the same in the SDK side so that the user doesn't have to replace \"\\\" instances in the blobName\n blobName = blobName.replace(/\\\\/g, \"/\");\n\n if (!containerName) {\n throw new Error(\"Provided containerName is invalid.\");\n }\n\n return { blobName, containerName };\n } catch (error) {\n throw new Error(\"Unable to extract blobName and containerName with provided information.\");\n }\n }\n\n /**\n * Asynchronously copies a blob to a destination within the storage account.\n * In version 2012-02-12 and later, the source for a Copy Blob operation can be\n * a committed blob in any Azure storage account.\n * Beginning with version 2015-02-21, the source for a Copy Blob operation can be\n * an Azure file in any Azure storage account.\n * Only storage accounts created on or after June 7th, 2012 allow the Copy Blob\n * operation to copy from another storage account.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/copy-blob\n *\n * @param copySource - url to the source Azure Blob/File.\n * @param options - Optional options to the Blob Start Copy From URL operation.\n */\n private async startCopyFromURL(\n copySource: string,\n options: BlobStartCopyFromURLOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-startCopyFromURL\", options);\n options.conditions = options.conditions || {};\n options.sourceConditions = options.sourceConditions || {};\n\n try {\n return await this.blobContext.startCopyFromURL(copySource, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n sourceModifiedAccessConditions: {\n sourceIfMatch: options.sourceConditions.ifMatch,\n sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,\n sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,\n sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,\n sourceIfTags: options.sourceConditions.tagConditions,\n },\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n rehydratePriority: options.rehydratePriority,\n tier: toAccessTier(options.tier),\n blobTagsString: toBlobTagsString(options.tags),\n sealBlob: options.sealBlob,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Only available for BlobClient constructed with a shared key credential.\n *\n * Generates a Blob Service Shared Access Signature (SAS) URI based on the client properties\n * and parameters passed in. The SAS is signed by the shared key credential of the client.\n *\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/constructing-a-service-sas\n *\n * @param options - Optional parameters.\n * @returns The SAS URI consisting of the URI to the resource represented by this client, followed by the generated SAS token.\n */\n public generateSasUrl(options: BlobGenerateSasUrlOptions): Promise {\n return new Promise((resolve) => {\n if (!(this.credential instanceof StorageSharedKeyCredential)) {\n throw new RangeError(\n \"Can only generate the SAS when the client is initialized with a shared key credential\"\n );\n }\n\n const sas = generateBlobSASQueryParameters(\n {\n containerName: this._containerName,\n blobName: this._name,\n snapshotTime: this._snapshot,\n versionId: this._versionId,\n ...options,\n },\n this.credential\n ).toString();\n\n resolve(appendToURLQuery(this.url, sas));\n });\n }\n\n /**\n * Delete the immutablility policy on the blob.\n *\n * @param options - Optional options to delete immutability policy on the blob.\n */\n public async deleteImmutabilityPolicy(\n options?: BlobDeleteImmutabilityPolicyOptions\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-deleteImmutabilityPolicy\", options);\n try {\n return await this.blobContext.deleteImmutabilityPolicy({\n abortSignal: options?.abortSignal,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Set immutablility policy on the blob.\n *\n * @param options - Optional options to set immutability policy on the blob.\n */\n public async setImmutabilityPolicy(\n immutabilityPolicy: BlobImmutabilityPolicy,\n options?: BlobSetImmutabilityPolicyOptions\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setImmutabilityPolicy\", options);\n try {\n return await this.blobContext.setImmutabilityPolicy({\n abortSignal: options?.abortSignal,\n immutabilityPolicyExpiry: immutabilityPolicy.expiriesOn,\n immutabilityPolicyMode: immutabilityPolicy.policyMode,\n modifiedAccessConditions: options?.modifiedAccessCondition,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Set legal hold on the blob.\n *\n * @param options - Optional options to set legal hold on the blob.\n */\n public async setLegalHold(\n legalHoldEnabled: boolean,\n options?: BlobSetLegalHoldOptions\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlobClient-setLegalHold\", options);\n try {\n return await this.blobContext.setLegalHold(legalHoldEnabled, {\n abortSignal: options?.abortSignal,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n\n/**\n * Options to configure {@link AppendBlobClient.create} operation.\n */\nexport interface AppendBlobCreateOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n\n /**\n * Conditions to meet when creating append blobs.\n */\n conditions?: BlobRequestConditions;\n /**\n * HTTP headers to set when creating append blobs. A common header\n * to set is `blobContentType`, enabling the browser to provide functionality\n * based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when creating append blobs.\n */\n metadata?: Metadata;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Blob tags.\n */\n tags?: Tags;\n}\n\n/**\n * Options to configure {@link AppendBlobClient.createIfNotExists} operation.\n */\nexport interface AppendBlobCreateIfNotExistsOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * HTTP headers to set when creating append blobs. A common header to set is\n * `blobContentType`, enabling the browser to provide functionality\n * based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when creating append blobs.\n */\n metadata?: Metadata;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n}\n\n/**\n * Options to configure {@link AppendBlobClient.seal} operation.\n */\nexport interface AppendBlobSealOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet.\n */\n conditions?: AppendBlobRequestConditions;\n}\n\n/**\n * Options to configure the {@link AppendBlobClient.appendBlock} operation.\n */\nexport interface AppendBlobAppendBlockOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when appending append blob blocks.\n */\n conditions?: AppendBlobRequestConditions;\n /**\n * Callback to receive events on the progress of append block operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n /**\n * An MD5 hash of the block content. This hash is used to verify the integrity of the block during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentMD5?: Uint8Array;\n /**\n * A CRC64 hash of the append block content. This hash is used to verify the integrity of the append block during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link AppendBlobClient.appendBlockFromURL} operation.\n */\nexport interface AppendBlobAppendBlockFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when appending append blob blocks.\n */\n conditions?: AppendBlobRequestConditions;\n /**\n * Conditions to meet for the source Azure Blob/File when copying from a URL to the blob.\n */\n sourceConditions?: MatchConditions & ModificationConditions;\n /**\n * An MD5 hash of the append block content from the URI.\n * This hash is used to verify the integrity of the append block during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentMD5?: Uint8Array;\n /**\n * A CRC64 hash of the append block content from the URI.\n * This hash is used to verify the integrity of the append block during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.\n */\n sourceAuthorization?: HttpAuthorization;\n}\n\n/**\n * Contains response data for the {@link appendBlobClient.createIfNotExists} operation.\n */\nexport interface AppendBlobCreateIfNotExistsResponse extends AppendBlobCreateResponse {\n /**\n * Indicate whether the blob is successfully created. Is false when the blob is not changed as it already exists.\n */\n succeeded: boolean;\n}\n\n/**\n * AppendBlobClient defines a set of operations applicable to append blobs.\n */\nexport class AppendBlobClient extends BlobClient {\n /**\n * appendBlobsContext provided by protocol layer.\n */\n private appendBlobContext: AppendBlob;\n\n /**\n *\n * Creates an instance of AppendBlobClient.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param containerName - Container name.\n * @param blobName - Blob name.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n connectionString: string,\n containerName: string,\n blobName: string,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of AppendBlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to an append blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A URL string pointing to Azure Storage append blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/appendblob\". You can\n * append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/appendblob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of AppendBlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to an append blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A URL string pointing to Azure Storage append blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/appendblob\". You can\n * append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/appendblob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: PipelineLike);\n constructor(\n urlOrConnectionString: string,\n credentialOrPipelineOrContainerName:\n | string\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | PipelineLike,\n blobNameOrOptions?: string | StoragePipelineOptions,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n ) {\n // In TypeScript we cannot simply pass all parameters to super() like below so have to duplicate the code instead.\n // super(s, credentialOrPipelineOrContainerNameOrOptions, blobNameOrOptions, options);\n let pipeline: PipelineLike;\n let url: string;\n options = options || {};\n if (isPipelineLike(credentialOrPipelineOrContainerName)) {\n // (url: string, pipeline: Pipeline)\n url = urlOrConnectionString;\n pipeline = credentialOrPipelineOrContainerName;\n } else if (\n (isNode && credentialOrPipelineOrContainerName instanceof StorageSharedKeyCredential) ||\n credentialOrPipelineOrContainerName instanceof AnonymousCredential ||\n isTokenCredential(credentialOrPipelineOrContainerName)\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions) url = urlOrConnectionString;\n url = urlOrConnectionString;\n options = blobNameOrOptions as StoragePipelineOptions;\n pipeline = newPipeline(credentialOrPipelineOrContainerName, options);\n } else if (\n !credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName !== \"string\"\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n url = urlOrConnectionString;\n // The second parameter is undefined. Use anonymous credential.\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else if (\n credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName === \"string\" &&\n blobNameOrOptions &&\n typeof blobNameOrOptions === \"string\"\n ) {\n // (connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)\n const containerName = credentialOrPipelineOrContainerName;\n const blobName = blobNameOrOptions;\n\n const extractedCreds = extractConnectionStringParts(urlOrConnectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey\n );\n url = appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n );\n\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n\n pipeline = newPipeline(sharedKeyCredential, options);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n url =\n appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n ) +\n \"?\" +\n extractedCreds.accountSas;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\"\n );\n }\n } else {\n throw new Error(\"Expecting non-empty strings for containerName and blobName parameters\");\n }\n super(url, pipeline);\n this.appendBlobContext = new AppendBlob(this.storageClientContext);\n }\n\n /**\n * Creates a new AppendBlobClient object identical to the source but with the\n * specified snapshot timestamp.\n * Provide \"\" will remove the snapshot and return a Client to the base blob.\n *\n * @param snapshot - The snapshot timestamp.\n * @returns A new AppendBlobClient object identical to the source but with the specified snapshot timestamp.\n */\n public withSnapshot(snapshot: string): AppendBlobClient {\n return new AppendBlobClient(\n setURLParameter(\n this.url,\n URLConstants.Parameters.SNAPSHOT,\n snapshot.length === 0 ? undefined : snapshot\n ),\n this.pipeline\n );\n }\n\n /**\n * Creates a 0-length append blob. Call AppendBlock to append data to an append blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-blob\n *\n * @param options - Options to the Append Block Create operation.\n *\n *\n * Example usage:\n *\n * ```js\n * const appendBlobClient = containerClient.getAppendBlobClient(\"\");\n * await appendBlobClient.create();\n * ```\n */\n public async create(options: AppendBlobCreateOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"AppendBlobClient-create\", options);\n options.conditions = options.conditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n\n return await this.appendBlobContext.create(0, {\n abortSignal: options.abortSignal,\n blobHttpHeaders: options.blobHTTPHeaders,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n blobTagsString: toBlobTagsString(options.tags),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a 0-length append blob. Call AppendBlock to append data to an append blob.\n * If the blob with the same name already exists, the content of the existing blob will remain unchanged.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-blob\n *\n * @param options -\n */\n public async createIfNotExists(\n options: AppendBlobCreateIfNotExistsOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"AppendBlobClient-createIfNotExists\", options);\n const conditions = { ifNoneMatch: ETagAny };\n try {\n const res = await this.create({\n ...updatedOptions,\n conditions,\n });\n return {\n succeeded: true,\n ...res,\n _response: res._response, // _response is made non-enumerable\n };\n } catch (e) {\n if (e.details?.errorCode === \"BlobAlreadyExists\") {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: \"Expected exception when creating a blob only if it does not already exist.\",\n });\n return {\n succeeded: false,\n ...e.response?.parsedHeaders,\n _response: e.response,\n };\n }\n\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Seals the append blob, making it read only.\n *\n * @param options -\n */\n public async seal(options: AppendBlobSealOptions = {}): Promise {\n const { span, updatedOptions } = createSpan(\"AppendBlobClient-seal\", options);\n options.conditions = options.conditions || {};\n try {\n return await this.appendBlobContext.seal({\n abortSignal: options.abortSignal,\n appendPositionAccessConditions: options.conditions,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Commits a new block of data to the end of the existing append blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/append-block\n *\n * @param body - Data to be appended.\n * @param contentLength - Length of the body in bytes.\n * @param options - Options to the Append Block operation.\n *\n *\n * Example usage:\n *\n * ```js\n * const content = \"Hello World!\";\n *\n * // Create a new append blob and append data to the blob.\n * const newAppendBlobClient = containerClient.getAppendBlobClient(\"\");\n * await newAppendBlobClient.create();\n * await newAppendBlobClient.appendBlock(content, content.length);\n *\n * // Append data to an existing append blob.\n * const existingAppendBlobClient = containerClient.getAppendBlobClient(\"\");\n * await existingAppendBlobClient.appendBlock(content, content.length);\n * ```\n */\n public async appendBlock(\n body: HttpRequestBody,\n contentLength: number,\n options: AppendBlobAppendBlockOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"AppendBlobClient-appendBlock\", options);\n options.conditions = options.conditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n\n return await this.appendBlobContext.appendBlock(contentLength, body, {\n abortSignal: options.abortSignal,\n appendPositionAccessConditions: options.conditions,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n requestOptions: {\n onUploadProgress: options.onProgress,\n },\n transactionalContentMD5: options.transactionalContentMD5,\n transactionalContentCrc64: options.transactionalContentCrc64,\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * The Append Block operation commits a new block of data to the end of an existing append blob\n * where the contents are read from a source url.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/append-block-from-url\n *\n * @param sourceURL -\n * The url to the blob that will be the source of the copy. A source blob in the same storage account can\n * be authenticated via Shared Key. However, if the source is a blob in another account, the source blob\n * must either be public or must be authenticated via a shared access signature. If the source blob is\n * public, no authentication is required to perform the operation.\n * @param sourceOffset - Offset in source to be appended\n * @param count - Number of bytes to be appended as a block\n * @param options -\n */\n public async appendBlockFromURL(\n sourceURL: string,\n sourceOffset: number,\n count: number,\n options: AppendBlobAppendBlockFromURLOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"AppendBlobClient-appendBlockFromURL\", options);\n options.conditions = options.conditions || {};\n options.sourceConditions = options.sourceConditions || {};\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n\n return await this.appendBlobContext.appendBlockFromUrl(sourceURL, 0, {\n abortSignal: options.abortSignal,\n sourceRange: rangeToString({ offset: sourceOffset, count }),\n sourceContentMD5: options.sourceContentMD5,\n sourceContentCrc64: options.sourceContentCrc64,\n leaseAccessConditions: options.conditions,\n appendPositionAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n sourceModifiedAccessConditions: {\n sourceIfMatch: options.sourceConditions.ifMatch,\n sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,\n sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,\n sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,\n },\n copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization),\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n\n/**\n * Options to configure {@link BlockBlobClient.upload} operation.\n */\nexport interface BlockBlobUploadOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when uploading to the block blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * HTTP headers to set when uploading to a block blob. A common header to set is\n * `blobContentType`, enabling the browser to provide functionality\n * based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when uploading to a block blob.\n */\n metadata?: Metadata;\n /**\n * Callback to receive events on the progress of upload operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Blob tags.\n */\n tags?: Tags;\n}\n\n/**\n * Options to configure {@link BlockBlobClient.syncUploadFromURL} operation.\n */\nexport interface BlockBlobSyncUploadFromURLOptions extends CommonOptions {\n /**\n * Server timeout in seconds.\n * For more information, @see https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/setting-timeouts-for-blob-service-operations\n */\n timeoutInSeconds?: number;\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Optional. Specifies a user-defined name-value pair associated with the blob. If no name-value\n * pairs are specified, the operation will copy the metadata from the source blob or file to the\n * destination blob. If one or more name-value pairs are specified, the destination blob is\n * created with the specified metadata, and metadata is not copied from the source blob or file.\n * Note that beginning with version 2009-09-19, metadata names must adhere to the naming rules\n * for C# identifiers. See Naming and Referencing Containers, Blobs, and Metadata for more\n * information.\n */\n metadata?: Metadata;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | string;\n /**\n * Specify the md5 calculated for the range of bytes that must be read from the copy source.\n */\n sourceContentMD5?: Uint8Array;\n /**\n * Blob tags.\n */\n tags?: Tags;\n /**\n * Optional, default is true. Indicates if properties from the source blob should be copied.\n */\n copySourceBlobProperties?: boolean;\n /**\n * HTTP headers to set when uploading to a block blob.\n *\n * A common header to set is `blobContentType`, enabling the browser to provide functionality\n * based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * Conditions to meet for the destination Azure Blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Conditions to meet for the source Azure Blob.\n */\n sourceConditions?: ModifiedAccessConditions;\n /**\n * Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.\n */\n sourceAuthorization?: HttpAuthorization;\n}\n\n/**\n * Blob query error type.\n */\nexport interface BlobQueryError {\n /**\n * Whether error is fatal. Fatal error will stop query.\n */\n isFatal: boolean;\n /**\n * Error name.\n */\n name: string;\n /**\n * Position in bytes of the query.\n */\n position: number;\n /**\n * Error description.\n */\n description: string;\n}\n\n/**\n * Options to query blob with JSON format.\n */\nexport interface BlobQueryJsonTextConfiguration {\n /**\n * Record separator.\n */\n recordSeparator: string;\n /**\n * Query for a JSON format blob.\n */\n kind: \"json\";\n}\n\n/**\n * Options to query blob with CSV format.\n */\nexport interface BlobQueryCsvTextConfiguration {\n /**\n * Record separator.\n */\n recordSeparator: string;\n /**\n * Query for a CSV format blob.\n */\n kind: \"csv\";\n /**\n * Column separator. Default is \",\".\n */\n columnSeparator?: string;\n /**\n * Field quote.\n */\n fieldQuote?: string;\n /**\n * Escape character.\n */\n escapeCharacter?: string;\n /**\n * Has headers. Default is false.\n */\n hasHeaders?: boolean;\n}\n\n/**\n * Options to query blob with Apache Arrow format. Only valid for {@link BlockBlobQueryOptions.outputTextConfiguration}.\n */\nexport interface BlobQueryArrowConfiguration {\n /**\n * Kind.\n */\n kind: \"arrow\";\n\n /**\n * List of {@link BlobQueryArrowField} describing the schema of the data.\n */\n schema: BlobQueryArrowField[];\n}\n\n/**\n * Options to query blob with Parquet format. Only valid for {@link BlockBlobQueryOptions.inputTextConfiguration}.\n */\nexport interface BlobQueryParquetConfiguration {\n /**\n * Kind.\n */\n kind: \"parquet\";\n}\n\n/**\n * Options to configure {@link BlockBlobClient.query} operation.\n */\nexport interface BlockBlobQueryOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Configurations for the query input.\n */\n inputTextConfiguration?:\n | BlobQueryJsonTextConfiguration\n | BlobQueryCsvTextConfiguration\n | BlobQueryParquetConfiguration;\n /**\n * Configurations for the query output.\n */\n outputTextConfiguration?:\n | BlobQueryJsonTextConfiguration\n | BlobQueryCsvTextConfiguration\n | BlobQueryArrowConfiguration;\n /**\n * Callback to receive events on the progress of query operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n /**\n * Callback to receive error events during the query operaiton.\n */\n onError?: (error: BlobQueryError) => void;\n /**\n * Conditions to meet when uploading to the block blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n}\n\n/**\n * Options to configure {@link BlockBlobClient.stageBlock} operation.\n */\nexport interface BlockBlobStageBlockOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * If specified, contains the lease id that must be matched and lease with this id\n * must be active in order for the operation to succeed.\n */\n conditions?: LeaseAccessConditions;\n /**\n * Callback to receive events on the progress of stage block operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n /**\n * An MD5 hash of the block content. This hash is used to verify the integrity of the block during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentMD5?: Uint8Array;\n\n /**\n * A CRC64 hash of the block content. This hash is used to verify the integrity of the block during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure {@link BlockBlobClient.stageBlockFromURL} operation.\n */\nexport interface BlockBlobStageBlockFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Specifies the bytes of the source Blob/File to upload.\n * If not specified, the entire content is uploaded as a single block.\n */\n range?: Range;\n /**\n * If specified, contains the lease id that must be matched and lease with this id\n * must be active in order for the operation to succeed.\n */\n conditions?: LeaseAccessConditions;\n /**\n * An MD5 hash of the content from the URI.\n * This hash is used to verify the integrity of the content during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentMD5?: Uint8Array;\n /**\n * A CRC64 hash of the content from the URI.\n * This hash is used to verify the integrity of the content during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.\n */\n sourceAuthorization?: HttpAuthorization;\n}\n\n/**\n * Options to configure {@link BlockBlobClient.commitBlockList} operation.\n */\nexport interface BlockBlobCommitBlockListOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when committing the block list.\n */\n conditions?: BlobRequestConditions;\n /**\n * HTTP headers to set when committing block list.\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when committing block list.\n */\n metadata?: Metadata;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | string;\n\n /**\n * Blob tags.\n */\n tags?: Tags;\n}\n\n/**\n * Options to configure {@link BlockBlobClient.getBlockList} operation.\n */\nexport interface BlockBlobGetBlockListOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * If specified, contains the lease id that must be matched and lease with this id\n * must be active in order for the operation to succeed.\n */\n conditions?: LeaseAccessConditions & TagConditions;\n}\n\n/**\n * Option interface for the {@link BlockBlobClient.uploadStream} operation.\n */\nexport interface BlockBlobUploadStreamOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n\n /**\n * Blob HTTP Headers.\n *\n * A common header to set is `blobContentType`, enabling the\n * browser to provide functionality based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n\n /**\n * Metadata of block blob.\n */\n metadata?: { [propertyName: string]: string };\n\n /**\n * Access conditions headers.\n */\n conditions?: BlobRequestConditions;\n\n /**\n * Progress updater.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n\n /**\n * Blob tags.\n */\n tags?: Tags;\n\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | string;\n}\n/**\n * Option interface for {@link BlockBlobClient.uploadFile} and {@link BlockBlobClient.uploadSeekableStream}.\n */\nexport interface BlockBlobParallelUploadOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n\n /**\n * Destination block blob size in bytes.\n */\n blockSize?: number;\n\n /**\n * Blob size threshold in bytes to start concurrency uploading.\n * Default value is 256MB, blob size less than this option will\n * be uploaded via one I/O operation without concurrency.\n * You can customize a value less equal than the default value.\n */\n maxSingleShotSize?: number;\n\n /**\n * Progress updater.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n\n /**\n * Blob HTTP Headers. A common header to set is\n * `blobContentType`, enabling the browser to provide\n * functionality based on file type.\n *\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n\n /**\n * Metadata of block blob.\n */\n metadata?: { [propertyName: string]: string };\n\n /**\n * Access conditions headers.\n */\n conditions?: BlobRequestConditions;\n\n /**\n * Concurrency of parallel uploading. Must be greater than or equal to 0.\n */\n concurrency?: number;\n\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n\n /**\n * Blob tags.\n */\n tags?: Tags;\n\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: BlockBlobTier | string;\n}\n\n/**\n * Response type for {@link BlockBlobClient.uploadFile}, {@link BlockBlobClient.uploadStream}, and\n * {@link BlockBlobClient.uploadBrowserDate}.\n */\nexport type BlobUploadCommonResponse = BlockBlobUploadHeaders & {\n /**\n * The underlying HTTP response.\n */\n _response: HttpResponse;\n};\n\n/**\n * BlockBlobClient defines a set of operations applicable to block blobs.\n */\nexport class BlockBlobClient extends BlobClient {\n /**\n * blobContext provided by protocol layer.\n *\n * Note. Ideally BlobClient should set BlobClient.blobContext to protected. However, API\n * extractor has issue blocking that. Here we redecelare _blobContext in BlockBlobClient.\n */\n private _blobContext: StorageBlob;\n\n /**\n * blockBlobContext provided by protocol layer.\n */\n private blockBlobContext: BlockBlob;\n\n /**\n *\n * Creates an instance of BlockBlobClient.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param containerName - Container name.\n * @param blobName - Blob name.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n connectionString: string,\n containerName: string,\n blobName: string,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of BlockBlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to a block blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A URL string pointing to Azure Storage block blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blockblob\". You can\n * append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blockblob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of BlockBlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to a block blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A URL string pointing to Azure Storage block blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blockblob\". You can\n * append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/blockblob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: PipelineLike);\n constructor(\n urlOrConnectionString: string,\n credentialOrPipelineOrContainerName?:\n | string\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | PipelineLike,\n blobNameOrOptions?: string | StoragePipelineOptions,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n ) {\n // In TypeScript we cannot simply pass all parameters to super() like below so have to duplicate the code instead.\n // super(s, credentialOrPipelineOrContainerNameOrOptions, blobNameOrOptions, options);\n let pipeline: PipelineLike;\n let url: string;\n options = options || {};\n if (isPipelineLike(credentialOrPipelineOrContainerName)) {\n // (url: string, pipeline: Pipeline)\n url = urlOrConnectionString;\n pipeline = credentialOrPipelineOrContainerName;\n } else if (\n (isNode && credentialOrPipelineOrContainerName instanceof StorageSharedKeyCredential) ||\n credentialOrPipelineOrContainerName instanceof AnonymousCredential ||\n isTokenCredential(credentialOrPipelineOrContainerName)\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n url = urlOrConnectionString;\n options = blobNameOrOptions as StoragePipelineOptions;\n pipeline = newPipeline(credentialOrPipelineOrContainerName, options);\n } else if (\n !credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName !== \"string\"\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n // The second parameter is undefined. Use anonymous credential.\n url = urlOrConnectionString;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else if (\n credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName === \"string\" &&\n blobNameOrOptions &&\n typeof blobNameOrOptions === \"string\"\n ) {\n // (connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)\n const containerName = credentialOrPipelineOrContainerName;\n const blobName = blobNameOrOptions;\n\n const extractedCreds = extractConnectionStringParts(urlOrConnectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey\n );\n url = appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n );\n\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n\n pipeline = newPipeline(sharedKeyCredential, options);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n url =\n appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n ) +\n \"?\" +\n extractedCreds.accountSas;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\"\n );\n }\n } else {\n throw new Error(\"Expecting non-empty strings for containerName and blobName parameters\");\n }\n super(url, pipeline);\n this.blockBlobContext = new BlockBlob(this.storageClientContext);\n this._blobContext = new StorageBlob(this.storageClientContext);\n }\n\n /**\n * Creates a new BlockBlobClient object identical to the source but with the\n * specified snapshot timestamp.\n * Provide \"\" will remove the snapshot and return a URL to the base blob.\n *\n * @param snapshot - The snapshot timestamp.\n * @returns A new BlockBlobClient object identical to the source but with the specified snapshot timestamp.\n */\n public withSnapshot(snapshot: string): BlockBlobClient {\n return new BlockBlobClient(\n setURLParameter(\n this.url,\n URLConstants.Parameters.SNAPSHOT,\n snapshot.length === 0 ? undefined : snapshot\n ),\n this.pipeline\n );\n }\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Quick query for a JSON or CSV formatted blob.\n *\n * Example usage (Node.js):\n *\n * ```js\n * // Query and convert a blob to a string\n * const queryBlockBlobResponse = await blockBlobClient.query(\"select * from BlobStorage\");\n * const downloaded = (await streamToBuffer(queryBlockBlobResponse.readableStreamBody)).toString();\n * console.log(\"Query blob content:\", downloaded);\n *\n * async function streamToBuffer(readableStream) {\n * return new Promise((resolve, reject) => {\n * const chunks = [];\n * readableStream.on(\"data\", (data) => {\n * chunks.push(data instanceof Buffer ? data : Buffer.from(data));\n * });\n * readableStream.on(\"end\", () => {\n * resolve(Buffer.concat(chunks));\n * });\n * readableStream.on(\"error\", reject);\n * });\n * }\n * ```\n *\n * @param query -\n * @param options -\n */\n public async query(\n query: string,\n options: BlockBlobQueryOptions = {}\n ): Promise {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-query\", options);\n\n try {\n if (!isNode) {\n throw new Error(\"This operation currently is only supported in Node.js.\");\n }\n\n const response = await this._blobContext.query({\n abortSignal: options.abortSignal,\n queryRequest: {\n queryType: \"SQL\",\n expression: query,\n inputSerialization: toQuerySerialization(options.inputTextConfiguration),\n outputSerialization: toQuerySerialization(options.outputTextConfiguration),\n },\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n return new BlobQueryResponse(response, {\n abortSignal: options.abortSignal,\n onProgress: options.onProgress,\n onError: options.onError,\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new block blob, or updates the content of an existing block blob.\n * Updating an existing block blob overwrites any existing metadata on the blob.\n * Partial updates are not supported; the content of the existing blob is\n * overwritten with the new content. To perform a partial update of a block blob's,\n * use {@link stageBlock} and {@link commitBlockList}.\n *\n * This is a non-parallel uploading method, please use {@link uploadFile},\n * {@link uploadStream} or {@link uploadBrowserData} for better performance\n * with concurrency uploading.\n *\n * @see https://docs.microsoft.com/rest/api/storageservices/put-blob\n *\n * @param body - Blob, string, ArrayBuffer, ArrayBufferView or a function\n * which returns a new Readable stream whose offset is from data source beginning.\n * @param contentLength - Length of body in bytes. Use Buffer.byteLength() to calculate body length for a\n * string including non non-Base64/Hex-encoded characters.\n * @param options - Options to the Block Blob Upload operation.\n * @returns Response data for the Block Blob Upload operation.\n *\n * Example usage:\n *\n * ```js\n * const content = \"Hello world!\";\n * const uploadBlobResponse = await blockBlobClient.upload(content, content.length);\n * ```\n */\n public async upload(\n body: HttpRequestBody,\n contentLength: number,\n options: BlockBlobUploadOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-upload\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blockBlobContext.upload(contentLength, body, {\n abortSignal: options.abortSignal,\n blobHttpHeaders: options.blobHTTPHeaders,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n requestOptions: {\n onUploadProgress: options.onProgress,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n tier: toAccessTier(options.tier),\n blobTagsString: toBlobTagsString(options.tags),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a new Block Blob where the contents of the blob are read from a given URL.\n * This API is supported beginning with the 2020-04-08 version. Partial updates\n * are not supported with Put Blob from URL; the content of an existing blob is overwritten with\n * the content of the new blob. To perform partial updates to a block blob’s contents using a\n * source URL, use {@link stageBlockFromURL} and {@link commitBlockList}.\n *\n * @param sourceURL - Specifies the URL of the blob. The value\n * may be a URL of up to 2 KB in length that specifies a blob.\n * The value should be URL-encoded as it would appear\n * in a request URI. The source blob must either be public\n * or must be authenticated via a shared access signature.\n * If the source blob is public, no authentication is required\n * to perform the operation. Here are some examples of source object URLs:\n * - https://myaccount.blob.core.windows.net/mycontainer/myblob\n * - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=\n * @param options - Optional parameters.\n */\n\n public async syncUploadFromURL(\n sourceURL: string,\n options: BlockBlobSyncUploadFromURLOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-syncUploadFromURL\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blockBlobContext.putBlobFromUrl(0, sourceURL, {\n ...options,\n blobHttpHeaders: options.blobHTTPHeaders,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions.tagConditions,\n },\n sourceModifiedAccessConditions: {\n sourceIfMatch: options.sourceConditions?.ifMatch,\n sourceIfModifiedSince: options.sourceConditions?.ifModifiedSince,\n sourceIfNoneMatch: options.sourceConditions?.ifNoneMatch,\n sourceIfUnmodifiedSince: options.sourceConditions?.ifUnmodifiedSince,\n sourceIfTags: options.sourceConditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization),\n tier: toAccessTier(options.tier),\n blobTagsString: toBlobTagsString(options.tags),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Uploads the specified block to the block blob's \"staging area\" to be later\n * committed by a call to commitBlockList.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-block\n *\n * @param blockId - A 64-byte value that is base64-encoded\n * @param body - Data to upload to the staging area.\n * @param contentLength - Number of bytes to upload.\n * @param options - Options to the Block Blob Stage Block operation.\n * @returns Response data for the Block Blob Stage Block operation.\n */\n public async stageBlock(\n blockId: string,\n body: HttpRequestBody,\n contentLength: number,\n options: BlockBlobStageBlockOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-stageBlock\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blockBlobContext.stageBlock(blockId, contentLength, body, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n requestOptions: {\n onUploadProgress: options.onProgress,\n },\n transactionalContentMD5: options.transactionalContentMD5,\n transactionalContentCrc64: options.transactionalContentCrc64,\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * The Stage Block From URL operation creates a new block to be committed as part\n * of a blob where the contents are read from a URL.\n * This API is available starting in version 2018-03-28.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/put-block-from-url\n *\n * @param blockId - A 64-byte value that is base64-encoded\n * @param sourceURL - Specifies the URL of the blob. The value\n * may be a URL of up to 2 KB in length that specifies a blob.\n * The value should be URL-encoded as it would appear\n * in a request URI. The source blob must either be public\n * or must be authenticated via a shared access signature.\n * If the source blob is public, no authentication is required\n * to perform the operation. Here are some examples of source object URLs:\n * - https://myaccount.blob.core.windows.net/mycontainer/myblob\n * - https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=\n * @param offset - From which position of the blob to download, greater than or equal to 0\n * @param count - How much data to be downloaded, greater than 0. Will download to the end when undefined\n * @param options - Options to the Block Blob Stage Block From URL operation.\n * @returns Response data for the Block Blob Stage Block From URL operation.\n */\n public async stageBlockFromURL(\n blockId: string,\n sourceURL: string,\n offset: number = 0,\n count?: number,\n options: BlockBlobStageBlockFromURLOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-stageBlockFromURL\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blockBlobContext.stageBlockFromURL(blockId, 0, sourceURL, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n sourceContentMD5: options.sourceContentMD5,\n sourceContentCrc64: options.sourceContentCrc64,\n sourceRange: offset === 0 && !count ? undefined : rangeToString({ offset, count }),\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Writes a blob by specifying the list of block IDs that make up the blob.\n * In order to be written as part of a blob, a block must have been successfully written\n * to the server in a prior {@link stageBlock} operation. You can call {@link commitBlockList} to\n * update a blob by uploading only those blocks that have changed, then committing the new and existing\n * blocks together. Any blocks not specified in the block list and permanently deleted.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-block-list\n *\n * @param blocks - Array of 64-byte value that is base64-encoded\n * @param options - Options to the Block Blob Commit Block List operation.\n * @returns Response data for the Block Blob Commit Block List operation.\n */\n public async commitBlockList(\n blocks: string[],\n options: BlockBlobCommitBlockListOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-commitBlockList\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.blockBlobContext.commitBlockList(\n { latest: blocks },\n {\n abortSignal: options.abortSignal,\n blobHttpHeaders: options.blobHTTPHeaders,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n tier: toAccessTier(options.tier),\n blobTagsString: toBlobTagsString(options.tags),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n }\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns the list of blocks that have been uploaded as part of a block blob\n * using the specified block list filter.\n * @see https://docs.microsoft.com/rest/api/storageservices/get-block-list\n *\n * @param listType - Specifies whether to return the list of committed blocks,\n * the list of uncommitted blocks, or both lists together.\n * @param options - Options to the Block Blob Get Block List operation.\n * @returns Response data for the Block Blob Get Block List operation.\n */\n public async getBlockList(\n listType: BlockListType,\n options: BlockBlobGetBlockListOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-getBlockList\", options);\n try {\n const res = await this.blockBlobContext.getBlockList(listType, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n\n if (!res.committedBlocks) {\n res.committedBlocks = [];\n }\n\n if (!res.uncommittedBlocks) {\n res.uncommittedBlocks = [];\n }\n\n return res;\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n // High level functions\n\n /**\n * Uploads a Buffer(Node.js)/Blob(browsers)/ArrayBuffer/ArrayBufferView object to a BlockBlob.\n *\n * When data length is no more than the specifiled {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is\n * {@link BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES}), this method will use 1 {@link upload} call to finish the upload.\n * Otherwise, this method will call {@link stageBlock} to upload blocks, and finally call {@link commitBlockList}\n * to commit the block list.\n *\n * A common {@link BlockBlobParallelUploadOptions.blobHTTPHeaders} option to set is\n * `blobContentType`, enabling the browser to provide\n * functionality based on file type.\n *\n * @param data - Buffer(Node.js), Blob, ArrayBuffer or ArrayBufferView\n * @param options -\n */\n public async uploadData(\n data: Buffer | Blob | ArrayBuffer | ArrayBufferView,\n options: BlockBlobParallelUploadOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-uploadData\", options);\n try {\n if (isNode) {\n let buffer: Buffer;\n if (data instanceof Buffer) {\n buffer = data;\n } else if (data instanceof ArrayBuffer) {\n buffer = Buffer.from(data);\n } else {\n data = data as ArrayBufferView;\n buffer = Buffer.from(data.buffer, data.byteOffset, data.byteLength);\n }\n\n return this.uploadSeekableInternal(\n (offset: number, size: number): Buffer => buffer.slice(offset, offset + size),\n buffer.byteLength,\n updatedOptions\n );\n } else {\n const browserBlob = new Blob([data]);\n return this.uploadSeekableInternal(\n (offset: number, size: number): Blob => browserBlob.slice(offset, offset + size),\n browserBlob.size,\n updatedOptions\n );\n }\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * ONLY AVAILABLE IN BROWSERS.\n *\n * Uploads a browser Blob/File/ArrayBuffer/ArrayBufferView object to block blob.\n *\n * When buffer length lesser than or equal to 256MB, this method will use 1 upload call to finish the upload.\n * Otherwise, this method will call {@link stageBlock} to upload blocks, and finally call\n * {@link commitBlockList} to commit the block list.\n *\n * A common {@link BlockBlobParallelUploadOptions.blobHTTPHeaders} option to set is\n * `blobContentType`, enabling the browser to provide\n * functionality based on file type.\n *\n * @deprecated Use {@link uploadData} instead.\n *\n * @param browserData - Blob, File, ArrayBuffer or ArrayBufferView\n * @param options - Options to upload browser data.\n * @returns Response data for the Blob Upload operation.\n */\n public async uploadBrowserData(\n browserData: Blob | ArrayBuffer | ArrayBufferView,\n options: BlockBlobParallelUploadOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-uploadBrowserData\", options);\n try {\n const browserBlob = new Blob([browserData]);\n return await this.uploadSeekableInternal(\n (offset: number, size: number): Blob => browserBlob.slice(offset, offset + size),\n browserBlob.size,\n updatedOptions\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n *\n * Uploads data to block blob. Requires a bodyFactory as the data source,\n * which need to return a {@link HttpRequestBody} object with the offset and size provided.\n *\n * When data length is no more than the specified {@link BlockBlobParallelUploadOptions.maxSingleShotSize} (default is\n * {@link BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES}), this method will use 1 {@link upload} call to finish the upload.\n * Otherwise, this method will call {@link stageBlock} to upload blocks, and finally call {@link commitBlockList}\n * to commit the block list.\n *\n * @param bodyFactory -\n * @param size - size of the data to upload.\n * @param options - Options to Upload to Block Blob operation.\n * @returns Response data for the Blob Upload operation.\n */\n private async uploadSeekableInternal(\n bodyFactory: (offset: number, size: number) => HttpRequestBody,\n size: number,\n options: BlockBlobParallelUploadOptions = {}\n ): Promise {\n if (!options.blockSize) {\n options.blockSize = 0;\n }\n if (options.blockSize < 0 || options.blockSize > BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES) {\n throw new RangeError(\n `blockSize option must be >= 0 and <= ${BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES}`\n );\n }\n\n if (options.maxSingleShotSize !== 0 && !options.maxSingleShotSize) {\n options.maxSingleShotSize = BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES;\n }\n if (\n options.maxSingleShotSize < 0 ||\n options.maxSingleShotSize > BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES\n ) {\n throw new RangeError(\n `maxSingleShotSize option must be >= 0 and <= ${BLOCK_BLOB_MAX_UPLOAD_BLOB_BYTES}`\n );\n }\n\n if (options.blockSize === 0) {\n if (size > BLOCK_BLOB_MAX_STAGE_BLOCK_BYTES * BLOCK_BLOB_MAX_BLOCKS) {\n throw new RangeError(`${size} is too larger to upload to a block blob.`);\n }\n if (size > options.maxSingleShotSize) {\n options.blockSize = Math.ceil(size / BLOCK_BLOB_MAX_BLOCKS);\n if (options.blockSize < DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES) {\n options.blockSize = DEFAULT_BLOB_DOWNLOAD_BLOCK_BYTES;\n }\n }\n }\n if (!options.blobHTTPHeaders) {\n options.blobHTTPHeaders = {};\n }\n if (!options.conditions) {\n options.conditions = {};\n }\n\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-uploadSeekableInternal\", options);\n\n try {\n if (size <= options.maxSingleShotSize) {\n return await this.upload(bodyFactory(0, size), size, updatedOptions);\n }\n\n const numBlocks: number = Math.floor((size - 1) / options.blockSize) + 1;\n if (numBlocks > BLOCK_BLOB_MAX_BLOCKS) {\n throw new RangeError(\n `The buffer's size is too big or the BlockSize is too small;` +\n `the number of blocks must be <= ${BLOCK_BLOB_MAX_BLOCKS}`\n );\n }\n\n const blockList: string[] = [];\n const blockIDPrefix = generateUuid();\n let transferProgress: number = 0;\n\n const batch = new Batch(options.concurrency);\n for (let i = 0; i < numBlocks; i++) {\n batch.addOperation(async (): Promise => {\n const blockID = generateBlockID(blockIDPrefix, i);\n const start = options.blockSize! * i;\n const end = i === numBlocks - 1 ? size : start + options.blockSize!;\n const contentLength = end - start;\n blockList.push(blockID);\n await this.stageBlock(blockID, bodyFactory(start, contentLength), contentLength, {\n abortSignal: options.abortSignal,\n conditions: options.conditions,\n encryptionScope: options.encryptionScope,\n tracingOptions: updatedOptions.tracingOptions,\n });\n // Update progress after block is successfully uploaded to server, in case of block trying\n // TODO: Hook with convenience layer progress event in finer level\n transferProgress += contentLength;\n if (options.onProgress) {\n options.onProgress!({\n loadedBytes: transferProgress,\n });\n }\n });\n }\n await batch.do();\n\n return this.commitBlockList(blockList, updatedOptions);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Uploads a local file in blocks to a block blob.\n *\n * When file size lesser than or equal to 256MB, this method will use 1 upload call to finish the upload.\n * Otherwise, this method will call stageBlock to upload blocks, and finally call commitBlockList\n * to commit the block list.\n *\n * @param filePath - Full path of local file\n * @param options - Options to Upload to Block Blob operation.\n * @returns Response data for the Blob Upload operation.\n */\n public async uploadFile(\n filePath: string,\n options: BlockBlobParallelUploadOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-uploadFile\", options);\n try {\n const size = (await fsStat(filePath)).size;\n return await this.uploadSeekableInternal(\n (offset, count) => {\n return () =>\n fsCreateReadStream(filePath, {\n autoClose: true,\n end: count ? offset + count - 1 : Infinity,\n start: offset,\n });\n },\n size,\n {\n ...options,\n tracingOptions: {\n ...options!.tracingOptions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n },\n }\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * ONLY AVAILABLE IN NODE.JS RUNTIME.\n *\n * Uploads a Node.js Readable stream into block blob.\n *\n * PERFORMANCE IMPROVEMENT TIPS:\n * * Input stream highWaterMark is better to set a same value with bufferSize\n * parameter, which will avoid Buffer.concat() operations.\n *\n * @param stream - Node.js Readable stream\n * @param bufferSize - Size of every buffer allocated, also the block size in the uploaded block blob. Default value is 8MB\n * @param maxConcurrency - Max concurrency indicates the max number of buffers that can be allocated,\n * positive correlation with max uploading concurrency. Default value is 5\n * @param options - Options to Upload Stream to Block Blob operation.\n * @returns Response data for the Blob Upload operation.\n */\n public async uploadStream(\n stream: Readable,\n bufferSize: number = DEFAULT_BLOCK_BUFFER_SIZE_BYTES,\n maxConcurrency: number = 5,\n options: BlockBlobUploadStreamOptions = {}\n ): Promise {\n if (!options.blobHTTPHeaders) {\n options.blobHTTPHeaders = {};\n }\n if (!options.conditions) {\n options.conditions = {};\n }\n\n const { span, updatedOptions } = createSpan(\"BlockBlobClient-uploadStream\", options);\n\n try {\n let blockNum = 0;\n const blockIDPrefix = generateUuid();\n let transferProgress: number = 0;\n const blockList: string[] = [];\n\n const scheduler = new BufferScheduler(\n stream,\n bufferSize,\n maxConcurrency,\n async (body, length) => {\n const blockID = generateBlockID(blockIDPrefix, blockNum);\n blockList.push(blockID);\n blockNum++;\n\n await this.stageBlock(blockID, body, length, {\n conditions: options.conditions,\n encryptionScope: options.encryptionScope,\n tracingOptions: updatedOptions.tracingOptions,\n });\n\n // Update progress after block is successfully uploaded to server, in case of block trying\n transferProgress += length;\n if (options.onProgress) {\n options.onProgress({ loadedBytes: transferProgress });\n }\n },\n // concurrency should set a smaller value than maxConcurrency, which is helpful to\n // reduce the possibility when a outgoing handler waits for stream data, in\n // this situation, outgoing handlers are blocked.\n // Outgoing queue shouldn't be empty.\n Math.ceil((maxConcurrency / 4) * 3)\n );\n await scheduler.do();\n\n return await this.commitBlockList(blockList, {\n ...options,\n tracingOptions: {\n ...options!.tracingOptions,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n },\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n\n/**\n * Options to configure the {@link PageBlobClient.create} operation.\n */\nexport interface PageBlobCreateOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when creating a page blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * A user-controlled value that can be used to track requests.\n * The value must be between 0 and 2^63 - 1. The default value is 0.\n */\n blobSequenceNumber?: number;\n /**\n * HTTP headers to set when creating a page blob.\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when creating append blobs.\n */\n metadata?: Metadata;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: PremiumPageBlobTier | string;\n /**\n * Blob tags.\n */\n tags?: Tags;\n}\n\n/**\n * Options to configure the {@link PageBlobClient.createIfNotExists} operation.\n */\nexport interface PageBlobCreateIfNotExistsOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * A user-controlled value that can be used to track requests.\n * The value must be between 0 and 2^63 - 1. The default value is 0.\n */\n blobSequenceNumber?: number;\n /**\n * HTTP headers to set when creating a page blob.\n */\n blobHTTPHeaders?: BlobHTTPHeaders;\n /**\n * A collection of key-value string pair to associate with the blob when creating append blobs.\n */\n metadata?: Metadata;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Optional. Specifies immutability policy for a blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n immutabilityPolicy?: BlobImmutabilityPolicy;\n /**\n * Optional. Indicates if a legal hold should be placed on the blob.\n * Note that is parameter is only applicable to a blob within a container that\n * has version level worm enabled.\n */\n legalHold?: boolean;\n /**\n * Access tier.\n * More Details - https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers\n */\n tier?: PremiumPageBlobTier | string;\n}\n\n/**\n * Options to configure the {@link PageBlobClient.uploadPages} operation.\n */\nexport interface PageBlobUploadPagesOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when uploading pages.\n */\n conditions?: PageBlobRequestConditions;\n /**\n * Callback to receive events on the progress of upload pages operation.\n */\n onProgress?: (progress: TransferProgressEvent) => void;\n /**\n * An MD5 hash of the content. This hash is used to verify the integrity of the content during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentMD5?: Uint8Array;\n /**\n * A CRC64 hash of the content. This hash is used to verify the integrity of the content during transport.\n * When this is specified, the storage service compares the hash of the content that has arrived with this value.\n *\n * transactionalContentMD5 and transactionalContentCrc64 cannot be set at same time.\n */\n transactionalContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link PageBlobClient.clearPages} operation.\n */\nexport interface PageBlobClearPagesOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when clearing pages.\n */\n conditions?: PageBlobRequestConditions;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure the {@link PageBlobClient.getPageRanges} operation.\n */\nexport interface PageBlobGetPageRangesOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when getting page ranges.\n */\n conditions?: BlobRequestConditions;\n}\n\n/**\n * Options to configure the {@link PageBlobClient.getRangesDiff} operation.\n */\nexport interface PageBlobGetPageRangesDiffOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when getting page ranges diff.\n */\n conditions?: BlobRequestConditions;\n /**\n * (unused)\n */\n range?: string;\n}\n\n/**\n * Options to configure {@link PageBlobClient.resize} operation.\n */\nexport interface PageBlobResizeOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when resizing a page blob.\n */\n conditions?: BlobRequestConditions;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n}\n\n/**\n * Options to configure {@link PageBlobClient.updateSequenceNumber} operation.\n */\nexport interface PageBlobUpdateSequenceNumberOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when updating sequence number.\n */\n conditions?: BlobRequestConditions;\n}\n\n/**\n * Options to configure {@link PageBlobClient.startCopyIncremental} operation.\n */\nexport interface PageBlobStartCopyIncrementalOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when starting a copy incremental operation.\n */\n conditions?: ModifiedAccessConditions;\n}\n\n/**\n * Options to configure {@link PageBlobClient.uploadPagesFromURL} operation.\n */\nexport interface PageBlobUploadPagesFromURLOptions extends CommonOptions {\n /**\n * An implementation of the `AbortSignalLike` interface to signal the request to cancel the operation.\n * For example, use the @azure/abort-controller to create an `AbortSignal`.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Conditions to meet when updating sequence number.\n */\n conditions?: PageBlobRequestConditions;\n /**\n * Conditions to meet for the source Azure Blob/File when copying from a URL to the blob.\n */\n sourceConditions?: MatchConditions & ModificationConditions;\n /**\n * An MD5 hash of the content from the URI.\n * This hash is used to verify the integrity of the content during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentMD5?: Uint8Array;\n /**\n * A CRC64 hash of the content from the URI.\n * This hash is used to verify the integrity of the content during transport of the data from the URI.\n * When this is specified, the storage service compares the hash of the content that has arrived from the copy-source with this value.\n *\n * sourceContentMD5 and sourceContentCrc64 cannot be set at same time.\n */\n sourceContentCrc64?: Uint8Array;\n /**\n * Customer Provided Key Info.\n */\n customerProvidedKey?: CpkInfo;\n /**\n * Optional. Version 2019-07-07 and later. Specifies the name of the encryption scope to use to\n * encrypt the data provided in the request. If not specified, encryption is performed with the\n * default account encryption scope. For more information, see Encryption at Rest for Azure\n * Storage Services.\n */\n encryptionScope?: string;\n /**\n * Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.\n */\n sourceAuthorization?: HttpAuthorization;\n}\n\n/**\n * Contains response data for the {@link PageBlobClient.createIfNotExists} operation.\n */\nexport interface PageBlobCreateIfNotExistsResponse extends PageBlobCreateResponse {\n /**\n * Indicate whether the blob is successfully created. Is false when the blob is not changed as it already exists.\n */\n succeeded: boolean;\n}\n\n/**\n * PageBlobClient defines a set of operations applicable to page blobs.\n */\nexport class PageBlobClient extends BlobClient {\n /**\n * pageBlobsContext provided by protocol layer.\n */\n private pageBlobContext: PageBlob;\n\n /**\n *\n * Creates an instance of PageBlobClient.\n *\n * @param connectionString - Account connection string or a SAS connection string of an Azure storage account.\n * [ Note - Account connection string can only be used in NODE.JS runtime. ]\n * Account connection string example -\n * `DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=accountKey;EndpointSuffix=core.windows.net`\n * SAS connection string example -\n * `BlobEndpoint=https://myaccount.blob.core.windows.net/;QueueEndpoint=https://myaccount.queue.core.windows.net/;FileEndpoint=https://myaccount.file.core.windows.net/;TableEndpoint=https://myaccount.table.core.windows.net/;SharedAccessSignature=sasString`\n * @param containerName - Container name.\n * @param blobName - Blob name.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n connectionString: string,\n containerName: string,\n blobName: string,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of PageBlobClient.\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * If a blob name includes ? or %, blob name must be encoded in the URL.\n *\n * @param url - A Client string pointing to Azure Storage page blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/pageblob\". You can append a SAS\n * if using AnonymousCredential, such as \"https://myaccount.blob.core.windows.net/mycontainer/pageblob?sasString\".\n * @param credential - Such as AnonymousCredential, StorageSharedKeyCredential or any credential from the `@azure/identity` package to authenticate requests to the service. You can also provide an object that implements the TokenCredential interface. If not specified, AnonymousCredential is used.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n constructor(\n url: string,\n credential: StorageSharedKeyCredential | AnonymousCredential | TokenCredential,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n );\n /**\n * Creates an instance of PageBlobClient.\n *\n * @param url - A URL string pointing to Azure Storage page blob, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/pageblob\".\n * You can append a SAS if using AnonymousCredential, such as\n * \"https://myaccount.blob.core.windows.net/mycontainer/pageblob?sasString\".\n * This method accepts an encoded URL or non-encoded URL pointing to a blob.\n * Encoded URL string will NOT be escaped twice, only special characters in URL path will be escaped.\n * However, if a blob name includes ? or %, blob name must be encoded in the URL.\n * Such as a blob named \"my?blob%\", the URL should be \"https://myaccount.blob.core.windows.net/mycontainer/my%3Fblob%25\".\n * @param pipeline - Call newPipeline() to create a default\n * pipeline, or provide a customized pipeline.\n */\n constructor(url: string, pipeline: PipelineLike);\n constructor(\n urlOrConnectionString: string,\n credentialOrPipelineOrContainerName:\n | string\n | StorageSharedKeyCredential\n | AnonymousCredential\n | TokenCredential\n | PipelineLike,\n blobNameOrOptions?: string | StoragePipelineOptions,\n // Legacy, no fix for eslint error without breaking. Disable it for this interface.\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options*/\n options?: StoragePipelineOptions\n ) {\n // In TypeScript we cannot simply pass all parameters to super() like below so have to duplicate the code instead.\n // super(s, credentialOrPipelineOrContainerNameOrOptions, blobNameOrOptions, options);\n let pipeline: PipelineLike;\n let url: string;\n options = options || {};\n if (isPipelineLike(credentialOrPipelineOrContainerName)) {\n // (url: string, pipeline: Pipeline)\n url = urlOrConnectionString;\n pipeline = credentialOrPipelineOrContainerName;\n } else if (\n (isNode && credentialOrPipelineOrContainerName instanceof StorageSharedKeyCredential) ||\n credentialOrPipelineOrContainerName instanceof AnonymousCredential ||\n isTokenCredential(credentialOrPipelineOrContainerName)\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n url = urlOrConnectionString;\n options = blobNameOrOptions as StoragePipelineOptions;\n pipeline = newPipeline(credentialOrPipelineOrContainerName, options);\n } else if (\n !credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName !== \"string\"\n ) {\n // (url: string, credential?: StorageSharedKeyCredential | AnonymousCredential | TokenCredential, options?: StoragePipelineOptions)\n // The second parameter is undefined. Use anonymous credential.\n url = urlOrConnectionString;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else if (\n credentialOrPipelineOrContainerName &&\n typeof credentialOrPipelineOrContainerName === \"string\" &&\n blobNameOrOptions &&\n typeof blobNameOrOptions === \"string\"\n ) {\n // (connectionString: string, containerName: string, blobName: string, options?: StoragePipelineOptions)\n const containerName = credentialOrPipelineOrContainerName;\n const blobName = blobNameOrOptions;\n\n const extractedCreds = extractConnectionStringParts(urlOrConnectionString);\n if (extractedCreds.kind === \"AccountConnString\") {\n if (isNode) {\n const sharedKeyCredential = new StorageSharedKeyCredential(\n extractedCreds.accountName!,\n extractedCreds.accountKey\n );\n url = appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n );\n\n if (!options.proxyOptions) {\n options.proxyOptions = getDefaultProxySettings(extractedCreds.proxyUri);\n }\n\n pipeline = newPipeline(sharedKeyCredential, options);\n } else {\n throw new Error(\"Account connection string is only supported in Node.js environment\");\n }\n } else if (extractedCreds.kind === \"SASConnString\") {\n url =\n appendToURLPath(\n appendToURLPath(extractedCreds.url, encodeURIComponent(containerName)),\n encodeURIComponent(blobName)\n ) +\n \"?\" +\n extractedCreds.accountSas;\n pipeline = newPipeline(new AnonymousCredential(), options);\n } else {\n throw new Error(\n \"Connection string must be either an Account connection string or a SAS connection string\"\n );\n }\n } else {\n throw new Error(\"Expecting non-empty strings for containerName and blobName parameters\");\n }\n super(url, pipeline);\n this.pageBlobContext = new PageBlob(this.storageClientContext);\n }\n\n /**\n * Creates a new PageBlobClient object identical to the source but with the\n * specified snapshot timestamp.\n * Provide \"\" will remove the snapshot and return a Client to the base blob.\n *\n * @param snapshot - The snapshot timestamp.\n * @returns A new PageBlobClient object identical to the source but with the specified snapshot timestamp.\n */\n public withSnapshot(snapshot: string): PageBlobClient {\n return new PageBlobClient(\n setURLParameter(\n this.url,\n URLConstants.Parameters.SNAPSHOT,\n snapshot.length === 0 ? undefined : snapshot\n ),\n this.pipeline\n );\n }\n\n /**\n * Creates a page blob of the specified length. Call uploadPages to upload data\n * data to a page blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-blob\n *\n * @param size - size of the page blob.\n * @param options - Options to the Page Blob Create operation.\n * @returns Response data for the Page Blob Create operation.\n */\n public async create(\n size: number,\n options: PageBlobCreateOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-create\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.pageBlobContext.create(0, size, {\n abortSignal: options.abortSignal,\n blobHttpHeaders: options.blobHTTPHeaders,\n blobSequenceNumber: options.blobSequenceNumber,\n leaseAccessConditions: options.conditions,\n metadata: options.metadata,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n immutabilityPolicyExpiry: options.immutabilityPolicy?.expiriesOn,\n immutabilityPolicyMode: options.immutabilityPolicy?.policyMode,\n legalHold: options.legalHold,\n tier: toAccessTier(options.tier),\n blobTagsString: toBlobTagsString(options.tags),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Creates a page blob of the specified length. Call uploadPages to upload data\n * data to a page blob. If the blob with the same name already exists, the content\n * of the existing blob will remain unchanged.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-blob\n *\n * @param size - size of the page blob.\n * @param options -\n */\n public async createIfNotExists(\n size: number,\n options: PageBlobCreateIfNotExistsOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"PageBlobClient-createIfNotExists\", options);\n try {\n const conditions = { ifNoneMatch: ETagAny };\n const res = await this.create(size, {\n ...options,\n conditions,\n tracingOptions: updatedOptions.tracingOptions,\n });\n return {\n succeeded: true,\n ...res,\n _response: res._response, // _response is made non-enumerable\n };\n } catch (e) {\n if (e.details?.errorCode === \"BlobAlreadyExists\") {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: \"Expected exception when creating a blob only if it does not already exist.\",\n });\n return {\n succeeded: false,\n ...e.response?.parsedHeaders,\n _response: e.response,\n };\n }\n\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Writes 1 or more pages to the page blob. The start and end offsets must be a multiple of 512.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-page\n *\n * @param body - Data to upload\n * @param offset - Offset of destination page blob\n * @param count - Content length of the body, also number of bytes to be uploaded\n * @param options - Options to the Page Blob Upload Pages operation.\n * @returns Response data for the Page Blob Upload Pages operation.\n */\n public async uploadPages(\n body: HttpRequestBody,\n offset: number,\n count: number,\n options: PageBlobUploadPagesOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-uploadPages\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.pageBlobContext.uploadPages(count, body, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n requestOptions: {\n onUploadProgress: options.onProgress,\n },\n range: rangeToString({ offset, count }),\n sequenceNumberAccessConditions: options.conditions,\n transactionalContentMD5: options.transactionalContentMD5,\n transactionalContentCrc64: options.transactionalContentCrc64,\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * The Upload Pages operation writes a range of pages to a page blob where the\n * contents are read from a URL.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/put-page-from-url\n *\n * @param sourceURL - Specify a URL to the copy source, Shared Access Signature(SAS) maybe needed for authentication\n * @param sourceOffset - The source offset to copy from. Pass 0 to copy from the beginning of source page blob\n * @param destOffset - Offset of destination page blob\n * @param count - Number of bytes to be uploaded from source page blob\n * @param options -\n */\n public async uploadPagesFromURL(\n sourceURL: string,\n sourceOffset: number,\n destOffset: number,\n count: number,\n options: PageBlobUploadPagesFromURLOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n options.sourceConditions = options.sourceConditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-uploadPagesFromURL\", options);\n try {\n ensureCpkIfSpecified(options.customerProvidedKey, this.isHttps);\n return await this.pageBlobContext.uploadPagesFromURL(\n sourceURL,\n rangeToString({ offset: sourceOffset, count }),\n 0,\n rangeToString({ offset: destOffset, count }),\n {\n abortSignal: options.abortSignal,\n sourceContentMD5: options.sourceContentMD5,\n sourceContentCrc64: options.sourceContentCrc64,\n leaseAccessConditions: options.conditions,\n sequenceNumberAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n sourceModifiedAccessConditions: {\n sourceIfMatch: options.sourceConditions.ifMatch,\n sourceIfModifiedSince: options.sourceConditions.ifModifiedSince,\n sourceIfNoneMatch: options.sourceConditions.ifNoneMatch,\n sourceIfUnmodifiedSince: options.sourceConditions.ifUnmodifiedSince,\n },\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n copySourceAuthorization: httpAuthorizationToString(options.sourceAuthorization),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n }\n );\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Frees the specified pages from the page blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/put-page\n *\n * @param offset - Starting byte position of the pages to clear.\n * @param count - Number of bytes to clear.\n * @param options - Options to the Page Blob Clear Pages operation.\n * @returns Response data for the Page Blob Clear Pages operation.\n */\n public async clearPages(\n offset: number = 0,\n count?: number,\n options: PageBlobClearPagesOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-clearPages\", options);\n try {\n return await this.pageBlobContext.clearPages(0, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n range: rangeToString({ offset, count }),\n sequenceNumberAccessConditions: options.conditions,\n cpkInfo: options.customerProvidedKey,\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Returns the list of valid page ranges for a page blob or snapshot of a page blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/get-page-ranges\n *\n * @param offset - Starting byte position of the page ranges.\n * @param count - Number of bytes to get.\n * @param options - Options to the Page Blob Get Ranges operation.\n * @returns Response data for the Page Blob Get Ranges operation.\n */\n public async getPageRanges(\n offset: number = 0,\n count?: number,\n options: PageBlobGetPageRangesOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-getPageRanges\", options);\n try {\n return await this.pageBlobContext\n .getPageRanges({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n range: rangeToString({ offset, count }),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n })\n .then(rangeResponseFromModel);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the collection of page ranges that differ between a specified snapshot and this page blob.\n * @see https://docs.microsoft.com/rest/api/storageservices/get-page-ranges\n *\n * @param offset - Starting byte position of the page blob\n * @param count - Number of bytes to get ranges diff.\n * @param prevSnapshot - Timestamp of snapshot to retrieve the difference.\n * @param options - Options to the Page Blob Get Page Ranges Diff operation.\n * @returns Response data for the Page Blob Get Page Range Diff operation.\n */\n public async getPageRangesDiff(\n offset: number,\n count: number,\n prevSnapshot: string,\n options: PageBlobGetPageRangesDiffOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-getPageRangesDiff\", options);\n\n try {\n return await this.pageBlobContext\n .getPageRangesDiff({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n prevsnapshot: prevSnapshot,\n range: rangeToString({ offset, count }),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n })\n .then(rangeResponseFromModel);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the collection of page ranges that differ between a specified snapshot and this page blob for managed disks.\n * @see https://docs.microsoft.com/rest/api/storageservices/get-page-ranges\n *\n * @param offset - Starting byte position of the page blob\n * @param count - Number of bytes to get ranges diff.\n * @param prevSnapshotUrl - URL of snapshot to retrieve the difference.\n * @param options - Options to the Page Blob Get Page Ranges Diff operation.\n * @returns Response data for the Page Blob Get Page Range Diff operation.\n */\n public async getPageRangesDiffForManagedDisks(\n offset: number,\n count: number,\n prevSnapshotUrl: string,\n options: PageBlobGetPageRangesDiffOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\n \"PageBlobClient-GetPageRangesDiffForManagedDisks\",\n options\n );\n\n try {\n return await this.pageBlobContext\n .getPageRangesDiff({\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n prevSnapshotUrl,\n range: rangeToString({ offset, count }),\n ...convertTracingToRequestOptionsBase(updatedOptions),\n })\n .then(rangeResponseFromModel);\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Resizes the page blob to the specified size (which must be a multiple of 512).\n * @see https://docs.microsoft.com/rest/api/storageservices/set-blob-properties\n *\n * @param size - Target size\n * @param options - Options to the Page Blob Resize operation.\n * @returns Response data for the Page Blob Resize operation.\n */\n public async resize(\n size: number,\n options: PageBlobResizeOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-resize\", options);\n try {\n return await this.pageBlobContext.resize(size, {\n abortSignal: options.abortSignal,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n encryptionScope: options.encryptionScope,\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets a page blob's sequence number.\n * @see https://docs.microsoft.com/en-us/rest/api/storageservices/set-blob-properties\n *\n * @param sequenceNumberAction - Indicates how the service should modify the blob's sequence number.\n * @param sequenceNumber - Required if sequenceNumberAction is max or update\n * @param options - Options to the Page Blob Update Sequence Number operation.\n * @returns Response data for the Page Blob Update Sequence Number operation.\n */\n public async updateSequenceNumber(\n sequenceNumberAction: SequenceNumberActionType,\n sequenceNumber?: number,\n options: PageBlobUpdateSequenceNumberOptions = {}\n ): Promise {\n options.conditions = options.conditions || {};\n const { span, updatedOptions } = createSpan(\"PageBlobClient-updateSequenceNumber\", options);\n try {\n return await this.pageBlobContext.updateSequenceNumber(sequenceNumberAction, {\n abortSignal: options.abortSignal,\n blobSequenceNumber: sequenceNumber,\n leaseAccessConditions: options.conditions,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Begins an operation to start an incremental copy from one page blob's snapshot to this page blob.\n * The snapshot is copied such that only the differential changes between the previously\n * copied snapshot are transferred to the destination.\n * The copied snapshots are complete copies of the original snapshot and can be read or copied from as usual.\n * @see https://docs.microsoft.com/rest/api/storageservices/incremental-copy-blob\n * @see https://docs.microsoft.com/en-us/azure/virtual-machines/windows/incremental-snapshots\n *\n * @param copySource - Specifies the name of the source page blob snapshot. For example,\n * https://myaccount.blob.core.windows.net/mycontainer/myblob?snapshot=\n * @param options - Options to the Page Blob Copy Incremental operation.\n * @returns Response data for the Page Blob Copy Incremental operation.\n */\n public async startCopyIncremental(\n copySource: string,\n options: PageBlobStartCopyIncrementalOptions = {}\n ): Promise {\n const { span, updatedOptions } = createSpan(\"PageBlobClient-startCopyIncremental\", options);\n try {\n return await this.pageBlobContext.copyIncremental(copySource, {\n abortSignal: options.abortSignal,\n modifiedAccessConditions: {\n ...options.conditions,\n ifTags: options.conditions?.tagConditions,\n },\n ...convertTracingToRequestOptionsBase(updatedOptions),\n });\n } catch (e) {\n span.setStatus({\n code: SpanStatusCode.ERROR,\n message: e.message,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nif (typeof Symbol === undefined || !(Symbol as any).asyncIterator) {\n (Symbol as any).asyncIterator = Symbol.for(\"Symbol.asyncIterator\");\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as http from \"http\";\nimport * as https from \"https\";\nimport * as tough from \"tough-cookie\";\nimport { AbortController, AbortError } from \"@azure/abort-controller\";\nimport { HttpHeaders, HttpHeadersLike } from \"./httpHeaders\";\nimport { ProxyAgent, createProxyAgent, isUrlHttps } from \"./proxyAgent\";\nimport { Readable, Transform } from \"stream\";\nimport { TransferProgressEvent, WebResourceLike } from \"./webResource\";\nimport FormData from \"form-data\";\nimport { HttpClient } from \"./httpClient\";\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\nimport { RestError } from \"./restError\";\nimport { logger } from \"./log\";\nimport node_fetch from \"node-fetch\";\n\ninterface AgentCache {\n httpAgent?: http.Agent;\n httpsAgent?: https.Agent;\n}\n\nfunction getCachedAgent(\n isHttps: boolean,\n agentCache: AgentCache\n): http.Agent | https.Agent | undefined {\n return isHttps ? agentCache.httpsAgent : agentCache.httpAgent;\n}\n\ninterface FetchError extends Error {\n code?: string;\n errno?: string;\n type?: string;\n}\n\n/**\n * String URLs used when calling to `fetch()`.\n */\nexport type CommonRequestInfo = string;\n\n/**\n * An object containing information about the outgoing HTTP request.\n */\nexport type CommonRequestInit = Omit & {\n body?: any;\n headers?: any;\n signal?: any;\n};\n\n/**\n * An object containing information about the incoming HTTP response.\n */\nexport type CommonResponse = Omit & {\n body: any;\n trailer: any;\n formData: any;\n};\n\nexport class ReportTransform extends Transform {\n private loadedBytes: number = 0;\n _transform(chunk: string | Buffer, _encoding: string, callback: (arg: any) => void): void {\n this.push(chunk);\n this.loadedBytes += chunk.length;\n this.progressCallback!({ loadedBytes: this.loadedBytes });\n callback(undefined);\n }\n\n constructor(private progressCallback: (progress: TransferProgressEvent) => void) {\n super();\n }\n}\n\nfunction isReadableStream(body: any): body is Readable {\n return body && typeof body.pipe === \"function\";\n}\n\nfunction isStreamComplete(stream: Readable, aborter?: AbortController): Promise {\n return new Promise((resolve) => {\n stream.once(\"close\", () => {\n aborter?.abort();\n resolve();\n });\n stream.once(\"end\", resolve);\n stream.once(\"error\", resolve);\n });\n}\n\n/**\n * Transforms a set of headers into the key/value pair defined by {@link HttpHeadersLike}\n */\nexport function parseHeaders(headers: Headers): HttpHeadersLike {\n const httpHeaders = new HttpHeaders();\n\n headers.forEach((value, key) => {\n httpHeaders.set(key, value);\n });\n\n return httpHeaders;\n}\n\n/**\n * An HTTP client that uses `node-fetch`.\n */\nexport class NodeFetchHttpClient implements HttpClient {\n /**\n * Provides minimum viable error handling and the logic that executes the abstract methods.\n * @param httpRequest - Object representing the outgoing HTTP request.\n * @returns An object representing the incoming HTTP response.\n */\n async sendRequest(httpRequest: WebResourceLike): Promise {\n if (!httpRequest && typeof httpRequest !== \"object\") {\n throw new Error(\n \"'httpRequest' (WebResourceLike) cannot be null or undefined and must be of type object.\"\n );\n }\n\n const abortController = new AbortController();\n let abortListener: ((event: any) => void) | undefined;\n if (httpRequest.abortSignal) {\n if (httpRequest.abortSignal.aborted) {\n throw new AbortError(\"The operation was aborted.\");\n }\n\n abortListener = (event: Event) => {\n if (event.type === \"abort\") {\n abortController.abort();\n }\n };\n httpRequest.abortSignal.addEventListener(\"abort\", abortListener);\n }\n\n if (httpRequest.timeout) {\n setTimeout(() => {\n abortController.abort();\n }, httpRequest.timeout);\n }\n\n if (httpRequest.formData) {\n const formData: any = httpRequest.formData;\n const requestForm = new FormData();\n const appendFormValue = (key: string, value: any): void => {\n // value function probably returns a stream so we can provide a fresh stream on each retry\n if (typeof value === \"function\") {\n value = value();\n }\n if (\n value &&\n Object.prototype.hasOwnProperty.call(value, \"value\") &&\n Object.prototype.hasOwnProperty.call(value, \"options\")\n ) {\n requestForm.append(key, value.value, value.options);\n } else {\n requestForm.append(key, value);\n }\n };\n for (const formKey of Object.keys(formData)) {\n const formValue = formData[formKey];\n if (Array.isArray(formValue)) {\n for (let j = 0; j < formValue.length; j++) {\n appendFormValue(formKey, formValue[j]);\n }\n } else {\n appendFormValue(formKey, formValue);\n }\n }\n\n httpRequest.body = requestForm;\n httpRequest.formData = undefined;\n const contentType = httpRequest.headers.get(\"Content-Type\");\n if (contentType && contentType.indexOf(\"multipart/form-data\") !== -1) {\n if (typeof requestForm.getBoundary === \"function\") {\n httpRequest.headers.set(\n \"Content-Type\",\n `multipart/form-data; boundary=${requestForm.getBoundary()}`\n );\n } else {\n // browser will automatically apply a suitable content-type header\n httpRequest.headers.remove(\"Content-Type\");\n }\n }\n }\n\n let body = httpRequest.body\n ? typeof httpRequest.body === \"function\"\n ? httpRequest.body()\n : httpRequest.body\n : undefined;\n if (httpRequest.onUploadProgress && httpRequest.body) {\n const onUploadProgress = httpRequest.onUploadProgress;\n const uploadReportStream = new ReportTransform(onUploadProgress);\n if (isReadableStream(body)) {\n body.pipe(uploadReportStream);\n } else {\n uploadReportStream.end(body);\n }\n\n body = uploadReportStream;\n }\n\n const platformSpecificRequestInit: Partial = await this.prepareRequest(\n httpRequest\n );\n\n const requestInit: RequestInit = {\n body: body,\n headers: httpRequest.headers.rawHeaders(),\n method: httpRequest.method,\n signal: abortController.signal,\n redirect: \"manual\",\n ...platformSpecificRequestInit,\n };\n\n let operationResponse: HttpOperationResponse | undefined;\n try {\n const response: CommonResponse = await this.fetch(httpRequest.url, requestInit);\n\n const headers = parseHeaders(response.headers);\n\n const streaming =\n httpRequest.streamResponseStatusCodes?.has(response.status) ||\n httpRequest.streamResponseBody;\n\n operationResponse = {\n headers: headers,\n request: httpRequest,\n status: response.status,\n readableStreamBody: streaming\n ? (response.body as unknown as NodeJS.ReadableStream)\n : undefined,\n bodyAsText: !streaming ? await response.text() : undefined,\n };\n\n const onDownloadProgress = httpRequest.onDownloadProgress;\n if (onDownloadProgress) {\n const responseBody: ReadableStream | undefined = response.body || undefined;\n\n if (isReadableStream(responseBody)) {\n const downloadReportStream = new ReportTransform(onDownloadProgress);\n responseBody.pipe(downloadReportStream);\n operationResponse.readableStreamBody = downloadReportStream;\n } else {\n const length = parseInt(headers.get(\"Content-Length\")!) || undefined;\n if (length) {\n // Calling callback for non-stream response for consistency with browser\n onDownloadProgress({ loadedBytes: length });\n }\n }\n }\n\n await this.processRequest(operationResponse);\n\n return operationResponse;\n } catch (error) {\n const fetchError: FetchError = error;\n if (fetchError.code === \"ENOTFOUND\") {\n throw new RestError(\n fetchError.message,\n RestError.REQUEST_SEND_ERROR,\n undefined,\n httpRequest\n );\n } else if (fetchError.type === \"aborted\") {\n throw new AbortError(\"The operation was aborted.\");\n }\n\n throw fetchError;\n } finally {\n // clean up event listener\n if (httpRequest.abortSignal && abortListener) {\n let uploadStreamDone = Promise.resolve();\n if (isReadableStream(body)) {\n uploadStreamDone = isStreamComplete(body);\n }\n let downloadStreamDone = Promise.resolve();\n if (isReadableStream(operationResponse?.readableStreamBody)) {\n downloadStreamDone = isStreamComplete(\n operationResponse!.readableStreamBody,\n abortController\n );\n }\n\n Promise.all([uploadStreamDone, downloadStreamDone])\n .then(() => {\n httpRequest.abortSignal?.removeEventListener(\"abort\", abortListener!);\n return;\n })\n .catch((e) => {\n logger.warning(\"Error when cleaning up abortListener on httpRequest\", e);\n });\n }\n }\n }\n\n // a mapping of proxy settings string `${host}:${port}:${username}:${password}` to agent\n private proxyAgentMap: Map = new Map();\n private keepAliveAgents: AgentCache = {};\n\n private readonly cookieJar = new tough.CookieJar(undefined, { looseMode: true });\n\n private getOrCreateAgent(httpRequest: WebResourceLike): http.Agent | https.Agent {\n const isHttps = isUrlHttps(httpRequest.url);\n\n // At the moment, proxy settings and keepAlive are mutually\n // exclusive because the 'tunnel' library currently lacks the\n // ability to create a proxy with keepAlive turned on.\n if (httpRequest.proxySettings) {\n const { host, port, username, password } = httpRequest.proxySettings;\n const key = `${host}:${port}:${username}:${password}`;\n const proxyAgents = this.proxyAgentMap.get(key) ?? {};\n\n let agent = getCachedAgent(isHttps, proxyAgents);\n if (agent) {\n return agent;\n }\n\n const tunnel: ProxyAgent = createProxyAgent(\n httpRequest.url,\n httpRequest.proxySettings,\n httpRequest.headers\n );\n\n agent = tunnel.agent;\n if (tunnel.isHttps) {\n proxyAgents.httpsAgent = tunnel.agent as https.Agent;\n } else {\n proxyAgents.httpAgent = tunnel.agent;\n }\n this.proxyAgentMap.set(key, proxyAgents);\n\n return agent;\n } else if (httpRequest.keepAlive) {\n let agent = getCachedAgent(isHttps, this.keepAliveAgents);\n if (agent) {\n return agent;\n }\n\n const agentOptions: http.AgentOptions | https.AgentOptions = {\n keepAlive: httpRequest.keepAlive,\n };\n\n if (isHttps) {\n agent = this.keepAliveAgents.httpsAgent = new https.Agent(agentOptions);\n } else {\n agent = this.keepAliveAgents.httpAgent = new http.Agent(agentOptions);\n }\n\n return agent;\n } else {\n return isHttps ? https.globalAgent : http.globalAgent;\n }\n }\n\n /**\n * Uses `node-fetch` to perform the request.\n */\n // eslint-disable-next-line @azure/azure-sdk/ts-apisurface-standardized-verbs\n async fetch(input: CommonRequestInfo, init?: CommonRequestInit): Promise {\n return node_fetch(input, init) as unknown as Promise;\n }\n\n /**\n * Prepares a request based on the provided web resource.\n */\n async prepareRequest(httpRequest: WebResourceLike): Promise> {\n const requestInit: Partial = {};\n\n if (this.cookieJar && !httpRequest.headers.get(\"Cookie\")) {\n const cookieString = await new Promise((resolve, reject) => {\n this.cookieJar!.getCookieString(httpRequest.url, (err, cookie) => {\n if (err) {\n reject(err);\n } else {\n resolve(cookie);\n }\n });\n });\n\n httpRequest.headers.set(\"Cookie\", cookieString);\n }\n\n // Set the http(s) agent\n requestInit.agent = this.getOrCreateAgent(httpRequest);\n\n requestInit.compress = httpRequest.decompressResponse;\n\n return requestInit;\n }\n\n /**\n * Process an HTTP response. Handles persisting a cookie for subsequent requests if the response has a \"Set-Cookie\" header.\n */\n async processRequest(operationResponse: HttpOperationResponse): Promise {\n if (this.cookieJar) {\n const setCookieHeader = operationResponse.headers.get(\"Set-Cookie\");\n if (setCookieHeader !== undefined) {\n await new Promise((resolve, reject) => {\n this.cookieJar!.setCookie(\n setCookieHeader,\n operationResponse.request.url,\n { ignoreError: true },\n (err) => {\n if (err) {\n reject(err);\n } else {\n resolve();\n }\n }\n );\n });\n }\n }\n }\n}\n","/*!\n * Copyright (c) 2015, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\nconst punycode = require(\"punycode\");\nconst urlParse = require(\"url\").parse;\nconst util = require(\"util\");\nconst pubsuffix = require(\"./pubsuffix-psl\");\nconst Store = require(\"./store\").Store;\nconst MemoryCookieStore = require(\"./memstore\").MemoryCookieStore;\nconst pathMatch = require(\"./pathMatch\").pathMatch;\nconst VERSION = require(\"./version\");\nconst { fromCallback } = require(\"universalify\");\n\n// From RFC6265 S4.1.1\n// note that it excludes \\x3B \";\"\nconst COOKIE_OCTETS = /^[\\x21\\x23-\\x2B\\x2D-\\x3A\\x3C-\\x5B\\x5D-\\x7E]+$/;\n\nconst CONTROL_CHARS = /[\\x00-\\x1F]/;\n\n// From Chromium // '\\r', '\\n' and '\\0' should be treated as a terminator in\n// the \"relaxed\" mode, see:\n// https://github.com/ChromiumWebApps/chromium/blob/b3d3b4da8bb94c1b2e061600df106d590fda3620/net/cookies/parsed_cookie.cc#L60\nconst TERMINATORS = [\"\\n\", \"\\r\", \"\\0\"];\n\n// RFC6265 S4.1.1 defines path value as 'any CHAR except CTLs or \";\"'\n// Note ';' is \\x3B\nconst PATH_VALUE = /[\\x20-\\x3A\\x3C-\\x7E]+/;\n\n// date-time parsing constants (RFC6265 S5.1.1)\n\nconst DATE_DELIM = /[\\x09\\x20-\\x2F\\x3B-\\x40\\x5B-\\x60\\x7B-\\x7E]/;\n\nconst MONTH_TO_NUM = {\n jan: 0,\n feb: 1,\n mar: 2,\n apr: 3,\n may: 4,\n jun: 5,\n jul: 6,\n aug: 7,\n sep: 8,\n oct: 9,\n nov: 10,\n dec: 11\n};\n\nconst MAX_TIME = 2147483647000; // 31-bit max\nconst MIN_TIME = 0; // 31-bit min\nconst SAME_SITE_CONTEXT_VAL_ERR =\n 'Invalid sameSiteContext option for getCookies(); expected one of \"strict\", \"lax\", or \"none\"';\n\nfunction checkSameSiteContext(value) {\n const context = String(value).toLowerCase();\n if (context === \"none\" || context === \"lax\" || context === \"strict\") {\n return context;\n } else {\n return null;\n }\n}\n\nconst PrefixSecurityEnum = Object.freeze({\n SILENT: \"silent\",\n STRICT: \"strict\",\n DISABLED: \"unsafe-disabled\"\n});\n\n// Dumped from ip-regex@4.0.0, with the following changes:\n// * all capturing groups converted to non-capturing -- \"(?:)\"\n// * support for IPv6 Scoped Literal (\"%eth1\") removed\n// * lowercase hexadecimal only\nvar IP_REGEX_LOWERCASE =/(?:^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$)|(?:^(?:(?:[a-f\\d]{1,4}:){7}(?:[a-f\\d]{1,4}|:)|(?:[a-f\\d]{1,4}:){6}(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|:[a-f\\d]{1,4}|:)|(?:[a-f\\d]{1,4}:){5}(?::(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,2}|:)|(?:[a-f\\d]{1,4}:){4}(?:(?::[a-f\\d]{1,4}){0,1}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,3}|:)|(?:[a-f\\d]{1,4}:){3}(?:(?::[a-f\\d]{1,4}){0,2}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,4}|:)|(?:[a-f\\d]{1,4}:){2}(?:(?::[a-f\\d]{1,4}){0,3}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,5}|:)|(?:[a-f\\d]{1,4}:){1}(?:(?::[a-f\\d]{1,4}){0,4}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,6}|:)|(?::(?:(?::[a-f\\d]{1,4}){0,5}:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}|(?::[a-f\\d]{1,4}){1,7}|:)))$)/;\n\n/*\n * Parses a Natural number (i.e., non-negative integer) with either the\n * *DIGIT ( non-digit *OCTET )\n * or\n * *DIGIT\n * grammar (RFC6265 S5.1.1).\n *\n * The \"trailingOK\" boolean controls if the grammar accepts a\n * \"( non-digit *OCTET )\" trailer.\n */\nfunction parseDigits(token, minDigits, maxDigits, trailingOK) {\n let count = 0;\n while (count < token.length) {\n const c = token.charCodeAt(count);\n // \"non-digit = %x00-2F / %x3A-FF\"\n if (c <= 0x2f || c >= 0x3a) {\n break;\n }\n count++;\n }\n\n // constrain to a minimum and maximum number of digits.\n if (count < minDigits || count > maxDigits) {\n return null;\n }\n\n if (!trailingOK && count != token.length) {\n return null;\n }\n\n return parseInt(token.substr(0, count), 10);\n}\n\nfunction parseTime(token) {\n const parts = token.split(\":\");\n const result = [0, 0, 0];\n\n /* RF6256 S5.1.1:\n * time = hms-time ( non-digit *OCTET )\n * hms-time = time-field \":\" time-field \":\" time-field\n * time-field = 1*2DIGIT\n */\n\n if (parts.length !== 3) {\n return null;\n }\n\n for (let i = 0; i < 3; i++) {\n // \"time-field\" must be strictly \"1*2DIGIT\", HOWEVER, \"hms-time\" can be\n // followed by \"( non-digit *OCTET )\" so therefore the last time-field can\n // have a trailer\n const trailingOK = i == 2;\n const num = parseDigits(parts[i], 1, 2, trailingOK);\n if (num === null) {\n return null;\n }\n result[i] = num;\n }\n\n return result;\n}\n\nfunction parseMonth(token) {\n token = String(token)\n .substr(0, 3)\n .toLowerCase();\n const num = MONTH_TO_NUM[token];\n return num >= 0 ? num : null;\n}\n\n/*\n * RFC6265 S5.1.1 date parser (see RFC for full grammar)\n */\nfunction parseDate(str) {\n if (!str) {\n return;\n }\n\n /* RFC6265 S5.1.1:\n * 2. Process each date-token sequentially in the order the date-tokens\n * appear in the cookie-date\n */\n const tokens = str.split(DATE_DELIM);\n if (!tokens) {\n return;\n }\n\n let hour = null;\n let minute = null;\n let second = null;\n let dayOfMonth = null;\n let month = null;\n let year = null;\n\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i].trim();\n if (!token.length) {\n continue;\n }\n\n let result;\n\n /* 2.1. If the found-time flag is not set and the token matches the time\n * production, set the found-time flag and set the hour- value,\n * minute-value, and second-value to the numbers denoted by the digits in\n * the date-token, respectively. Skip the remaining sub-steps and continue\n * to the next date-token.\n */\n if (second === null) {\n result = parseTime(token);\n if (result) {\n hour = result[0];\n minute = result[1];\n second = result[2];\n continue;\n }\n }\n\n /* 2.2. If the found-day-of-month flag is not set and the date-token matches\n * the day-of-month production, set the found-day-of- month flag and set\n * the day-of-month-value to the number denoted by the date-token. Skip\n * the remaining sub-steps and continue to the next date-token.\n */\n if (dayOfMonth === null) {\n // \"day-of-month = 1*2DIGIT ( non-digit *OCTET )\"\n result = parseDigits(token, 1, 2, true);\n if (result !== null) {\n dayOfMonth = result;\n continue;\n }\n }\n\n /* 2.3. If the found-month flag is not set and the date-token matches the\n * month production, set the found-month flag and set the month-value to\n * the month denoted by the date-token. Skip the remaining sub-steps and\n * continue to the next date-token.\n */\n if (month === null) {\n result = parseMonth(token);\n if (result !== null) {\n month = result;\n continue;\n }\n }\n\n /* 2.4. If the found-year flag is not set and the date-token matches the\n * year production, set the found-year flag and set the year-value to the\n * number denoted by the date-token. Skip the remaining sub-steps and\n * continue to the next date-token.\n */\n if (year === null) {\n // \"year = 2*4DIGIT ( non-digit *OCTET )\"\n result = parseDigits(token, 2, 4, true);\n if (result !== null) {\n year = result;\n /* From S5.1.1:\n * 3. If the year-value is greater than or equal to 70 and less\n * than or equal to 99, increment the year-value by 1900.\n * 4. If the year-value is greater than or equal to 0 and less\n * than or equal to 69, increment the year-value by 2000.\n */\n if (year >= 70 && year <= 99) {\n year += 1900;\n } else if (year >= 0 && year <= 69) {\n year += 2000;\n }\n }\n }\n }\n\n /* RFC 6265 S5.1.1\n * \"5. Abort these steps and fail to parse the cookie-date if:\n * * at least one of the found-day-of-month, found-month, found-\n * year, or found-time flags is not set,\n * * the day-of-month-value is less than 1 or greater than 31,\n * * the year-value is less than 1601,\n * * the hour-value is greater than 23,\n * * the minute-value is greater than 59, or\n * * the second-value is greater than 59.\n * (Note that leap seconds cannot be represented in this syntax.)\"\n *\n * So, in order as above:\n */\n if (\n dayOfMonth === null ||\n month === null ||\n year === null ||\n second === null ||\n dayOfMonth < 1 ||\n dayOfMonth > 31 ||\n year < 1601 ||\n hour > 23 ||\n minute > 59 ||\n second > 59\n ) {\n return;\n }\n\n return new Date(Date.UTC(year, month, dayOfMonth, hour, minute, second));\n}\n\nfunction formatDate(date) {\n return date.toUTCString();\n}\n\n// S5.1.2 Canonicalized Host Names\nfunction canonicalDomain(str) {\n if (str == null) {\n return null;\n }\n str = str.trim().replace(/^\\./, \"\"); // S4.1.2.3 & S5.2.3: ignore leading .\n\n // convert to IDN if any non-ASCII characters\n if (punycode && /[^\\u0001-\\u007f]/.test(str)) {\n str = punycode.toASCII(str);\n }\n\n return str.toLowerCase();\n}\n\n// S5.1.3 Domain Matching\nfunction domainMatch(str, domStr, canonicalize) {\n if (str == null || domStr == null) {\n return null;\n }\n if (canonicalize !== false) {\n str = canonicalDomain(str);\n domStr = canonicalDomain(domStr);\n }\n\n /*\n * S5.1.3:\n * \"A string domain-matches a given domain string if at least one of the\n * following conditions hold:\"\n *\n * \" o The domain string and the string are identical. (Note that both the\n * domain string and the string will have been canonicalized to lower case at\n * this point)\"\n */\n if (str == domStr) {\n return true;\n }\n\n /* \" o All of the following [three] conditions hold:\" */\n\n /* \"* The domain string is a suffix of the string\" */\n const idx = str.indexOf(domStr);\n if (idx <= 0) {\n return false; // it's a non-match (-1) or prefix (0)\n }\n\n // next, check it's a proper suffix\n // e.g., \"a.b.c\".indexOf(\"b.c\") === 2\n // 5 === 3+2\n if (str.length !== domStr.length + idx) {\n return false; // it's not a suffix\n }\n\n /* \" * The last character of the string that is not included in the\n * domain string is a %x2E (\".\") character.\" */\n if (str.substr(idx-1,1) !== '.') {\n return false; // doesn't align on \".\"\n }\n\n /* \" * The string is a host name (i.e., not an IP address).\" */\n if (IP_REGEX_LOWERCASE.test(str)) {\n return false; // it's an IP address\n }\n\n return true;\n}\n\n// RFC6265 S5.1.4 Paths and Path-Match\n\n/*\n * \"The user agent MUST use an algorithm equivalent to the following algorithm\n * to compute the default-path of a cookie:\"\n *\n * Assumption: the path (and not query part or absolute uri) is passed in.\n */\nfunction defaultPath(path) {\n // \"2. If the uri-path is empty or if the first character of the uri-path is not\n // a %x2F (\"/\") character, output %x2F (\"/\") and skip the remaining steps.\n if (!path || path.substr(0, 1) !== \"/\") {\n return \"/\";\n }\n\n // \"3. If the uri-path contains no more than one %x2F (\"/\") character, output\n // %x2F (\"/\") and skip the remaining step.\"\n if (path === \"/\") {\n return path;\n }\n\n const rightSlash = path.lastIndexOf(\"/\");\n if (rightSlash === 0) {\n return \"/\";\n }\n\n // \"4. Output the characters of the uri-path from the first character up to,\n // but not including, the right-most %x2F (\"/\").\"\n return path.slice(0, rightSlash);\n}\n\nfunction trimTerminator(str) {\n for (let t = 0; t < TERMINATORS.length; t++) {\n const terminatorIdx = str.indexOf(TERMINATORS[t]);\n if (terminatorIdx !== -1) {\n str = str.substr(0, terminatorIdx);\n }\n }\n\n return str;\n}\n\nfunction parseCookiePair(cookiePair, looseMode) {\n cookiePair = trimTerminator(cookiePair);\n\n let firstEq = cookiePair.indexOf(\"=\");\n if (looseMode) {\n if (firstEq === 0) {\n // '=' is immediately at start\n cookiePair = cookiePair.substr(1);\n firstEq = cookiePair.indexOf(\"=\"); // might still need to split on '='\n }\n } else {\n // non-loose mode\n if (firstEq <= 0) {\n // no '=' or is at start\n return; // needs to have non-empty \"cookie-name\"\n }\n }\n\n let cookieName, cookieValue;\n if (firstEq <= 0) {\n cookieName = \"\";\n cookieValue = cookiePair.trim();\n } else {\n cookieName = cookiePair.substr(0, firstEq).trim();\n cookieValue = cookiePair.substr(firstEq + 1).trim();\n }\n\n if (CONTROL_CHARS.test(cookieName) || CONTROL_CHARS.test(cookieValue)) {\n return;\n }\n\n const c = new Cookie();\n c.key = cookieName;\n c.value = cookieValue;\n return c;\n}\n\nfunction parse(str, options) {\n if (!options || typeof options !== \"object\") {\n options = {};\n }\n str = str.trim();\n\n // We use a regex to parse the \"name-value-pair\" part of S5.2\n const firstSemi = str.indexOf(\";\"); // S5.2 step 1\n const cookiePair = firstSemi === -1 ? str : str.substr(0, firstSemi);\n const c = parseCookiePair(cookiePair, !!options.loose);\n if (!c) {\n return;\n }\n\n if (firstSemi === -1) {\n return c;\n }\n\n // S5.2.3 \"unparsed-attributes consist of the remainder of the set-cookie-string\n // (including the %x3B (\";\") in question).\" plus later on in the same section\n // \"discard the first \";\" and trim\".\n const unparsed = str.slice(firstSemi + 1).trim();\n\n // \"If the unparsed-attributes string is empty, skip the rest of these\n // steps.\"\n if (unparsed.length === 0) {\n return c;\n }\n\n /*\n * S5.2 says that when looping over the items \"[p]rocess the attribute-name\n * and attribute-value according to the requirements in the following\n * subsections\" for every item. Plus, for many of the individual attributes\n * in S5.3 it says to use the \"attribute-value of the last attribute in the\n * cookie-attribute-list\". Therefore, in this implementation, we overwrite\n * the previous value.\n */\n const cookie_avs = unparsed.split(\";\");\n while (cookie_avs.length) {\n const av = cookie_avs.shift().trim();\n if (av.length === 0) {\n // happens if \";;\" appears\n continue;\n }\n const av_sep = av.indexOf(\"=\");\n let av_key, av_value;\n\n if (av_sep === -1) {\n av_key = av;\n av_value = null;\n } else {\n av_key = av.substr(0, av_sep);\n av_value = av.substr(av_sep + 1);\n }\n\n av_key = av_key.trim().toLowerCase();\n\n if (av_value) {\n av_value = av_value.trim();\n }\n\n switch (av_key) {\n case \"expires\": // S5.2.1\n if (av_value) {\n const exp = parseDate(av_value);\n // \"If the attribute-value failed to parse as a cookie date, ignore the\n // cookie-av.\"\n if (exp) {\n // over and underflow not realistically a concern: V8's getTime() seems to\n // store something larger than a 32-bit time_t (even with 32-bit node)\n c.expires = exp;\n }\n }\n break;\n\n case \"max-age\": // S5.2.2\n if (av_value) {\n // \"If the first character of the attribute-value is not a DIGIT or a \"-\"\n // character ...[or]... If the remainder of attribute-value contains a\n // non-DIGIT character, ignore the cookie-av.\"\n if (/^-?[0-9]+$/.test(av_value)) {\n const delta = parseInt(av_value, 10);\n // \"If delta-seconds is less than or equal to zero (0), let expiry-time\n // be the earliest representable date and time.\"\n c.setMaxAge(delta);\n }\n }\n break;\n\n case \"domain\": // S5.2.3\n // \"If the attribute-value is empty, the behavior is undefined. However,\n // the user agent SHOULD ignore the cookie-av entirely.\"\n if (av_value) {\n // S5.2.3 \"Let cookie-domain be the attribute-value without the leading %x2E\n // (\".\") character.\"\n const domain = av_value.trim().replace(/^\\./, \"\");\n if (domain) {\n // \"Convert the cookie-domain to lower case.\"\n c.domain = domain.toLowerCase();\n }\n }\n break;\n\n case \"path\": // S5.2.4\n /*\n * \"If the attribute-value is empty or if the first character of the\n * attribute-value is not %x2F (\"/\"):\n * Let cookie-path be the default-path.\n * Otherwise:\n * Let cookie-path be the attribute-value.\"\n *\n * We'll represent the default-path as null since it depends on the\n * context of the parsing.\n */\n c.path = av_value && av_value[0] === \"/\" ? av_value : null;\n break;\n\n case \"secure\": // S5.2.5\n /*\n * \"If the attribute-name case-insensitively matches the string \"Secure\",\n * the user agent MUST append an attribute to the cookie-attribute-list\n * with an attribute-name of Secure and an empty attribute-value.\"\n */\n c.secure = true;\n break;\n\n case \"httponly\": // S5.2.6 -- effectively the same as 'secure'\n c.httpOnly = true;\n break;\n\n case \"samesite\": // RFC6265bis-02 S5.3.7\n const enforcement = av_value ? av_value.toLowerCase() : \"\";\n switch (enforcement) {\n case \"strict\":\n c.sameSite = \"strict\";\n break;\n case \"lax\":\n c.sameSite = \"lax\";\n break;\n default:\n // RFC6265bis-02 S5.3.7 step 1:\n // \"If cookie-av's attribute-value is not a case-insensitive match\n // for \"Strict\" or \"Lax\", ignore the \"cookie-av\".\"\n // This effectively sets it to 'none' from the prototype.\n break;\n }\n break;\n\n default:\n c.extensions = c.extensions || [];\n c.extensions.push(av);\n break;\n }\n }\n\n return c;\n}\n\n/**\n * If the cookie-name begins with a case-sensitive match for the\n * string \"__Secure-\", abort these steps and ignore the cookie\n * entirely unless the cookie's secure-only-flag is true.\n * @param cookie\n * @returns boolean\n */\nfunction isSecurePrefixConditionMet(cookie) {\n return !cookie.key.startsWith(\"__Secure-\") || cookie.secure;\n}\n\n/**\n * If the cookie-name begins with a case-sensitive match for the\n * string \"__Host-\", abort these steps and ignore the cookie\n * entirely unless the cookie meets all the following criteria:\n * 1. The cookie's secure-only-flag is true.\n * 2. The cookie's host-only-flag is true.\n * 3. The cookie-attribute-list contains an attribute with an\n * attribute-name of \"Path\", and the cookie's path is \"/\".\n * @param cookie\n * @returns boolean\n */\nfunction isHostPrefixConditionMet(cookie) {\n return (\n !cookie.key.startsWith(\"__Host-\") ||\n (cookie.secure &&\n cookie.hostOnly &&\n cookie.path != null &&\n cookie.path === \"/\")\n );\n}\n\n// avoid the V8 deoptimization monster!\nfunction jsonParse(str) {\n let obj;\n try {\n obj = JSON.parse(str);\n } catch (e) {\n return e;\n }\n return obj;\n}\n\nfunction fromJSON(str) {\n if (!str) {\n return null;\n }\n\n let obj;\n if (typeof str === \"string\") {\n obj = jsonParse(str);\n if (obj instanceof Error) {\n return null;\n }\n } else {\n // assume it's an Object\n obj = str;\n }\n\n const c = new Cookie();\n for (let i = 0; i < Cookie.serializableProperties.length; i++) {\n const prop = Cookie.serializableProperties[i];\n if (obj[prop] === undefined || obj[prop] === cookieDefaults[prop]) {\n continue; // leave as prototype default\n }\n\n if (prop === \"expires\" || prop === \"creation\" || prop === \"lastAccessed\") {\n if (obj[prop] === null) {\n c[prop] = null;\n } else {\n c[prop] = obj[prop] == \"Infinity\" ? \"Infinity\" : new Date(obj[prop]);\n }\n } else {\n c[prop] = obj[prop];\n }\n }\n\n return c;\n}\n\n/* Section 5.4 part 2:\n * \"* Cookies with longer paths are listed before cookies with\n * shorter paths.\n *\n * * Among cookies that have equal-length path fields, cookies with\n * earlier creation-times are listed before cookies with later\n * creation-times.\"\n */\n\nfunction cookieCompare(a, b) {\n let cmp = 0;\n\n // descending for length: b CMP a\n const aPathLen = a.path ? a.path.length : 0;\n const bPathLen = b.path ? b.path.length : 0;\n cmp = bPathLen - aPathLen;\n if (cmp !== 0) {\n return cmp;\n }\n\n // ascending for time: a CMP b\n const aTime = a.creation ? a.creation.getTime() : MAX_TIME;\n const bTime = b.creation ? b.creation.getTime() : MAX_TIME;\n cmp = aTime - bTime;\n if (cmp !== 0) {\n return cmp;\n }\n\n // break ties for the same millisecond (precision of JavaScript's clock)\n cmp = a.creationIndex - b.creationIndex;\n\n return cmp;\n}\n\n// Gives the permutation of all possible pathMatch()es of a given path. The\n// array is in longest-to-shortest order. Handy for indexing.\nfunction permutePath(path) {\n if (path === \"/\") {\n return [\"/\"];\n }\n const permutations = [path];\n while (path.length > 1) {\n const lindex = path.lastIndexOf(\"/\");\n if (lindex === 0) {\n break;\n }\n path = path.substr(0, lindex);\n permutations.push(path);\n }\n permutations.push(\"/\");\n return permutations;\n}\n\nfunction getCookieContext(url) {\n if (url instanceof Object) {\n return url;\n }\n // NOTE: decodeURI will throw on malformed URIs (see GH-32).\n // Therefore, we will just skip decoding for such URIs.\n try {\n url = decodeURI(url);\n } catch (err) {\n // Silently swallow error\n }\n\n return urlParse(url);\n}\n\nconst cookieDefaults = {\n // the order in which the RFC has them:\n key: \"\",\n value: \"\",\n expires: \"Infinity\",\n maxAge: null,\n domain: null,\n path: null,\n secure: false,\n httpOnly: false,\n extensions: null,\n // set by the CookieJar:\n hostOnly: null,\n pathIsDefault: null,\n creation: null,\n lastAccessed: null,\n sameSite: \"none\"\n};\n\nclass Cookie {\n constructor(options = {}) {\n if (util.inspect.custom) {\n this[util.inspect.custom] = this.inspect;\n }\n\n Object.assign(this, cookieDefaults, options);\n this.creation = this.creation || new Date();\n\n // used to break creation ties in cookieCompare():\n Object.defineProperty(this, \"creationIndex\", {\n configurable: false,\n enumerable: false, // important for assert.deepEqual checks\n writable: true,\n value: ++Cookie.cookiesCreated\n });\n }\n\n inspect() {\n const now = Date.now();\n const hostOnly = this.hostOnly != null ? this.hostOnly : \"?\";\n const createAge = this.creation\n ? `${now - this.creation.getTime()}ms`\n : \"?\";\n const accessAge = this.lastAccessed\n ? `${now - this.lastAccessed.getTime()}ms`\n : \"?\";\n return `Cookie=\"${this.toString()}; hostOnly=${hostOnly}; aAge=${accessAge}; cAge=${createAge}\"`;\n }\n\n toJSON() {\n const obj = {};\n\n for (const prop of Cookie.serializableProperties) {\n if (this[prop] === cookieDefaults[prop]) {\n continue; // leave as prototype default\n }\n\n if (\n prop === \"expires\" ||\n prop === \"creation\" ||\n prop === \"lastAccessed\"\n ) {\n if (this[prop] === null) {\n obj[prop] = null;\n } else {\n obj[prop] =\n this[prop] == \"Infinity\" // intentionally not ===\n ? \"Infinity\"\n : this[prop].toISOString();\n }\n } else if (prop === \"maxAge\") {\n if (this[prop] !== null) {\n // again, intentionally not ===\n obj[prop] =\n this[prop] == Infinity || this[prop] == -Infinity\n ? this[prop].toString()\n : this[prop];\n }\n } else {\n if (this[prop] !== cookieDefaults[prop]) {\n obj[prop] = this[prop];\n }\n }\n }\n\n return obj;\n }\n\n clone() {\n return fromJSON(this.toJSON());\n }\n\n validate() {\n if (!COOKIE_OCTETS.test(this.value)) {\n return false;\n }\n if (\n this.expires != Infinity &&\n !(this.expires instanceof Date) &&\n !parseDate(this.expires)\n ) {\n return false;\n }\n if (this.maxAge != null && this.maxAge <= 0) {\n return false; // \"Max-Age=\" non-zero-digit *DIGIT\n }\n if (this.path != null && !PATH_VALUE.test(this.path)) {\n return false;\n }\n\n const cdomain = this.cdomain();\n if (cdomain) {\n if (cdomain.match(/\\.$/)) {\n return false; // S4.1.2.3 suggests that this is bad. domainMatch() tests confirm this\n }\n const suffix = pubsuffix.getPublicSuffix(cdomain);\n if (suffix == null) {\n // it's a public suffix\n return false;\n }\n }\n return true;\n }\n\n setExpires(exp) {\n if (exp instanceof Date) {\n this.expires = exp;\n } else {\n this.expires = parseDate(exp) || \"Infinity\";\n }\n }\n\n setMaxAge(age) {\n if (age === Infinity || age === -Infinity) {\n this.maxAge = age.toString(); // so JSON.stringify() works\n } else {\n this.maxAge = age;\n }\n }\n\n cookieString() {\n let val = this.value;\n if (val == null) {\n val = \"\";\n }\n if (this.key === \"\") {\n return val;\n }\n return `${this.key}=${val}`;\n }\n\n // gives Set-Cookie header format\n toString() {\n let str = this.cookieString();\n\n if (this.expires != Infinity) {\n if (this.expires instanceof Date) {\n str += `; Expires=${formatDate(this.expires)}`;\n } else {\n str += `; Expires=${this.expires}`;\n }\n }\n\n if (this.maxAge != null && this.maxAge != Infinity) {\n str += `; Max-Age=${this.maxAge}`;\n }\n\n if (this.domain && !this.hostOnly) {\n str += `; Domain=${this.domain}`;\n }\n if (this.path) {\n str += `; Path=${this.path}`;\n }\n\n if (this.secure) {\n str += \"; Secure\";\n }\n if (this.httpOnly) {\n str += \"; HttpOnly\";\n }\n if (this.sameSite && this.sameSite !== \"none\") {\n const ssCanon = Cookie.sameSiteCanonical[this.sameSite.toLowerCase()];\n str += `; SameSite=${ssCanon ? ssCanon : this.sameSite}`;\n }\n if (this.extensions) {\n this.extensions.forEach(ext => {\n str += `; ${ext}`;\n });\n }\n\n return str;\n }\n\n // TTL() partially replaces the \"expiry-time\" parts of S5.3 step 3 (setCookie()\n // elsewhere)\n // S5.3 says to give the \"latest representable date\" for which we use Infinity\n // For \"expired\" we use 0\n TTL(now) {\n /* RFC6265 S4.1.2.2 If a cookie has both the Max-Age and the Expires\n * attribute, the Max-Age attribute has precedence and controls the\n * expiration date of the cookie.\n * (Concurs with S5.3 step 3)\n */\n if (this.maxAge != null) {\n return this.maxAge <= 0 ? 0 : this.maxAge * 1000;\n }\n\n let expires = this.expires;\n if (expires != Infinity) {\n if (!(expires instanceof Date)) {\n expires = parseDate(expires) || Infinity;\n }\n\n if (expires == Infinity) {\n return Infinity;\n }\n\n return expires.getTime() - (now || Date.now());\n }\n\n return Infinity;\n }\n\n // expiryTime() replaces the \"expiry-time\" parts of S5.3 step 3 (setCookie()\n // elsewhere)\n expiryTime(now) {\n if (this.maxAge != null) {\n const relativeTo = now || this.creation || new Date();\n const age = this.maxAge <= 0 ? -Infinity : this.maxAge * 1000;\n return relativeTo.getTime() + age;\n }\n\n if (this.expires == Infinity) {\n return Infinity;\n }\n return this.expires.getTime();\n }\n\n // expiryDate() replaces the \"expiry-time\" parts of S5.3 step 3 (setCookie()\n // elsewhere), except it returns a Date\n expiryDate(now) {\n const millisec = this.expiryTime(now);\n if (millisec == Infinity) {\n return new Date(MAX_TIME);\n } else if (millisec == -Infinity) {\n return new Date(MIN_TIME);\n } else {\n return new Date(millisec);\n }\n }\n\n // This replaces the \"persistent-flag\" parts of S5.3 step 3\n isPersistent() {\n return this.maxAge != null || this.expires != Infinity;\n }\n\n // Mostly S5.1.2 and S5.2.3:\n canonicalizedDomain() {\n if (this.domain == null) {\n return null;\n }\n return canonicalDomain(this.domain);\n }\n\n cdomain() {\n return this.canonicalizedDomain();\n }\n}\n\nCookie.cookiesCreated = 0;\nCookie.parse = parse;\nCookie.fromJSON = fromJSON;\nCookie.serializableProperties = Object.keys(cookieDefaults);\nCookie.sameSiteLevel = {\n strict: 3,\n lax: 2,\n none: 1\n};\n\nCookie.sameSiteCanonical = {\n strict: \"Strict\",\n lax: \"Lax\"\n};\n\nfunction getNormalizedPrefixSecurity(prefixSecurity) {\n if (prefixSecurity != null) {\n const normalizedPrefixSecurity = prefixSecurity.toLowerCase();\n /* The three supported options */\n switch (normalizedPrefixSecurity) {\n case PrefixSecurityEnum.STRICT:\n case PrefixSecurityEnum.SILENT:\n case PrefixSecurityEnum.DISABLED:\n return normalizedPrefixSecurity;\n }\n }\n /* Default is SILENT */\n return PrefixSecurityEnum.SILENT;\n}\n\nclass CookieJar {\n constructor(store, options = { rejectPublicSuffixes: true }) {\n if (typeof options === \"boolean\") {\n options = { rejectPublicSuffixes: options };\n }\n this.rejectPublicSuffixes = options.rejectPublicSuffixes;\n this.enableLooseMode = !!options.looseMode;\n this.allowSpecialUseDomain = !!options.allowSpecialUseDomain;\n this.store = store || new MemoryCookieStore();\n this.prefixSecurity = getNormalizedPrefixSecurity(options.prefixSecurity);\n this._cloneSync = syncWrap(\"clone\");\n this._importCookiesSync = syncWrap(\"_importCookies\");\n this.getCookiesSync = syncWrap(\"getCookies\");\n this.getCookieStringSync = syncWrap(\"getCookieString\");\n this.getSetCookieStringsSync = syncWrap(\"getSetCookieStrings\");\n this.removeAllCookiesSync = syncWrap(\"removeAllCookies\");\n this.setCookieSync = syncWrap(\"setCookie\");\n this.serializeSync = syncWrap(\"serialize\");\n }\n\n setCookie(cookie, url, options, cb) {\n let err;\n const context = getCookieContext(url);\n if (typeof options === \"function\") {\n cb = options;\n options = {};\n }\n\n const host = canonicalDomain(context.hostname);\n const loose = options.loose || this.enableLooseMode;\n\n let sameSiteContext = null;\n if (options.sameSiteContext) {\n sameSiteContext = checkSameSiteContext(options.sameSiteContext);\n if (!sameSiteContext) {\n return cb(new Error(SAME_SITE_CONTEXT_VAL_ERR));\n }\n }\n\n // S5.3 step 1\n if (typeof cookie === \"string\" || cookie instanceof String) {\n cookie = Cookie.parse(cookie, { loose: loose });\n if (!cookie) {\n err = new Error(\"Cookie failed to parse\");\n return cb(options.ignoreError ? null : err);\n }\n } else if (!(cookie instanceof Cookie)) {\n // If you're seeing this error, and are passing in a Cookie object,\n // it *might* be a Cookie object from another loaded version of tough-cookie.\n err = new Error(\n \"First argument to setCookie must be a Cookie object or string\"\n );\n return cb(options.ignoreError ? null : err);\n }\n\n // S5.3 step 2\n const now = options.now || new Date(); // will assign later to save effort in the face of errors\n\n // S5.3 step 3: NOOP; persistent-flag and expiry-time is handled by getCookie()\n\n // S5.3 step 4: NOOP; domain is null by default\n\n // S5.3 step 5: public suffixes\n if (this.rejectPublicSuffixes && cookie.domain) {\n const suffix = pubsuffix.getPublicSuffix(cookie.cdomain());\n if (suffix == null) {\n // e.g. \"com\"\n err = new Error(\"Cookie has domain set to a public suffix\");\n return cb(options.ignoreError ? null : err);\n }\n }\n\n // S5.3 step 6:\n if (cookie.domain) {\n if (!domainMatch(host, cookie.cdomain(), false)) {\n err = new Error(\n `Cookie not in this host's domain. Cookie:${cookie.cdomain()} Request:${host}`\n );\n return cb(options.ignoreError ? null : err);\n }\n\n if (cookie.hostOnly == null) {\n // don't reset if already set\n cookie.hostOnly = false;\n }\n } else {\n cookie.hostOnly = true;\n cookie.domain = host;\n }\n\n //S5.2.4 If the attribute-value is empty or if the first character of the\n //attribute-value is not %x2F (\"/\"):\n //Let cookie-path be the default-path.\n if (!cookie.path || cookie.path[0] !== \"/\") {\n cookie.path = defaultPath(context.pathname);\n cookie.pathIsDefault = true;\n }\n\n // S5.3 step 8: NOOP; secure attribute\n // S5.3 step 9: NOOP; httpOnly attribute\n\n // S5.3 step 10\n if (options.http === false && cookie.httpOnly) {\n err = new Error(\"Cookie is HttpOnly and this isn't an HTTP API\");\n return cb(options.ignoreError ? null : err);\n }\n\n // 6252bis-02 S5.4 Step 13 & 14:\n if (cookie.sameSite !== \"none\" && sameSiteContext) {\n // \"If the cookie's \"same-site-flag\" is not \"None\", and the cookie\n // is being set from a context whose \"site for cookies\" is not an\n // exact match for request-uri's host's registered domain, then\n // abort these steps and ignore the newly created cookie entirely.\"\n if (sameSiteContext === \"none\") {\n err = new Error(\n \"Cookie is SameSite but this is a cross-origin request\"\n );\n return cb(options.ignoreError ? null : err);\n }\n }\n\n /* 6265bis-02 S5.4 Steps 15 & 16 */\n const ignoreErrorForPrefixSecurity =\n this.prefixSecurity === PrefixSecurityEnum.SILENT;\n const prefixSecurityDisabled =\n this.prefixSecurity === PrefixSecurityEnum.DISABLED;\n /* If prefix checking is not disabled ...*/\n if (!prefixSecurityDisabled) {\n let errorFound = false;\n let errorMsg;\n /* Check secure prefix condition */\n if (!isSecurePrefixConditionMet(cookie)) {\n errorFound = true;\n errorMsg = \"Cookie has __Secure prefix but Secure attribute is not set\";\n } else if (!isHostPrefixConditionMet(cookie)) {\n /* Check host prefix condition */\n errorFound = true;\n errorMsg =\n \"Cookie has __Host prefix but either Secure or HostOnly attribute is not set or Path is not '/'\";\n }\n if (errorFound) {\n return cb(\n options.ignoreError || ignoreErrorForPrefixSecurity\n ? null\n : new Error(errorMsg)\n );\n }\n }\n\n const store = this.store;\n\n if (!store.updateCookie) {\n store.updateCookie = function(oldCookie, newCookie, cb) {\n this.putCookie(newCookie, cb);\n };\n }\n\n function withCookie(err, oldCookie) {\n if (err) {\n return cb(err);\n }\n\n const next = function(err) {\n if (err) {\n return cb(err);\n } else {\n cb(null, cookie);\n }\n };\n\n if (oldCookie) {\n // S5.3 step 11 - \"If the cookie store contains a cookie with the same name,\n // domain, and path as the newly created cookie:\"\n if (options.http === false && oldCookie.httpOnly) {\n // step 11.2\n err = new Error(\"old Cookie is HttpOnly and this isn't an HTTP API\");\n return cb(options.ignoreError ? null : err);\n }\n cookie.creation = oldCookie.creation; // step 11.3\n cookie.creationIndex = oldCookie.creationIndex; // preserve tie-breaker\n cookie.lastAccessed = now;\n // Step 11.4 (delete cookie) is implied by just setting the new one:\n store.updateCookie(oldCookie, cookie, next); // step 12\n } else {\n cookie.creation = cookie.lastAccessed = now;\n store.putCookie(cookie, next); // step 12\n }\n }\n\n store.findCookie(cookie.domain, cookie.path, cookie.key, withCookie);\n }\n\n // RFC6365 S5.4\n getCookies(url, options, cb) {\n const context = getCookieContext(url);\n if (typeof options === \"function\") {\n cb = options;\n options = {};\n }\n\n const host = canonicalDomain(context.hostname);\n const path = context.pathname || \"/\";\n\n let secure = options.secure;\n if (\n secure == null &&\n context.protocol &&\n (context.protocol == \"https:\" || context.protocol == \"wss:\")\n ) {\n secure = true;\n }\n\n let sameSiteLevel = 0;\n if (options.sameSiteContext) {\n const sameSiteContext = checkSameSiteContext(options.sameSiteContext);\n sameSiteLevel = Cookie.sameSiteLevel[sameSiteContext];\n if (!sameSiteLevel) {\n return cb(new Error(SAME_SITE_CONTEXT_VAL_ERR));\n }\n }\n\n let http = options.http;\n if (http == null) {\n http = true;\n }\n\n const now = options.now || Date.now();\n const expireCheck = options.expire !== false;\n const allPaths = !!options.allPaths;\n const store = this.store;\n\n function matchingCookie(c) {\n // \"Either:\n // The cookie's host-only-flag is true and the canonicalized\n // request-host is identical to the cookie's domain.\n // Or:\n // The cookie's host-only-flag is false and the canonicalized\n // request-host domain-matches the cookie's domain.\"\n if (c.hostOnly) {\n if (c.domain != host) {\n return false;\n }\n } else {\n if (!domainMatch(host, c.domain, false)) {\n return false;\n }\n }\n\n // \"The request-uri's path path-matches the cookie's path.\"\n if (!allPaths && !pathMatch(path, c.path)) {\n return false;\n }\n\n // \"If the cookie's secure-only-flag is true, then the request-uri's\n // scheme must denote a \"secure\" protocol\"\n if (c.secure && !secure) {\n return false;\n }\n\n // \"If the cookie's http-only-flag is true, then exclude the cookie if the\n // cookie-string is being generated for a \"non-HTTP\" API\"\n if (c.httpOnly && !http) {\n return false;\n }\n\n // RFC6265bis-02 S5.3.7\n if (sameSiteLevel) {\n const cookieLevel = Cookie.sameSiteLevel[c.sameSite || \"none\"];\n if (cookieLevel > sameSiteLevel) {\n // only allow cookies at or below the request level\n return false;\n }\n }\n\n // deferred from S5.3\n // non-RFC: allow retention of expired cookies by choice\n if (expireCheck && c.expiryTime() <= now) {\n store.removeCookie(c.domain, c.path, c.key, () => {}); // result ignored\n return false;\n }\n\n return true;\n }\n\n store.findCookies(\n host,\n allPaths ? null : path,\n this.allowSpecialUseDomain,\n (err, cookies) => {\n if (err) {\n return cb(err);\n }\n\n cookies = cookies.filter(matchingCookie);\n\n // sorting of S5.4 part 2\n if (options.sort !== false) {\n cookies = cookies.sort(cookieCompare);\n }\n\n // S5.4 part 3\n const now = new Date();\n for (const cookie of cookies) {\n cookie.lastAccessed = now;\n }\n // TODO persist lastAccessed\n\n cb(null, cookies);\n }\n );\n }\n\n getCookieString(...args) {\n const cb = args.pop();\n const next = function(err, cookies) {\n if (err) {\n cb(err);\n } else {\n cb(\n null,\n cookies\n .sort(cookieCompare)\n .map(c => c.cookieString())\n .join(\"; \")\n );\n }\n };\n args.push(next);\n this.getCookies.apply(this, args);\n }\n\n getSetCookieStrings(...args) {\n const cb = args.pop();\n const next = function(err, cookies) {\n if (err) {\n cb(err);\n } else {\n cb(\n null,\n cookies.map(c => {\n return c.toString();\n })\n );\n }\n };\n args.push(next);\n this.getCookies.apply(this, args);\n }\n\n serialize(cb) {\n let type = this.store.constructor.name;\n if (type === \"Object\") {\n type = null;\n }\n\n // update README.md \"Serialization Format\" if you change this, please!\n const serialized = {\n // The version of tough-cookie that serialized this jar. Generally a good\n // practice since future versions can make data import decisions based on\n // known past behavior. When/if this matters, use `semver`.\n version: `tough-cookie@${VERSION}`,\n\n // add the store type, to make humans happy:\n storeType: type,\n\n // CookieJar configuration:\n rejectPublicSuffixes: !!this.rejectPublicSuffixes,\n\n // this gets filled from getAllCookies:\n cookies: []\n };\n\n if (\n !(\n this.store.getAllCookies &&\n typeof this.store.getAllCookies === \"function\"\n )\n ) {\n return cb(\n new Error(\n \"store does not support getAllCookies and cannot be serialized\"\n )\n );\n }\n\n this.store.getAllCookies((err, cookies) => {\n if (err) {\n return cb(err);\n }\n\n serialized.cookies = cookies.map(cookie => {\n // convert to serialized 'raw' cookies\n cookie = cookie instanceof Cookie ? cookie.toJSON() : cookie;\n\n // Remove the index so new ones get assigned during deserialization\n delete cookie.creationIndex;\n\n return cookie;\n });\n\n return cb(null, serialized);\n });\n }\n\n toJSON() {\n return this.serializeSync();\n }\n\n // use the class method CookieJar.deserialize instead of calling this directly\n _importCookies(serialized, cb) {\n let cookies = serialized.cookies;\n if (!cookies || !Array.isArray(cookies)) {\n return cb(new Error(\"serialized jar has no cookies array\"));\n }\n cookies = cookies.slice(); // do not modify the original\n\n const putNext = err => {\n if (err) {\n return cb(err);\n }\n\n if (!cookies.length) {\n return cb(err, this);\n }\n\n let cookie;\n try {\n cookie = fromJSON(cookies.shift());\n } catch (e) {\n return cb(e);\n }\n\n if (cookie === null) {\n return putNext(null); // skip this cookie\n }\n\n this.store.putCookie(cookie, putNext);\n };\n\n putNext();\n }\n\n clone(newStore, cb) {\n if (arguments.length === 1) {\n cb = newStore;\n newStore = null;\n }\n\n this.serialize((err, serialized) => {\n if (err) {\n return cb(err);\n }\n CookieJar.deserialize(serialized, newStore, cb);\n });\n }\n\n cloneSync(newStore) {\n if (arguments.length === 0) {\n return this._cloneSync();\n }\n if (!newStore.synchronous) {\n throw new Error(\n \"CookieJar clone destination store is not synchronous; use async API instead.\"\n );\n }\n return this._cloneSync(newStore);\n }\n\n removeAllCookies(cb) {\n const store = this.store;\n\n // Check that the store implements its own removeAllCookies(). The default\n // implementation in Store will immediately call the callback with a \"not\n // implemented\" Error.\n if (\n typeof store.removeAllCookies === \"function\" &&\n store.removeAllCookies !== Store.prototype.removeAllCookies\n ) {\n return store.removeAllCookies(cb);\n }\n\n store.getAllCookies((err, cookies) => {\n if (err) {\n return cb(err);\n }\n\n if (cookies.length === 0) {\n return cb(null);\n }\n\n let completedCount = 0;\n const removeErrors = [];\n\n function removeCookieCb(removeErr) {\n if (removeErr) {\n removeErrors.push(removeErr);\n }\n\n completedCount++;\n\n if (completedCount === cookies.length) {\n return cb(removeErrors.length ? removeErrors[0] : null);\n }\n }\n\n cookies.forEach(cookie => {\n store.removeCookie(\n cookie.domain,\n cookie.path,\n cookie.key,\n removeCookieCb\n );\n });\n });\n }\n\n static deserialize(strOrObj, store, cb) {\n if (arguments.length !== 3) {\n // store is optional\n cb = store;\n store = null;\n }\n\n let serialized;\n if (typeof strOrObj === \"string\") {\n serialized = jsonParse(strOrObj);\n if (serialized instanceof Error) {\n return cb(serialized);\n }\n } else {\n serialized = strOrObj;\n }\n\n const jar = new CookieJar(store, serialized.rejectPublicSuffixes);\n jar._importCookies(serialized, err => {\n if (err) {\n return cb(err);\n }\n cb(null, jar);\n });\n }\n\n static deserializeSync(strOrObj, store) {\n const serialized =\n typeof strOrObj === \"string\" ? JSON.parse(strOrObj) : strOrObj;\n const jar = new CookieJar(store, serialized.rejectPublicSuffixes);\n\n // catch this mistake early:\n if (!jar.store.synchronous) {\n throw new Error(\n \"CookieJar store is not synchronous; use async API instead.\"\n );\n }\n\n jar._importCookiesSync(serialized);\n return jar;\n }\n}\nCookieJar.fromJSON = CookieJar.deserializeSync;\n\n[\n \"_importCookies\",\n \"clone\",\n \"getCookies\",\n \"getCookieString\",\n \"getSetCookieStrings\",\n \"removeAllCookies\",\n \"serialize\",\n \"setCookie\"\n].forEach(name => {\n CookieJar.prototype[name] = fromCallback(CookieJar.prototype[name]);\n});\nCookieJar.deserialize = fromCallback(CookieJar.deserialize);\n\n// Use a closure to provide a true imperative API for synchronous stores.\nfunction syncWrap(method) {\n return function(...args) {\n if (!this.store.synchronous) {\n throw new Error(\n \"CookieJar store is not synchronous; use async API instead.\"\n );\n }\n\n let syncErr, syncResult;\n this[method](...args, (err, result) => {\n syncErr = err;\n syncResult = result;\n });\n\n if (syncErr) {\n throw syncErr;\n }\n return syncResult;\n };\n}\n\nexports.version = VERSION;\nexports.CookieJar = CookieJar;\nexports.Cookie = Cookie;\nexports.Store = Store;\nexports.MemoryCookieStore = MemoryCookieStore;\nexports.parseDate = parseDate;\nexports.formatDate = formatDate;\nexports.parse = parse;\nexports.fromJSON = fromJSON;\nexports.domainMatch = domainMatch;\nexports.defaultPath = defaultPath;\nexports.pathMatch = pathMatch;\nexports.getPublicSuffix = pubsuffix.getPublicSuffix;\nexports.cookieCompare = cookieCompare;\nexports.permuteDomain = require(\"./permuteDomain\").permuteDomain;\nexports.permutePath = permutePath;\nexports.canonicalDomain = canonicalDomain;\nexports.PrefixSecurityEnum = PrefixSecurityEnum;\n","/*!\n * Copyright (c) 2018, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\nconst psl = require(\"psl\");\n\nfunction getPublicSuffix(domain) {\n return psl.get(domain);\n}\n\nexports.getPublicSuffix = getPublicSuffix;\n","/*eslint no-var:0, prefer-arrow-callback: 0, object-shorthand: 0 */\n'use strict';\n\n\nvar Punycode = require('punycode');\n\n\nvar internals = {};\n\n\n//\n// Read rules from file.\n//\ninternals.rules = require('./data/rules.json').map(function (rule) {\n\n return {\n rule: rule,\n suffix: rule.replace(/^(\\*\\.|\\!)/, ''),\n punySuffix: -1,\n wildcard: rule.charAt(0) === '*',\n exception: rule.charAt(0) === '!'\n };\n});\n\n\n//\n// Check is given string ends with `suffix`.\n//\ninternals.endsWith = function (str, suffix) {\n\n return str.indexOf(suffix, str.length - suffix.length) !== -1;\n};\n\n\n//\n// Find rule for a given domain.\n//\ninternals.findRule = function (domain) {\n\n var punyDomain = Punycode.toASCII(domain);\n return internals.rules.reduce(function (memo, rule) {\n\n if (rule.punySuffix === -1){\n rule.punySuffix = Punycode.toASCII(rule.suffix);\n }\n if (!internals.endsWith(punyDomain, '.' + rule.punySuffix) && punyDomain !== rule.punySuffix) {\n return memo;\n }\n // This has been commented out as it never seems to run. This is because\n // sub tlds always appear after their parents and we never find a shorter\n // match.\n //if (memo) {\n // var memoSuffix = Punycode.toASCII(memo.suffix);\n // if (memoSuffix.length >= punySuffix.length) {\n // return memo;\n // }\n //}\n return rule;\n }, null);\n};\n\n\n//\n// Error codes and messages.\n//\nexports.errorCodes = {\n DOMAIN_TOO_SHORT: 'Domain name too short.',\n DOMAIN_TOO_LONG: 'Domain name too long. It should be no more than 255 chars.',\n LABEL_STARTS_WITH_DASH: 'Domain name label can not start with a dash.',\n LABEL_ENDS_WITH_DASH: 'Domain name label can not end with a dash.',\n LABEL_TOO_LONG: 'Domain name label should be at most 63 chars long.',\n LABEL_TOO_SHORT: 'Domain name label should be at least 1 character long.',\n LABEL_INVALID_CHARS: 'Domain name label can only contain alphanumeric characters or dashes.'\n};\n\n\n//\n// Validate domain name and throw if not valid.\n//\n// From wikipedia:\n//\n// Hostnames are composed of series of labels concatenated with dots, as are all\n// domain names. Each label must be between 1 and 63 characters long, and the\n// entire hostname (including the delimiting dots) has a maximum of 255 chars.\n//\n// Allowed chars:\n//\n// * `a-z`\n// * `0-9`\n// * `-` but not as a starting or ending character\n// * `.` as a separator for the textual portions of a domain name\n//\n// * http://en.wikipedia.org/wiki/Domain_name\n// * http://en.wikipedia.org/wiki/Hostname\n//\ninternals.validate = function (input) {\n\n // Before we can validate we need to take care of IDNs with unicode chars.\n var ascii = Punycode.toASCII(input);\n\n if (ascii.length < 1) {\n return 'DOMAIN_TOO_SHORT';\n }\n if (ascii.length > 255) {\n return 'DOMAIN_TOO_LONG';\n }\n\n // Check each part's length and allowed chars.\n var labels = ascii.split('.');\n var label;\n\n for (var i = 0; i < labels.length; ++i) {\n label = labels[i];\n if (!label.length) {\n return 'LABEL_TOO_SHORT';\n }\n if (label.length > 63) {\n return 'LABEL_TOO_LONG';\n }\n if (label.charAt(0) === '-') {\n return 'LABEL_STARTS_WITH_DASH';\n }\n if (label.charAt(label.length - 1) === '-') {\n return 'LABEL_ENDS_WITH_DASH';\n }\n if (!/^[a-z0-9\\-]+$/.test(label)) {\n return 'LABEL_INVALID_CHARS';\n }\n }\n};\n\n\n//\n// Public API\n//\n\n\n//\n// Parse domain.\n//\nexports.parse = function (input) {\n\n if (typeof input !== 'string') {\n throw new TypeError('Domain name must be a string.');\n }\n\n // Force domain to lowercase.\n var domain = input.slice(0).toLowerCase();\n\n // Handle FQDN.\n // TODO: Simply remove trailing dot?\n if (domain.charAt(domain.length - 1) === '.') {\n domain = domain.slice(0, domain.length - 1);\n }\n\n // Validate and sanitise input.\n var error = internals.validate(domain);\n if (error) {\n return {\n input: input,\n error: {\n message: exports.errorCodes[error],\n code: error\n }\n };\n }\n\n var parsed = {\n input: input,\n tld: null,\n sld: null,\n domain: null,\n subdomain: null,\n listed: false\n };\n\n var domainParts = domain.split('.');\n\n // Non-Internet TLD\n if (domainParts[domainParts.length - 1] === 'local') {\n return parsed;\n }\n\n var handlePunycode = function () {\n\n if (!/xn--/.test(domain)) {\n return parsed;\n }\n if (parsed.domain) {\n parsed.domain = Punycode.toASCII(parsed.domain);\n }\n if (parsed.subdomain) {\n parsed.subdomain = Punycode.toASCII(parsed.subdomain);\n }\n return parsed;\n };\n\n var rule = internals.findRule(domain);\n\n // Unlisted tld.\n if (!rule) {\n if (domainParts.length < 2) {\n return parsed;\n }\n parsed.tld = domainParts.pop();\n parsed.sld = domainParts.pop();\n parsed.domain = [parsed.sld, parsed.tld].join('.');\n if (domainParts.length) {\n parsed.subdomain = domainParts.pop();\n }\n return handlePunycode();\n }\n\n // At this point we know the public suffix is listed.\n parsed.listed = true;\n\n var tldParts = rule.suffix.split('.');\n var privateParts = domainParts.slice(0, domainParts.length - tldParts.length);\n\n if (rule.exception) {\n privateParts.push(tldParts.shift());\n }\n\n parsed.tld = tldParts.join('.');\n\n if (!privateParts.length) {\n return handlePunycode();\n }\n\n if (rule.wildcard) {\n tldParts.unshift(privateParts.pop());\n parsed.tld = tldParts.join('.');\n }\n\n if (!privateParts.length) {\n return handlePunycode();\n }\n\n parsed.sld = privateParts.pop();\n parsed.domain = [parsed.sld, parsed.tld].join('.');\n\n if (privateParts.length) {\n parsed.subdomain = privateParts.join('.');\n }\n\n return handlePunycode();\n};\n\n\n//\n// Get domain.\n//\nexports.get = function (domain) {\n\n if (!domain) {\n return null;\n }\n return exports.parse(domain).domain || null;\n};\n\n\n//\n// Check whether domain belongs to a known public suffix.\n//\nexports.isValid = function (domain) {\n\n var parsed = exports.parse(domain);\n return Boolean(parsed.domain && parsed.listed);\n};\n","[\n\"ac\",\n\"com.ac\",\n\"edu.ac\",\n\"gov.ac\",\n\"net.ac\",\n\"mil.ac\",\n\"org.ac\",\n\"ad\",\n\"nom.ad\",\n\"ae\",\n\"co.ae\",\n\"net.ae\",\n\"org.ae\",\n\"sch.ae\",\n\"ac.ae\",\n\"gov.ae\",\n\"mil.ae\",\n\"aero\",\n\"accident-investigation.aero\",\n\"accident-prevention.aero\",\n\"aerobatic.aero\",\n\"aeroclub.aero\",\n\"aerodrome.aero\",\n\"agents.aero\",\n\"aircraft.aero\",\n\"airline.aero\",\n\"airport.aero\",\n\"air-surveillance.aero\",\n\"airtraffic.aero\",\n\"air-traffic-control.aero\",\n\"ambulance.aero\",\n\"amusement.aero\",\n\"association.aero\",\n\"author.aero\",\n\"ballooning.aero\",\n\"broker.aero\",\n\"caa.aero\",\n\"cargo.aero\",\n\"catering.aero\",\n\"certification.aero\",\n\"championship.aero\",\n\"charter.aero\",\n\"civilaviation.aero\",\n\"club.aero\",\n\"conference.aero\",\n\"consultant.aero\",\n\"consulting.aero\",\n\"control.aero\",\n\"council.aero\",\n\"crew.aero\",\n\"design.aero\",\n\"dgca.aero\",\n\"educator.aero\",\n\"emergency.aero\",\n\"engine.aero\",\n\"engineer.aero\",\n\"entertainment.aero\",\n\"equipment.aero\",\n\"exchange.aero\",\n\"express.aero\",\n\"federation.aero\",\n\"flight.aero\",\n\"freight.aero\",\n\"fuel.aero\",\n\"gliding.aero\",\n\"government.aero\",\n\"groundhandling.aero\",\n\"group.aero\",\n\"hanggliding.aero\",\n\"homebuilt.aero\",\n\"insurance.aero\",\n\"journal.aero\",\n\"journalist.aero\",\n\"leasing.aero\",\n\"logistics.aero\",\n\"magazine.aero\",\n\"maintenance.aero\",\n\"media.aero\",\n\"microlight.aero\",\n\"modelling.aero\",\n\"navigation.aero\",\n\"parachuting.aero\",\n\"paragliding.aero\",\n\"passenger-association.aero\",\n\"pilot.aero\",\n\"press.aero\",\n\"production.aero\",\n\"recreation.aero\",\n\"repbody.aero\",\n\"res.aero\",\n\"research.aero\",\n\"rotorcraft.aero\",\n\"safety.aero\",\n\"scientist.aero\",\n\"services.aero\",\n\"show.aero\",\n\"skydiving.aero\",\n\"software.aero\",\n\"student.aero\",\n\"trader.aero\",\n\"trading.aero\",\n\"trainer.aero\",\n\"union.aero\",\n\"workinggroup.aero\",\n\"works.aero\",\n\"af\",\n\"gov.af\",\n\"com.af\",\n\"org.af\",\n\"net.af\",\n\"edu.af\",\n\"ag\",\n\"com.ag\",\n\"org.ag\",\n\"net.ag\",\n\"co.ag\",\n\"nom.ag\",\n\"ai\",\n\"off.ai\",\n\"com.ai\",\n\"net.ai\",\n\"org.ai\",\n\"al\",\n\"com.al\",\n\"edu.al\",\n\"gov.al\",\n\"mil.al\",\n\"net.al\",\n\"org.al\",\n\"am\",\n\"co.am\",\n\"com.am\",\n\"commune.am\",\n\"net.am\",\n\"org.am\",\n\"ao\",\n\"ed.ao\",\n\"gv.ao\",\n\"og.ao\",\n\"co.ao\",\n\"pb.ao\",\n\"it.ao\",\n\"aq\",\n\"ar\",\n\"com.ar\",\n\"edu.ar\",\n\"gob.ar\",\n\"gov.ar\",\n\"int.ar\",\n\"mil.ar\",\n\"musica.ar\",\n\"net.ar\",\n\"org.ar\",\n\"tur.ar\",\n\"arpa\",\n\"e164.arpa\",\n\"in-addr.arpa\",\n\"ip6.arpa\",\n\"iris.arpa\",\n\"uri.arpa\",\n\"urn.arpa\",\n\"as\",\n\"gov.as\",\n\"asia\",\n\"at\",\n\"ac.at\",\n\"co.at\",\n\"gv.at\",\n\"or.at\",\n\"au\",\n\"com.au\",\n\"net.au\",\n\"org.au\",\n\"edu.au\",\n\"gov.au\",\n\"asn.au\",\n\"id.au\",\n\"info.au\",\n\"conf.au\",\n\"oz.au\",\n\"act.au\",\n\"nsw.au\",\n\"nt.au\",\n\"qld.au\",\n\"sa.au\",\n\"tas.au\",\n\"vic.au\",\n\"wa.au\",\n\"act.edu.au\",\n\"catholic.edu.au\",\n\"nsw.edu.au\",\n\"nt.edu.au\",\n\"qld.edu.au\",\n\"sa.edu.au\",\n\"tas.edu.au\",\n\"vic.edu.au\",\n\"wa.edu.au\",\n\"qld.gov.au\",\n\"sa.gov.au\",\n\"tas.gov.au\",\n\"vic.gov.au\",\n\"wa.gov.au\",\n\"education.tas.edu.au\",\n\"schools.nsw.edu.au\",\n\"aw\",\n\"com.aw\",\n\"ax\",\n\"az\",\n\"com.az\",\n\"net.az\",\n\"int.az\",\n\"gov.az\",\n\"org.az\",\n\"edu.az\",\n\"info.az\",\n\"pp.az\",\n\"mil.az\",\n\"name.az\",\n\"pro.az\",\n\"biz.az\",\n\"ba\",\n\"com.ba\",\n\"edu.ba\",\n\"gov.ba\",\n\"mil.ba\",\n\"net.ba\",\n\"org.ba\",\n\"bb\",\n\"biz.bb\",\n\"co.bb\",\n\"com.bb\",\n\"edu.bb\",\n\"gov.bb\",\n\"info.bb\",\n\"net.bb\",\n\"org.bb\",\n\"store.bb\",\n\"tv.bb\",\n\"*.bd\",\n\"be\",\n\"ac.be\",\n\"bf\",\n\"gov.bf\",\n\"bg\",\n\"a.bg\",\n\"b.bg\",\n\"c.bg\",\n\"d.bg\",\n\"e.bg\",\n\"f.bg\",\n\"g.bg\",\n\"h.bg\",\n\"i.bg\",\n\"j.bg\",\n\"k.bg\",\n\"l.bg\",\n\"m.bg\",\n\"n.bg\",\n\"o.bg\",\n\"p.bg\",\n\"q.bg\",\n\"r.bg\",\n\"s.bg\",\n\"t.bg\",\n\"u.bg\",\n\"v.bg\",\n\"w.bg\",\n\"x.bg\",\n\"y.bg\",\n\"z.bg\",\n\"0.bg\",\n\"1.bg\",\n\"2.bg\",\n\"3.bg\",\n\"4.bg\",\n\"5.bg\",\n\"6.bg\",\n\"7.bg\",\n\"8.bg\",\n\"9.bg\",\n\"bh\",\n\"com.bh\",\n\"edu.bh\",\n\"net.bh\",\n\"org.bh\",\n\"gov.bh\",\n\"bi\",\n\"co.bi\",\n\"com.bi\",\n\"edu.bi\",\n\"or.bi\",\n\"org.bi\",\n\"biz\",\n\"bj\",\n\"asso.bj\",\n\"barreau.bj\",\n\"gouv.bj\",\n\"bm\",\n\"com.bm\",\n\"edu.bm\",\n\"gov.bm\",\n\"net.bm\",\n\"org.bm\",\n\"bn\",\n\"com.bn\",\n\"edu.bn\",\n\"gov.bn\",\n\"net.bn\",\n\"org.bn\",\n\"bo\",\n\"com.bo\",\n\"edu.bo\",\n\"gob.bo\",\n\"int.bo\",\n\"org.bo\",\n\"net.bo\",\n\"mil.bo\",\n\"tv.bo\",\n\"web.bo\",\n\"academia.bo\",\n\"agro.bo\",\n\"arte.bo\",\n\"blog.bo\",\n\"bolivia.bo\",\n\"ciencia.bo\",\n\"cooperativa.bo\",\n\"democracia.bo\",\n\"deporte.bo\",\n\"ecologia.bo\",\n\"economia.bo\",\n\"empresa.bo\",\n\"indigena.bo\",\n\"industria.bo\",\n\"info.bo\",\n\"medicina.bo\",\n\"movimiento.bo\",\n\"musica.bo\",\n\"natural.bo\",\n\"nombre.bo\",\n\"noticias.bo\",\n\"patria.bo\",\n\"politica.bo\",\n\"profesional.bo\",\n\"plurinacional.bo\",\n\"pueblo.bo\",\n\"revista.bo\",\n\"salud.bo\",\n\"tecnologia.bo\",\n\"tksat.bo\",\n\"transporte.bo\",\n\"wiki.bo\",\n\"br\",\n\"9guacu.br\",\n\"abc.br\",\n\"adm.br\",\n\"adv.br\",\n\"agr.br\",\n\"aju.br\",\n\"am.br\",\n\"anani.br\",\n\"aparecida.br\",\n\"arq.br\",\n\"art.br\",\n\"ato.br\",\n\"b.br\",\n\"barueri.br\",\n\"belem.br\",\n\"bhz.br\",\n\"bio.br\",\n\"blog.br\",\n\"bmd.br\",\n\"boavista.br\",\n\"bsb.br\",\n\"campinagrande.br\",\n\"campinas.br\",\n\"caxias.br\",\n\"cim.br\",\n\"cng.br\",\n\"cnt.br\",\n\"com.br\",\n\"contagem.br\",\n\"coop.br\",\n\"cri.br\",\n\"cuiaba.br\",\n\"curitiba.br\",\n\"def.br\",\n\"ecn.br\",\n\"eco.br\",\n\"edu.br\",\n\"emp.br\",\n\"eng.br\",\n\"esp.br\",\n\"etc.br\",\n\"eti.br\",\n\"far.br\",\n\"feira.br\",\n\"flog.br\",\n\"floripa.br\",\n\"fm.br\",\n\"fnd.br\",\n\"fortal.br\",\n\"fot.br\",\n\"foz.br\",\n\"fst.br\",\n\"g12.br\",\n\"ggf.br\",\n\"goiania.br\",\n\"gov.br\",\n\"ac.gov.br\",\n\"al.gov.br\",\n\"am.gov.br\",\n\"ap.gov.br\",\n\"ba.gov.br\",\n\"ce.gov.br\",\n\"df.gov.br\",\n\"es.gov.br\",\n\"go.gov.br\",\n\"ma.gov.br\",\n\"mg.gov.br\",\n\"ms.gov.br\",\n\"mt.gov.br\",\n\"pa.gov.br\",\n\"pb.gov.br\",\n\"pe.gov.br\",\n\"pi.gov.br\",\n\"pr.gov.br\",\n\"rj.gov.br\",\n\"rn.gov.br\",\n\"ro.gov.br\",\n\"rr.gov.br\",\n\"rs.gov.br\",\n\"sc.gov.br\",\n\"se.gov.br\",\n\"sp.gov.br\",\n\"to.gov.br\",\n\"gru.br\",\n\"imb.br\",\n\"ind.br\",\n\"inf.br\",\n\"jab.br\",\n\"jampa.br\",\n\"jdf.br\",\n\"joinville.br\",\n\"jor.br\",\n\"jus.br\",\n\"leg.br\",\n\"lel.br\",\n\"londrina.br\",\n\"macapa.br\",\n\"maceio.br\",\n\"manaus.br\",\n\"maringa.br\",\n\"mat.br\",\n\"med.br\",\n\"mil.br\",\n\"morena.br\",\n\"mp.br\",\n\"mus.br\",\n\"natal.br\",\n\"net.br\",\n\"niteroi.br\",\n\"*.nom.br\",\n\"not.br\",\n\"ntr.br\",\n\"odo.br\",\n\"ong.br\",\n\"org.br\",\n\"osasco.br\",\n\"palmas.br\",\n\"poa.br\",\n\"ppg.br\",\n\"pro.br\",\n\"psc.br\",\n\"psi.br\",\n\"pvh.br\",\n\"qsl.br\",\n\"radio.br\",\n\"rec.br\",\n\"recife.br\",\n\"ribeirao.br\",\n\"rio.br\",\n\"riobranco.br\",\n\"riopreto.br\",\n\"salvador.br\",\n\"sampa.br\",\n\"santamaria.br\",\n\"santoandre.br\",\n\"saobernardo.br\",\n\"saogonca.br\",\n\"sjc.br\",\n\"slg.br\",\n\"slz.br\",\n\"sorocaba.br\",\n\"srv.br\",\n\"taxi.br\",\n\"tc.br\",\n\"teo.br\",\n\"the.br\",\n\"tmp.br\",\n\"trd.br\",\n\"tur.br\",\n\"tv.br\",\n\"udi.br\",\n\"vet.br\",\n\"vix.br\",\n\"vlog.br\",\n\"wiki.br\",\n\"zlg.br\",\n\"bs\",\n\"com.bs\",\n\"net.bs\",\n\"org.bs\",\n\"edu.bs\",\n\"gov.bs\",\n\"bt\",\n\"com.bt\",\n\"edu.bt\",\n\"gov.bt\",\n\"net.bt\",\n\"org.bt\",\n\"bv\",\n\"bw\",\n\"co.bw\",\n\"org.bw\",\n\"by\",\n\"gov.by\",\n\"mil.by\",\n\"com.by\",\n\"of.by\",\n\"bz\",\n\"com.bz\",\n\"net.bz\",\n\"org.bz\",\n\"edu.bz\",\n\"gov.bz\",\n\"ca\",\n\"ab.ca\",\n\"bc.ca\",\n\"mb.ca\",\n\"nb.ca\",\n\"nf.ca\",\n\"nl.ca\",\n\"ns.ca\",\n\"nt.ca\",\n\"nu.ca\",\n\"on.ca\",\n\"pe.ca\",\n\"qc.ca\",\n\"sk.ca\",\n\"yk.ca\",\n\"gc.ca\",\n\"cat\",\n\"cc\",\n\"cd\",\n\"gov.cd\",\n\"cf\",\n\"cg\",\n\"ch\",\n\"ci\",\n\"org.ci\",\n\"or.ci\",\n\"com.ci\",\n\"co.ci\",\n\"edu.ci\",\n\"ed.ci\",\n\"ac.ci\",\n\"net.ci\",\n\"go.ci\",\n\"asso.ci\",\n\"aéroport.ci\",\n\"int.ci\",\n\"presse.ci\",\n\"md.ci\",\n\"gouv.ci\",\n\"*.ck\",\n\"!www.ck\",\n\"cl\",\n\"aprendemas.cl\",\n\"co.cl\",\n\"gob.cl\",\n\"gov.cl\",\n\"mil.cl\",\n\"cm\",\n\"co.cm\",\n\"com.cm\",\n\"gov.cm\",\n\"net.cm\",\n\"cn\",\n\"ac.cn\",\n\"com.cn\",\n\"edu.cn\",\n\"gov.cn\",\n\"net.cn\",\n\"org.cn\",\n\"mil.cn\",\n\"公司.cn\",\n\"网络.cn\",\n\"網絡.cn\",\n\"ah.cn\",\n\"bj.cn\",\n\"cq.cn\",\n\"fj.cn\",\n\"gd.cn\",\n\"gs.cn\",\n\"gz.cn\",\n\"gx.cn\",\n\"ha.cn\",\n\"hb.cn\",\n\"he.cn\",\n\"hi.cn\",\n\"hl.cn\",\n\"hn.cn\",\n\"jl.cn\",\n\"js.cn\",\n\"jx.cn\",\n\"ln.cn\",\n\"nm.cn\",\n\"nx.cn\",\n\"qh.cn\",\n\"sc.cn\",\n\"sd.cn\",\n\"sh.cn\",\n\"sn.cn\",\n\"sx.cn\",\n\"tj.cn\",\n\"xj.cn\",\n\"xz.cn\",\n\"yn.cn\",\n\"zj.cn\",\n\"hk.cn\",\n\"mo.cn\",\n\"tw.cn\",\n\"co\",\n\"arts.co\",\n\"com.co\",\n\"edu.co\",\n\"firm.co\",\n\"gov.co\",\n\"info.co\",\n\"int.co\",\n\"mil.co\",\n\"net.co\",\n\"nom.co\",\n\"org.co\",\n\"rec.co\",\n\"web.co\",\n\"com\",\n\"coop\",\n\"cr\",\n\"ac.cr\",\n\"co.cr\",\n\"ed.cr\",\n\"fi.cr\",\n\"go.cr\",\n\"or.cr\",\n\"sa.cr\",\n\"cu\",\n\"com.cu\",\n\"edu.cu\",\n\"org.cu\",\n\"net.cu\",\n\"gov.cu\",\n\"inf.cu\",\n\"cv\",\n\"cw\",\n\"com.cw\",\n\"edu.cw\",\n\"net.cw\",\n\"org.cw\",\n\"cx\",\n\"gov.cx\",\n\"cy\",\n\"ac.cy\",\n\"biz.cy\",\n\"com.cy\",\n\"ekloges.cy\",\n\"gov.cy\",\n\"ltd.cy\",\n\"name.cy\",\n\"net.cy\",\n\"org.cy\",\n\"parliament.cy\",\n\"press.cy\",\n\"pro.cy\",\n\"tm.cy\",\n\"cz\",\n\"de\",\n\"dj\",\n\"dk\",\n\"dm\",\n\"com.dm\",\n\"net.dm\",\n\"org.dm\",\n\"edu.dm\",\n\"gov.dm\",\n\"do\",\n\"art.do\",\n\"com.do\",\n\"edu.do\",\n\"gob.do\",\n\"gov.do\",\n\"mil.do\",\n\"net.do\",\n\"org.do\",\n\"sld.do\",\n\"web.do\",\n\"dz\",\n\"com.dz\",\n\"org.dz\",\n\"net.dz\",\n\"gov.dz\",\n\"edu.dz\",\n\"asso.dz\",\n\"pol.dz\",\n\"art.dz\",\n\"ec\",\n\"com.ec\",\n\"info.ec\",\n\"net.ec\",\n\"fin.ec\",\n\"k12.ec\",\n\"med.ec\",\n\"pro.ec\",\n\"org.ec\",\n\"edu.ec\",\n\"gov.ec\",\n\"gob.ec\",\n\"mil.ec\",\n\"edu\",\n\"ee\",\n\"edu.ee\",\n\"gov.ee\",\n\"riik.ee\",\n\"lib.ee\",\n\"med.ee\",\n\"com.ee\",\n\"pri.ee\",\n\"aip.ee\",\n\"org.ee\",\n\"fie.ee\",\n\"eg\",\n\"com.eg\",\n\"edu.eg\",\n\"eun.eg\",\n\"gov.eg\",\n\"mil.eg\",\n\"name.eg\",\n\"net.eg\",\n\"org.eg\",\n\"sci.eg\",\n\"*.er\",\n\"es\",\n\"com.es\",\n\"nom.es\",\n\"org.es\",\n\"gob.es\",\n\"edu.es\",\n\"et\",\n\"com.et\",\n\"gov.et\",\n\"org.et\",\n\"edu.et\",\n\"biz.et\",\n\"name.et\",\n\"info.et\",\n\"net.et\",\n\"eu\",\n\"fi\",\n\"aland.fi\",\n\"fj\",\n\"ac.fj\",\n\"biz.fj\",\n\"com.fj\",\n\"gov.fj\",\n\"info.fj\",\n\"mil.fj\",\n\"name.fj\",\n\"net.fj\",\n\"org.fj\",\n\"pro.fj\",\n\"*.fk\",\n\"fm\",\n\"fo\",\n\"fr\",\n\"asso.fr\",\n\"com.fr\",\n\"gouv.fr\",\n\"nom.fr\",\n\"prd.fr\",\n\"tm.fr\",\n\"aeroport.fr\",\n\"avocat.fr\",\n\"avoues.fr\",\n\"cci.fr\",\n\"chambagri.fr\",\n\"chirurgiens-dentistes.fr\",\n\"experts-comptables.fr\",\n\"geometre-expert.fr\",\n\"greta.fr\",\n\"huissier-justice.fr\",\n\"medecin.fr\",\n\"notaires.fr\",\n\"pharmacien.fr\",\n\"port.fr\",\n\"veterinaire.fr\",\n\"ga\",\n\"gb\",\n\"gd\",\n\"ge\",\n\"com.ge\",\n\"edu.ge\",\n\"gov.ge\",\n\"org.ge\",\n\"mil.ge\",\n\"net.ge\",\n\"pvt.ge\",\n\"gf\",\n\"gg\",\n\"co.gg\",\n\"net.gg\",\n\"org.gg\",\n\"gh\",\n\"com.gh\",\n\"edu.gh\",\n\"gov.gh\",\n\"org.gh\",\n\"mil.gh\",\n\"gi\",\n\"com.gi\",\n\"ltd.gi\",\n\"gov.gi\",\n\"mod.gi\",\n\"edu.gi\",\n\"org.gi\",\n\"gl\",\n\"co.gl\",\n\"com.gl\",\n\"edu.gl\",\n\"net.gl\",\n\"org.gl\",\n\"gm\",\n\"gn\",\n\"ac.gn\",\n\"com.gn\",\n\"edu.gn\",\n\"gov.gn\",\n\"org.gn\",\n\"net.gn\",\n\"gov\",\n\"gp\",\n\"com.gp\",\n\"net.gp\",\n\"mobi.gp\",\n\"edu.gp\",\n\"org.gp\",\n\"asso.gp\",\n\"gq\",\n\"gr\",\n\"com.gr\",\n\"edu.gr\",\n\"net.gr\",\n\"org.gr\",\n\"gov.gr\",\n\"gs\",\n\"gt\",\n\"com.gt\",\n\"edu.gt\",\n\"gob.gt\",\n\"ind.gt\",\n\"mil.gt\",\n\"net.gt\",\n\"org.gt\",\n\"gu\",\n\"com.gu\",\n\"edu.gu\",\n\"gov.gu\",\n\"guam.gu\",\n\"info.gu\",\n\"net.gu\",\n\"org.gu\",\n\"web.gu\",\n\"gw\",\n\"gy\",\n\"co.gy\",\n\"com.gy\",\n\"edu.gy\",\n\"gov.gy\",\n\"net.gy\",\n\"org.gy\",\n\"hk\",\n\"com.hk\",\n\"edu.hk\",\n\"gov.hk\",\n\"idv.hk\",\n\"net.hk\",\n\"org.hk\",\n\"公司.hk\",\n\"教育.hk\",\n\"敎育.hk\",\n\"政府.hk\",\n\"個人.hk\",\n\"个人.hk\",\n\"箇人.hk\",\n\"網络.hk\",\n\"网络.hk\",\n\"组織.hk\",\n\"網絡.hk\",\n\"网絡.hk\",\n\"组织.hk\",\n\"組織.hk\",\n\"組织.hk\",\n\"hm\",\n\"hn\",\n\"com.hn\",\n\"edu.hn\",\n\"org.hn\",\n\"net.hn\",\n\"mil.hn\",\n\"gob.hn\",\n\"hr\",\n\"iz.hr\",\n\"from.hr\",\n\"name.hr\",\n\"com.hr\",\n\"ht\",\n\"com.ht\",\n\"shop.ht\",\n\"firm.ht\",\n\"info.ht\",\n\"adult.ht\",\n\"net.ht\",\n\"pro.ht\",\n\"org.ht\",\n\"med.ht\",\n\"art.ht\",\n\"coop.ht\",\n\"pol.ht\",\n\"asso.ht\",\n\"edu.ht\",\n\"rel.ht\",\n\"gouv.ht\",\n\"perso.ht\",\n\"hu\",\n\"co.hu\",\n\"info.hu\",\n\"org.hu\",\n\"priv.hu\",\n\"sport.hu\",\n\"tm.hu\",\n\"2000.hu\",\n\"agrar.hu\",\n\"bolt.hu\",\n\"casino.hu\",\n\"city.hu\",\n\"erotica.hu\",\n\"erotika.hu\",\n\"film.hu\",\n\"forum.hu\",\n\"games.hu\",\n\"hotel.hu\",\n\"ingatlan.hu\",\n\"jogasz.hu\",\n\"konyvelo.hu\",\n\"lakas.hu\",\n\"media.hu\",\n\"news.hu\",\n\"reklam.hu\",\n\"sex.hu\",\n\"shop.hu\",\n\"suli.hu\",\n\"szex.hu\",\n\"tozsde.hu\",\n\"utazas.hu\",\n\"video.hu\",\n\"id\",\n\"ac.id\",\n\"biz.id\",\n\"co.id\",\n\"desa.id\",\n\"go.id\",\n\"mil.id\",\n\"my.id\",\n\"net.id\",\n\"or.id\",\n\"ponpes.id\",\n\"sch.id\",\n\"web.id\",\n\"ie\",\n\"gov.ie\",\n\"il\",\n\"ac.il\",\n\"co.il\",\n\"gov.il\",\n\"idf.il\",\n\"k12.il\",\n\"muni.il\",\n\"net.il\",\n\"org.il\",\n\"im\",\n\"ac.im\",\n\"co.im\",\n\"com.im\",\n\"ltd.co.im\",\n\"net.im\",\n\"org.im\",\n\"plc.co.im\",\n\"tt.im\",\n\"tv.im\",\n\"in\",\n\"co.in\",\n\"firm.in\",\n\"net.in\",\n\"org.in\",\n\"gen.in\",\n\"ind.in\",\n\"nic.in\",\n\"ac.in\",\n\"edu.in\",\n\"res.in\",\n\"gov.in\",\n\"mil.in\",\n\"info\",\n\"int\",\n\"eu.int\",\n\"io\",\n\"com.io\",\n\"iq\",\n\"gov.iq\",\n\"edu.iq\",\n\"mil.iq\",\n\"com.iq\",\n\"org.iq\",\n\"net.iq\",\n\"ir\",\n\"ac.ir\",\n\"co.ir\",\n\"gov.ir\",\n\"id.ir\",\n\"net.ir\",\n\"org.ir\",\n\"sch.ir\",\n\"ایران.ir\",\n\"ايران.ir\",\n\"is\",\n\"net.is\",\n\"com.is\",\n\"edu.is\",\n\"gov.is\",\n\"org.is\",\n\"int.is\",\n\"it\",\n\"gov.it\",\n\"edu.it\",\n\"abr.it\",\n\"abruzzo.it\",\n\"aosta-valley.it\",\n\"aostavalley.it\",\n\"bas.it\",\n\"basilicata.it\",\n\"cal.it\",\n\"calabria.it\",\n\"cam.it\",\n\"campania.it\",\n\"emilia-romagna.it\",\n\"emiliaromagna.it\",\n\"emr.it\",\n\"friuli-v-giulia.it\",\n\"friuli-ve-giulia.it\",\n\"friuli-vegiulia.it\",\n\"friuli-venezia-giulia.it\",\n\"friuli-veneziagiulia.it\",\n\"friuli-vgiulia.it\",\n\"friuliv-giulia.it\",\n\"friulive-giulia.it\",\n\"friulivegiulia.it\",\n\"friulivenezia-giulia.it\",\n\"friuliveneziagiulia.it\",\n\"friulivgiulia.it\",\n\"fvg.it\",\n\"laz.it\",\n\"lazio.it\",\n\"lig.it\",\n\"liguria.it\",\n\"lom.it\",\n\"lombardia.it\",\n\"lombardy.it\",\n\"lucania.it\",\n\"mar.it\",\n\"marche.it\",\n\"mol.it\",\n\"molise.it\",\n\"piedmont.it\",\n\"piemonte.it\",\n\"pmn.it\",\n\"pug.it\",\n\"puglia.it\",\n\"sar.it\",\n\"sardegna.it\",\n\"sardinia.it\",\n\"sic.it\",\n\"sicilia.it\",\n\"sicily.it\",\n\"taa.it\",\n\"tos.it\",\n\"toscana.it\",\n\"trentin-sud-tirol.it\",\n\"trentin-süd-tirol.it\",\n\"trentin-sudtirol.it\",\n\"trentin-südtirol.it\",\n\"trentin-sued-tirol.it\",\n\"trentin-suedtirol.it\",\n\"trentino-a-adige.it\",\n\"trentino-aadige.it\",\n\"trentino-alto-adige.it\",\n\"trentino-altoadige.it\",\n\"trentino-s-tirol.it\",\n\"trentino-stirol.it\",\n\"trentino-sud-tirol.it\",\n\"trentino-süd-tirol.it\",\n\"trentino-sudtirol.it\",\n\"trentino-südtirol.it\",\n\"trentino-sued-tirol.it\",\n\"trentino-suedtirol.it\",\n\"trentino.it\",\n\"trentinoa-adige.it\",\n\"trentinoaadige.it\",\n\"trentinoalto-adige.it\",\n\"trentinoaltoadige.it\",\n\"trentinos-tirol.it\",\n\"trentinostirol.it\",\n\"trentinosud-tirol.it\",\n\"trentinosüd-tirol.it\",\n\"trentinosudtirol.it\",\n\"trentinosüdtirol.it\",\n\"trentinosued-tirol.it\",\n\"trentinosuedtirol.it\",\n\"trentinsud-tirol.it\",\n\"trentinsüd-tirol.it\",\n\"trentinsudtirol.it\",\n\"trentinsüdtirol.it\",\n\"trentinsued-tirol.it\",\n\"trentinsuedtirol.it\",\n\"tuscany.it\",\n\"umb.it\",\n\"umbria.it\",\n\"val-d-aosta.it\",\n\"val-daosta.it\",\n\"vald-aosta.it\",\n\"valdaosta.it\",\n\"valle-aosta.it\",\n\"valle-d-aosta.it\",\n\"valle-daosta.it\",\n\"valleaosta.it\",\n\"valled-aosta.it\",\n\"valledaosta.it\",\n\"vallee-aoste.it\",\n\"vallée-aoste.it\",\n\"vallee-d-aoste.it\",\n\"vallée-d-aoste.it\",\n\"valleeaoste.it\",\n\"valléeaoste.it\",\n\"valleedaoste.it\",\n\"valléedaoste.it\",\n\"vao.it\",\n\"vda.it\",\n\"ven.it\",\n\"veneto.it\",\n\"ag.it\",\n\"agrigento.it\",\n\"al.it\",\n\"alessandria.it\",\n\"alto-adige.it\",\n\"altoadige.it\",\n\"an.it\",\n\"ancona.it\",\n\"andria-barletta-trani.it\",\n\"andria-trani-barletta.it\",\n\"andriabarlettatrani.it\",\n\"andriatranibarletta.it\",\n\"ao.it\",\n\"aosta.it\",\n\"aoste.it\",\n\"ap.it\",\n\"aq.it\",\n\"aquila.it\",\n\"ar.it\",\n\"arezzo.it\",\n\"ascoli-piceno.it\",\n\"ascolipiceno.it\",\n\"asti.it\",\n\"at.it\",\n\"av.it\",\n\"avellino.it\",\n\"ba.it\",\n\"balsan-sudtirol.it\",\n\"balsan-südtirol.it\",\n\"balsan-suedtirol.it\",\n\"balsan.it\",\n\"bari.it\",\n\"barletta-trani-andria.it\",\n\"barlettatraniandria.it\",\n\"belluno.it\",\n\"benevento.it\",\n\"bergamo.it\",\n\"bg.it\",\n\"bi.it\",\n\"biella.it\",\n\"bl.it\",\n\"bn.it\",\n\"bo.it\",\n\"bologna.it\",\n\"bolzano-altoadige.it\",\n\"bolzano.it\",\n\"bozen-sudtirol.it\",\n\"bozen-südtirol.it\",\n\"bozen-suedtirol.it\",\n\"bozen.it\",\n\"br.it\",\n\"brescia.it\",\n\"brindisi.it\",\n\"bs.it\",\n\"bt.it\",\n\"bulsan-sudtirol.it\",\n\"bulsan-südtirol.it\",\n\"bulsan-suedtirol.it\",\n\"bulsan.it\",\n\"bz.it\",\n\"ca.it\",\n\"cagliari.it\",\n\"caltanissetta.it\",\n\"campidano-medio.it\",\n\"campidanomedio.it\",\n\"campobasso.it\",\n\"carbonia-iglesias.it\",\n\"carboniaiglesias.it\",\n\"carrara-massa.it\",\n\"carraramassa.it\",\n\"caserta.it\",\n\"catania.it\",\n\"catanzaro.it\",\n\"cb.it\",\n\"ce.it\",\n\"cesena-forli.it\",\n\"cesena-forlì.it\",\n\"cesenaforli.it\",\n\"cesenaforlì.it\",\n\"ch.it\",\n\"chieti.it\",\n\"ci.it\",\n\"cl.it\",\n\"cn.it\",\n\"co.it\",\n\"como.it\",\n\"cosenza.it\",\n\"cr.it\",\n\"cremona.it\",\n\"crotone.it\",\n\"cs.it\",\n\"ct.it\",\n\"cuneo.it\",\n\"cz.it\",\n\"dell-ogliastra.it\",\n\"dellogliastra.it\",\n\"en.it\",\n\"enna.it\",\n\"fc.it\",\n\"fe.it\",\n\"fermo.it\",\n\"ferrara.it\",\n\"fg.it\",\n\"fi.it\",\n\"firenze.it\",\n\"florence.it\",\n\"fm.it\",\n\"foggia.it\",\n\"forli-cesena.it\",\n\"forlì-cesena.it\",\n\"forlicesena.it\",\n\"forlìcesena.it\",\n\"fr.it\",\n\"frosinone.it\",\n\"ge.it\",\n\"genoa.it\",\n\"genova.it\",\n\"go.it\",\n\"gorizia.it\",\n\"gr.it\",\n\"grosseto.it\",\n\"iglesias-carbonia.it\",\n\"iglesiascarbonia.it\",\n\"im.it\",\n\"imperia.it\",\n\"is.it\",\n\"isernia.it\",\n\"kr.it\",\n\"la-spezia.it\",\n\"laquila.it\",\n\"laspezia.it\",\n\"latina.it\",\n\"lc.it\",\n\"le.it\",\n\"lecce.it\",\n\"lecco.it\",\n\"li.it\",\n\"livorno.it\",\n\"lo.it\",\n\"lodi.it\",\n\"lt.it\",\n\"lu.it\",\n\"lucca.it\",\n\"macerata.it\",\n\"mantova.it\",\n\"massa-carrara.it\",\n\"massacarrara.it\",\n\"matera.it\",\n\"mb.it\",\n\"mc.it\",\n\"me.it\",\n\"medio-campidano.it\",\n\"mediocampidano.it\",\n\"messina.it\",\n\"mi.it\",\n\"milan.it\",\n\"milano.it\",\n\"mn.it\",\n\"mo.it\",\n\"modena.it\",\n\"monza-brianza.it\",\n\"monza-e-della-brianza.it\",\n\"monza.it\",\n\"monzabrianza.it\",\n\"monzaebrianza.it\",\n\"monzaedellabrianza.it\",\n\"ms.it\",\n\"mt.it\",\n\"na.it\",\n\"naples.it\",\n\"napoli.it\",\n\"no.it\",\n\"novara.it\",\n\"nu.it\",\n\"nuoro.it\",\n\"og.it\",\n\"ogliastra.it\",\n\"olbia-tempio.it\",\n\"olbiatempio.it\",\n\"or.it\",\n\"oristano.it\",\n\"ot.it\",\n\"pa.it\",\n\"padova.it\",\n\"padua.it\",\n\"palermo.it\",\n\"parma.it\",\n\"pavia.it\",\n\"pc.it\",\n\"pd.it\",\n\"pe.it\",\n\"perugia.it\",\n\"pesaro-urbino.it\",\n\"pesarourbino.it\",\n\"pescara.it\",\n\"pg.it\",\n\"pi.it\",\n\"piacenza.it\",\n\"pisa.it\",\n\"pistoia.it\",\n\"pn.it\",\n\"po.it\",\n\"pordenone.it\",\n\"potenza.it\",\n\"pr.it\",\n\"prato.it\",\n\"pt.it\",\n\"pu.it\",\n\"pv.it\",\n\"pz.it\",\n\"ra.it\",\n\"ragusa.it\",\n\"ravenna.it\",\n\"rc.it\",\n\"re.it\",\n\"reggio-calabria.it\",\n\"reggio-emilia.it\",\n\"reggiocalabria.it\",\n\"reggioemilia.it\",\n\"rg.it\",\n\"ri.it\",\n\"rieti.it\",\n\"rimini.it\",\n\"rm.it\",\n\"rn.it\",\n\"ro.it\",\n\"roma.it\",\n\"rome.it\",\n\"rovigo.it\",\n\"sa.it\",\n\"salerno.it\",\n\"sassari.it\",\n\"savona.it\",\n\"si.it\",\n\"siena.it\",\n\"siracusa.it\",\n\"so.it\",\n\"sondrio.it\",\n\"sp.it\",\n\"sr.it\",\n\"ss.it\",\n\"suedtirol.it\",\n\"südtirol.it\",\n\"sv.it\",\n\"ta.it\",\n\"taranto.it\",\n\"te.it\",\n\"tempio-olbia.it\",\n\"tempioolbia.it\",\n\"teramo.it\",\n\"terni.it\",\n\"tn.it\",\n\"to.it\",\n\"torino.it\",\n\"tp.it\",\n\"tr.it\",\n\"trani-andria-barletta.it\",\n\"trani-barletta-andria.it\",\n\"traniandriabarletta.it\",\n\"tranibarlettaandria.it\",\n\"trapani.it\",\n\"trento.it\",\n\"treviso.it\",\n\"trieste.it\",\n\"ts.it\",\n\"turin.it\",\n\"tv.it\",\n\"ud.it\",\n\"udine.it\",\n\"urbino-pesaro.it\",\n\"urbinopesaro.it\",\n\"va.it\",\n\"varese.it\",\n\"vb.it\",\n\"vc.it\",\n\"ve.it\",\n\"venezia.it\",\n\"venice.it\",\n\"verbania.it\",\n\"vercelli.it\",\n\"verona.it\",\n\"vi.it\",\n\"vibo-valentia.it\",\n\"vibovalentia.it\",\n\"vicenza.it\",\n\"viterbo.it\",\n\"vr.it\",\n\"vs.it\",\n\"vt.it\",\n\"vv.it\",\n\"je\",\n\"co.je\",\n\"net.je\",\n\"org.je\",\n\"*.jm\",\n\"jo\",\n\"com.jo\",\n\"org.jo\",\n\"net.jo\",\n\"edu.jo\",\n\"sch.jo\",\n\"gov.jo\",\n\"mil.jo\",\n\"name.jo\",\n\"jobs\",\n\"jp\",\n\"ac.jp\",\n\"ad.jp\",\n\"co.jp\",\n\"ed.jp\",\n\"go.jp\",\n\"gr.jp\",\n\"lg.jp\",\n\"ne.jp\",\n\"or.jp\",\n\"aichi.jp\",\n\"akita.jp\",\n\"aomori.jp\",\n\"chiba.jp\",\n\"ehime.jp\",\n\"fukui.jp\",\n\"fukuoka.jp\",\n\"fukushima.jp\",\n\"gifu.jp\",\n\"gunma.jp\",\n\"hiroshima.jp\",\n\"hokkaido.jp\",\n\"hyogo.jp\",\n\"ibaraki.jp\",\n\"ishikawa.jp\",\n\"iwate.jp\",\n\"kagawa.jp\",\n\"kagoshima.jp\",\n\"kanagawa.jp\",\n\"kochi.jp\",\n\"kumamoto.jp\",\n\"kyoto.jp\",\n\"mie.jp\",\n\"miyagi.jp\",\n\"miyazaki.jp\",\n\"nagano.jp\",\n\"nagasaki.jp\",\n\"nara.jp\",\n\"niigata.jp\",\n\"oita.jp\",\n\"okayama.jp\",\n\"okinawa.jp\",\n\"osaka.jp\",\n\"saga.jp\",\n\"saitama.jp\",\n\"shiga.jp\",\n\"shimane.jp\",\n\"shizuoka.jp\",\n\"tochigi.jp\",\n\"tokushima.jp\",\n\"tokyo.jp\",\n\"tottori.jp\",\n\"toyama.jp\",\n\"wakayama.jp\",\n\"yamagata.jp\",\n\"yamaguchi.jp\",\n\"yamanashi.jp\",\n\"栃木.jp\",\n\"愛知.jp\",\n\"愛媛.jp\",\n\"兵庫.jp\",\n\"熊本.jp\",\n\"茨城.jp\",\n\"北海道.jp\",\n\"千葉.jp\",\n\"和歌山.jp\",\n\"長崎.jp\",\n\"長野.jp\",\n\"新潟.jp\",\n\"青森.jp\",\n\"静岡.jp\",\n\"東京.jp\",\n\"石川.jp\",\n\"埼玉.jp\",\n\"三重.jp\",\n\"京都.jp\",\n\"佐賀.jp\",\n\"大分.jp\",\n\"大阪.jp\",\n\"奈良.jp\",\n\"宮城.jp\",\n\"宮崎.jp\",\n\"富山.jp\",\n\"山口.jp\",\n\"山形.jp\",\n\"山梨.jp\",\n\"岩手.jp\",\n\"岐阜.jp\",\n\"岡山.jp\",\n\"島根.jp\",\n\"広島.jp\",\n\"徳島.jp\",\n\"沖縄.jp\",\n\"滋賀.jp\",\n\"神奈川.jp\",\n\"福井.jp\",\n\"福岡.jp\",\n\"福島.jp\",\n\"秋田.jp\",\n\"群馬.jp\",\n\"香川.jp\",\n\"高知.jp\",\n\"鳥取.jp\",\n\"鹿児島.jp\",\n\"*.kawasaki.jp\",\n\"*.kitakyushu.jp\",\n\"*.kobe.jp\",\n\"*.nagoya.jp\",\n\"*.sapporo.jp\",\n\"*.sendai.jp\",\n\"*.yokohama.jp\",\n\"!city.kawasaki.jp\",\n\"!city.kitakyushu.jp\",\n\"!city.kobe.jp\",\n\"!city.nagoya.jp\",\n\"!city.sapporo.jp\",\n\"!city.sendai.jp\",\n\"!city.yokohama.jp\",\n\"aisai.aichi.jp\",\n\"ama.aichi.jp\",\n\"anjo.aichi.jp\",\n\"asuke.aichi.jp\",\n\"chiryu.aichi.jp\",\n\"chita.aichi.jp\",\n\"fuso.aichi.jp\",\n\"gamagori.aichi.jp\",\n\"handa.aichi.jp\",\n\"hazu.aichi.jp\",\n\"hekinan.aichi.jp\",\n\"higashiura.aichi.jp\",\n\"ichinomiya.aichi.jp\",\n\"inazawa.aichi.jp\",\n\"inuyama.aichi.jp\",\n\"isshiki.aichi.jp\",\n\"iwakura.aichi.jp\",\n\"kanie.aichi.jp\",\n\"kariya.aichi.jp\",\n\"kasugai.aichi.jp\",\n\"kira.aichi.jp\",\n\"kiyosu.aichi.jp\",\n\"komaki.aichi.jp\",\n\"konan.aichi.jp\",\n\"kota.aichi.jp\",\n\"mihama.aichi.jp\",\n\"miyoshi.aichi.jp\",\n\"nishio.aichi.jp\",\n\"nisshin.aichi.jp\",\n\"obu.aichi.jp\",\n\"oguchi.aichi.jp\",\n\"oharu.aichi.jp\",\n\"okazaki.aichi.jp\",\n\"owariasahi.aichi.jp\",\n\"seto.aichi.jp\",\n\"shikatsu.aichi.jp\",\n\"shinshiro.aichi.jp\",\n\"shitara.aichi.jp\",\n\"tahara.aichi.jp\",\n\"takahama.aichi.jp\",\n\"tobishima.aichi.jp\",\n\"toei.aichi.jp\",\n\"togo.aichi.jp\",\n\"tokai.aichi.jp\",\n\"tokoname.aichi.jp\",\n\"toyoake.aichi.jp\",\n\"toyohashi.aichi.jp\",\n\"toyokawa.aichi.jp\",\n\"toyone.aichi.jp\",\n\"toyota.aichi.jp\",\n\"tsushima.aichi.jp\",\n\"yatomi.aichi.jp\",\n\"akita.akita.jp\",\n\"daisen.akita.jp\",\n\"fujisato.akita.jp\",\n\"gojome.akita.jp\",\n\"hachirogata.akita.jp\",\n\"happou.akita.jp\",\n\"higashinaruse.akita.jp\",\n\"honjo.akita.jp\",\n\"honjyo.akita.jp\",\n\"ikawa.akita.jp\",\n\"kamikoani.akita.jp\",\n\"kamioka.akita.jp\",\n\"katagami.akita.jp\",\n\"kazuno.akita.jp\",\n\"kitaakita.akita.jp\",\n\"kosaka.akita.jp\",\n\"kyowa.akita.jp\",\n\"misato.akita.jp\",\n\"mitane.akita.jp\",\n\"moriyoshi.akita.jp\",\n\"nikaho.akita.jp\",\n\"noshiro.akita.jp\",\n\"odate.akita.jp\",\n\"oga.akita.jp\",\n\"ogata.akita.jp\",\n\"semboku.akita.jp\",\n\"yokote.akita.jp\",\n\"yurihonjo.akita.jp\",\n\"aomori.aomori.jp\",\n\"gonohe.aomori.jp\",\n\"hachinohe.aomori.jp\",\n\"hashikami.aomori.jp\",\n\"hiranai.aomori.jp\",\n\"hirosaki.aomori.jp\",\n\"itayanagi.aomori.jp\",\n\"kuroishi.aomori.jp\",\n\"misawa.aomori.jp\",\n\"mutsu.aomori.jp\",\n\"nakadomari.aomori.jp\",\n\"noheji.aomori.jp\",\n\"oirase.aomori.jp\",\n\"owani.aomori.jp\",\n\"rokunohe.aomori.jp\",\n\"sannohe.aomori.jp\",\n\"shichinohe.aomori.jp\",\n\"shingo.aomori.jp\",\n\"takko.aomori.jp\",\n\"towada.aomori.jp\",\n\"tsugaru.aomori.jp\",\n\"tsuruta.aomori.jp\",\n\"abiko.chiba.jp\",\n\"asahi.chiba.jp\",\n\"chonan.chiba.jp\",\n\"chosei.chiba.jp\",\n\"choshi.chiba.jp\",\n\"chuo.chiba.jp\",\n\"funabashi.chiba.jp\",\n\"futtsu.chiba.jp\",\n\"hanamigawa.chiba.jp\",\n\"ichihara.chiba.jp\",\n\"ichikawa.chiba.jp\",\n\"ichinomiya.chiba.jp\",\n\"inzai.chiba.jp\",\n\"isumi.chiba.jp\",\n\"kamagaya.chiba.jp\",\n\"kamogawa.chiba.jp\",\n\"kashiwa.chiba.jp\",\n\"katori.chiba.jp\",\n\"katsuura.chiba.jp\",\n\"kimitsu.chiba.jp\",\n\"kisarazu.chiba.jp\",\n\"kozaki.chiba.jp\",\n\"kujukuri.chiba.jp\",\n\"kyonan.chiba.jp\",\n\"matsudo.chiba.jp\",\n\"midori.chiba.jp\",\n\"mihama.chiba.jp\",\n\"minamiboso.chiba.jp\",\n\"mobara.chiba.jp\",\n\"mutsuzawa.chiba.jp\",\n\"nagara.chiba.jp\",\n\"nagareyama.chiba.jp\",\n\"narashino.chiba.jp\",\n\"narita.chiba.jp\",\n\"noda.chiba.jp\",\n\"oamishirasato.chiba.jp\",\n\"omigawa.chiba.jp\",\n\"onjuku.chiba.jp\",\n\"otaki.chiba.jp\",\n\"sakae.chiba.jp\",\n\"sakura.chiba.jp\",\n\"shimofusa.chiba.jp\",\n\"shirako.chiba.jp\",\n\"shiroi.chiba.jp\",\n\"shisui.chiba.jp\",\n\"sodegaura.chiba.jp\",\n\"sosa.chiba.jp\",\n\"tako.chiba.jp\",\n\"tateyama.chiba.jp\",\n\"togane.chiba.jp\",\n\"tohnosho.chiba.jp\",\n\"tomisato.chiba.jp\",\n\"urayasu.chiba.jp\",\n\"yachimata.chiba.jp\",\n\"yachiyo.chiba.jp\",\n\"yokaichiba.chiba.jp\",\n\"yokoshibahikari.chiba.jp\",\n\"yotsukaido.chiba.jp\",\n\"ainan.ehime.jp\",\n\"honai.ehime.jp\",\n\"ikata.ehime.jp\",\n\"imabari.ehime.jp\",\n\"iyo.ehime.jp\",\n\"kamijima.ehime.jp\",\n\"kihoku.ehime.jp\",\n\"kumakogen.ehime.jp\",\n\"masaki.ehime.jp\",\n\"matsuno.ehime.jp\",\n\"matsuyama.ehime.jp\",\n\"namikata.ehime.jp\",\n\"niihama.ehime.jp\",\n\"ozu.ehime.jp\",\n\"saijo.ehime.jp\",\n\"seiyo.ehime.jp\",\n\"shikokuchuo.ehime.jp\",\n\"tobe.ehime.jp\",\n\"toon.ehime.jp\",\n\"uchiko.ehime.jp\",\n\"uwajima.ehime.jp\",\n\"yawatahama.ehime.jp\",\n\"echizen.fukui.jp\",\n\"eiheiji.fukui.jp\",\n\"fukui.fukui.jp\",\n\"ikeda.fukui.jp\",\n\"katsuyama.fukui.jp\",\n\"mihama.fukui.jp\",\n\"minamiechizen.fukui.jp\",\n\"obama.fukui.jp\",\n\"ohi.fukui.jp\",\n\"ono.fukui.jp\",\n\"sabae.fukui.jp\",\n\"sakai.fukui.jp\",\n\"takahama.fukui.jp\",\n\"tsuruga.fukui.jp\",\n\"wakasa.fukui.jp\",\n\"ashiya.fukuoka.jp\",\n\"buzen.fukuoka.jp\",\n\"chikugo.fukuoka.jp\",\n\"chikuho.fukuoka.jp\",\n\"chikujo.fukuoka.jp\",\n\"chikushino.fukuoka.jp\",\n\"chikuzen.fukuoka.jp\",\n\"chuo.fukuoka.jp\",\n\"dazaifu.fukuoka.jp\",\n\"fukuchi.fukuoka.jp\",\n\"hakata.fukuoka.jp\",\n\"higashi.fukuoka.jp\",\n\"hirokawa.fukuoka.jp\",\n\"hisayama.fukuoka.jp\",\n\"iizuka.fukuoka.jp\",\n\"inatsuki.fukuoka.jp\",\n\"kaho.fukuoka.jp\",\n\"kasuga.fukuoka.jp\",\n\"kasuya.fukuoka.jp\",\n\"kawara.fukuoka.jp\",\n\"keisen.fukuoka.jp\",\n\"koga.fukuoka.jp\",\n\"kurate.fukuoka.jp\",\n\"kurogi.fukuoka.jp\",\n\"kurume.fukuoka.jp\",\n\"minami.fukuoka.jp\",\n\"miyako.fukuoka.jp\",\n\"miyama.fukuoka.jp\",\n\"miyawaka.fukuoka.jp\",\n\"mizumaki.fukuoka.jp\",\n\"munakata.fukuoka.jp\",\n\"nakagawa.fukuoka.jp\",\n\"nakama.fukuoka.jp\",\n\"nishi.fukuoka.jp\",\n\"nogata.fukuoka.jp\",\n\"ogori.fukuoka.jp\",\n\"okagaki.fukuoka.jp\",\n\"okawa.fukuoka.jp\",\n\"oki.fukuoka.jp\",\n\"omuta.fukuoka.jp\",\n\"onga.fukuoka.jp\",\n\"onojo.fukuoka.jp\",\n\"oto.fukuoka.jp\",\n\"saigawa.fukuoka.jp\",\n\"sasaguri.fukuoka.jp\",\n\"shingu.fukuoka.jp\",\n\"shinyoshitomi.fukuoka.jp\",\n\"shonai.fukuoka.jp\",\n\"soeda.fukuoka.jp\",\n\"sue.fukuoka.jp\",\n\"tachiarai.fukuoka.jp\",\n\"tagawa.fukuoka.jp\",\n\"takata.fukuoka.jp\",\n\"toho.fukuoka.jp\",\n\"toyotsu.fukuoka.jp\",\n\"tsuiki.fukuoka.jp\",\n\"ukiha.fukuoka.jp\",\n\"umi.fukuoka.jp\",\n\"usui.fukuoka.jp\",\n\"yamada.fukuoka.jp\",\n\"yame.fukuoka.jp\",\n\"yanagawa.fukuoka.jp\",\n\"yukuhashi.fukuoka.jp\",\n\"aizubange.fukushima.jp\",\n\"aizumisato.fukushima.jp\",\n\"aizuwakamatsu.fukushima.jp\",\n\"asakawa.fukushima.jp\",\n\"bandai.fukushima.jp\",\n\"date.fukushima.jp\",\n\"fukushima.fukushima.jp\",\n\"furudono.fukushima.jp\",\n\"futaba.fukushima.jp\",\n\"hanawa.fukushima.jp\",\n\"higashi.fukushima.jp\",\n\"hirata.fukushima.jp\",\n\"hirono.fukushima.jp\",\n\"iitate.fukushima.jp\",\n\"inawashiro.fukushima.jp\",\n\"ishikawa.fukushima.jp\",\n\"iwaki.fukushima.jp\",\n\"izumizaki.fukushima.jp\",\n\"kagamiishi.fukushima.jp\",\n\"kaneyama.fukushima.jp\",\n\"kawamata.fukushima.jp\",\n\"kitakata.fukushima.jp\",\n\"kitashiobara.fukushima.jp\",\n\"koori.fukushima.jp\",\n\"koriyama.fukushima.jp\",\n\"kunimi.fukushima.jp\",\n\"miharu.fukushima.jp\",\n\"mishima.fukushima.jp\",\n\"namie.fukushima.jp\",\n\"nango.fukushima.jp\",\n\"nishiaizu.fukushima.jp\",\n\"nishigo.fukushima.jp\",\n\"okuma.fukushima.jp\",\n\"omotego.fukushima.jp\",\n\"ono.fukushima.jp\",\n\"otama.fukushima.jp\",\n\"samegawa.fukushima.jp\",\n\"shimogo.fukushima.jp\",\n\"shirakawa.fukushima.jp\",\n\"showa.fukushima.jp\",\n\"soma.fukushima.jp\",\n\"sukagawa.fukushima.jp\",\n\"taishin.fukushima.jp\",\n\"tamakawa.fukushima.jp\",\n\"tanagura.fukushima.jp\",\n\"tenei.fukushima.jp\",\n\"yabuki.fukushima.jp\",\n\"yamato.fukushima.jp\",\n\"yamatsuri.fukushima.jp\",\n\"yanaizu.fukushima.jp\",\n\"yugawa.fukushima.jp\",\n\"anpachi.gifu.jp\",\n\"ena.gifu.jp\",\n\"gifu.gifu.jp\",\n\"ginan.gifu.jp\",\n\"godo.gifu.jp\",\n\"gujo.gifu.jp\",\n\"hashima.gifu.jp\",\n\"hichiso.gifu.jp\",\n\"hida.gifu.jp\",\n\"higashishirakawa.gifu.jp\",\n\"ibigawa.gifu.jp\",\n\"ikeda.gifu.jp\",\n\"kakamigahara.gifu.jp\",\n\"kani.gifu.jp\",\n\"kasahara.gifu.jp\",\n\"kasamatsu.gifu.jp\",\n\"kawaue.gifu.jp\",\n\"kitagata.gifu.jp\",\n\"mino.gifu.jp\",\n\"minokamo.gifu.jp\",\n\"mitake.gifu.jp\",\n\"mizunami.gifu.jp\",\n\"motosu.gifu.jp\",\n\"nakatsugawa.gifu.jp\",\n\"ogaki.gifu.jp\",\n\"sakahogi.gifu.jp\",\n\"seki.gifu.jp\",\n\"sekigahara.gifu.jp\",\n\"shirakawa.gifu.jp\",\n\"tajimi.gifu.jp\",\n\"takayama.gifu.jp\",\n\"tarui.gifu.jp\",\n\"toki.gifu.jp\",\n\"tomika.gifu.jp\",\n\"wanouchi.gifu.jp\",\n\"yamagata.gifu.jp\",\n\"yaotsu.gifu.jp\",\n\"yoro.gifu.jp\",\n\"annaka.gunma.jp\",\n\"chiyoda.gunma.jp\",\n\"fujioka.gunma.jp\",\n\"higashiagatsuma.gunma.jp\",\n\"isesaki.gunma.jp\",\n\"itakura.gunma.jp\",\n\"kanna.gunma.jp\",\n\"kanra.gunma.jp\",\n\"katashina.gunma.jp\",\n\"kawaba.gunma.jp\",\n\"kiryu.gunma.jp\",\n\"kusatsu.gunma.jp\",\n\"maebashi.gunma.jp\",\n\"meiwa.gunma.jp\",\n\"midori.gunma.jp\",\n\"minakami.gunma.jp\",\n\"naganohara.gunma.jp\",\n\"nakanojo.gunma.jp\",\n\"nanmoku.gunma.jp\",\n\"numata.gunma.jp\",\n\"oizumi.gunma.jp\",\n\"ora.gunma.jp\",\n\"ota.gunma.jp\",\n\"shibukawa.gunma.jp\",\n\"shimonita.gunma.jp\",\n\"shinto.gunma.jp\",\n\"showa.gunma.jp\",\n\"takasaki.gunma.jp\",\n\"takayama.gunma.jp\",\n\"tamamura.gunma.jp\",\n\"tatebayashi.gunma.jp\",\n\"tomioka.gunma.jp\",\n\"tsukiyono.gunma.jp\",\n\"tsumagoi.gunma.jp\",\n\"ueno.gunma.jp\",\n\"yoshioka.gunma.jp\",\n\"asaminami.hiroshima.jp\",\n\"daiwa.hiroshima.jp\",\n\"etajima.hiroshima.jp\",\n\"fuchu.hiroshima.jp\",\n\"fukuyama.hiroshima.jp\",\n\"hatsukaichi.hiroshima.jp\",\n\"higashihiroshima.hiroshima.jp\",\n\"hongo.hiroshima.jp\",\n\"jinsekikogen.hiroshima.jp\",\n\"kaita.hiroshima.jp\",\n\"kui.hiroshima.jp\",\n\"kumano.hiroshima.jp\",\n\"kure.hiroshima.jp\",\n\"mihara.hiroshima.jp\",\n\"miyoshi.hiroshima.jp\",\n\"naka.hiroshima.jp\",\n\"onomichi.hiroshima.jp\",\n\"osakikamijima.hiroshima.jp\",\n\"otake.hiroshima.jp\",\n\"saka.hiroshima.jp\",\n\"sera.hiroshima.jp\",\n\"seranishi.hiroshima.jp\",\n\"shinichi.hiroshima.jp\",\n\"shobara.hiroshima.jp\",\n\"takehara.hiroshima.jp\",\n\"abashiri.hokkaido.jp\",\n\"abira.hokkaido.jp\",\n\"aibetsu.hokkaido.jp\",\n\"akabira.hokkaido.jp\",\n\"akkeshi.hokkaido.jp\",\n\"asahikawa.hokkaido.jp\",\n\"ashibetsu.hokkaido.jp\",\n\"ashoro.hokkaido.jp\",\n\"assabu.hokkaido.jp\",\n\"atsuma.hokkaido.jp\",\n\"bibai.hokkaido.jp\",\n\"biei.hokkaido.jp\",\n\"bifuka.hokkaido.jp\",\n\"bihoro.hokkaido.jp\",\n\"biratori.hokkaido.jp\",\n\"chippubetsu.hokkaido.jp\",\n\"chitose.hokkaido.jp\",\n\"date.hokkaido.jp\",\n\"ebetsu.hokkaido.jp\",\n\"embetsu.hokkaido.jp\",\n\"eniwa.hokkaido.jp\",\n\"erimo.hokkaido.jp\",\n\"esan.hokkaido.jp\",\n\"esashi.hokkaido.jp\",\n\"fukagawa.hokkaido.jp\",\n\"fukushima.hokkaido.jp\",\n\"furano.hokkaido.jp\",\n\"furubira.hokkaido.jp\",\n\"haboro.hokkaido.jp\",\n\"hakodate.hokkaido.jp\",\n\"hamatonbetsu.hokkaido.jp\",\n\"hidaka.hokkaido.jp\",\n\"higashikagura.hokkaido.jp\",\n\"higashikawa.hokkaido.jp\",\n\"hiroo.hokkaido.jp\",\n\"hokuryu.hokkaido.jp\",\n\"hokuto.hokkaido.jp\",\n\"honbetsu.hokkaido.jp\",\n\"horokanai.hokkaido.jp\",\n\"horonobe.hokkaido.jp\",\n\"ikeda.hokkaido.jp\",\n\"imakane.hokkaido.jp\",\n\"ishikari.hokkaido.jp\",\n\"iwamizawa.hokkaido.jp\",\n\"iwanai.hokkaido.jp\",\n\"kamifurano.hokkaido.jp\",\n\"kamikawa.hokkaido.jp\",\n\"kamishihoro.hokkaido.jp\",\n\"kamisunagawa.hokkaido.jp\",\n\"kamoenai.hokkaido.jp\",\n\"kayabe.hokkaido.jp\",\n\"kembuchi.hokkaido.jp\",\n\"kikonai.hokkaido.jp\",\n\"kimobetsu.hokkaido.jp\",\n\"kitahiroshima.hokkaido.jp\",\n\"kitami.hokkaido.jp\",\n\"kiyosato.hokkaido.jp\",\n\"koshimizu.hokkaido.jp\",\n\"kunneppu.hokkaido.jp\",\n\"kuriyama.hokkaido.jp\",\n\"kuromatsunai.hokkaido.jp\",\n\"kushiro.hokkaido.jp\",\n\"kutchan.hokkaido.jp\",\n\"kyowa.hokkaido.jp\",\n\"mashike.hokkaido.jp\",\n\"matsumae.hokkaido.jp\",\n\"mikasa.hokkaido.jp\",\n\"minamifurano.hokkaido.jp\",\n\"mombetsu.hokkaido.jp\",\n\"moseushi.hokkaido.jp\",\n\"mukawa.hokkaido.jp\",\n\"muroran.hokkaido.jp\",\n\"naie.hokkaido.jp\",\n\"nakagawa.hokkaido.jp\",\n\"nakasatsunai.hokkaido.jp\",\n\"nakatombetsu.hokkaido.jp\",\n\"nanae.hokkaido.jp\",\n\"nanporo.hokkaido.jp\",\n\"nayoro.hokkaido.jp\",\n\"nemuro.hokkaido.jp\",\n\"niikappu.hokkaido.jp\",\n\"niki.hokkaido.jp\",\n\"nishiokoppe.hokkaido.jp\",\n\"noboribetsu.hokkaido.jp\",\n\"numata.hokkaido.jp\",\n\"obihiro.hokkaido.jp\",\n\"obira.hokkaido.jp\",\n\"oketo.hokkaido.jp\",\n\"okoppe.hokkaido.jp\",\n\"otaru.hokkaido.jp\",\n\"otobe.hokkaido.jp\",\n\"otofuke.hokkaido.jp\",\n\"otoineppu.hokkaido.jp\",\n\"oumu.hokkaido.jp\",\n\"ozora.hokkaido.jp\",\n\"pippu.hokkaido.jp\",\n\"rankoshi.hokkaido.jp\",\n\"rebun.hokkaido.jp\",\n\"rikubetsu.hokkaido.jp\",\n\"rishiri.hokkaido.jp\",\n\"rishirifuji.hokkaido.jp\",\n\"saroma.hokkaido.jp\",\n\"sarufutsu.hokkaido.jp\",\n\"shakotan.hokkaido.jp\",\n\"shari.hokkaido.jp\",\n\"shibecha.hokkaido.jp\",\n\"shibetsu.hokkaido.jp\",\n\"shikabe.hokkaido.jp\",\n\"shikaoi.hokkaido.jp\",\n\"shimamaki.hokkaido.jp\",\n\"shimizu.hokkaido.jp\",\n\"shimokawa.hokkaido.jp\",\n\"shinshinotsu.hokkaido.jp\",\n\"shintoku.hokkaido.jp\",\n\"shiranuka.hokkaido.jp\",\n\"shiraoi.hokkaido.jp\",\n\"shiriuchi.hokkaido.jp\",\n\"sobetsu.hokkaido.jp\",\n\"sunagawa.hokkaido.jp\",\n\"taiki.hokkaido.jp\",\n\"takasu.hokkaido.jp\",\n\"takikawa.hokkaido.jp\",\n\"takinoue.hokkaido.jp\",\n\"teshikaga.hokkaido.jp\",\n\"tobetsu.hokkaido.jp\",\n\"tohma.hokkaido.jp\",\n\"tomakomai.hokkaido.jp\",\n\"tomari.hokkaido.jp\",\n\"toya.hokkaido.jp\",\n\"toyako.hokkaido.jp\",\n\"toyotomi.hokkaido.jp\",\n\"toyoura.hokkaido.jp\",\n\"tsubetsu.hokkaido.jp\",\n\"tsukigata.hokkaido.jp\",\n\"urakawa.hokkaido.jp\",\n\"urausu.hokkaido.jp\",\n\"uryu.hokkaido.jp\",\n\"utashinai.hokkaido.jp\",\n\"wakkanai.hokkaido.jp\",\n\"wassamu.hokkaido.jp\",\n\"yakumo.hokkaido.jp\",\n\"yoichi.hokkaido.jp\",\n\"aioi.hyogo.jp\",\n\"akashi.hyogo.jp\",\n\"ako.hyogo.jp\",\n\"amagasaki.hyogo.jp\",\n\"aogaki.hyogo.jp\",\n\"asago.hyogo.jp\",\n\"ashiya.hyogo.jp\",\n\"awaji.hyogo.jp\",\n\"fukusaki.hyogo.jp\",\n\"goshiki.hyogo.jp\",\n\"harima.hyogo.jp\",\n\"himeji.hyogo.jp\",\n\"ichikawa.hyogo.jp\",\n\"inagawa.hyogo.jp\",\n\"itami.hyogo.jp\",\n\"kakogawa.hyogo.jp\",\n\"kamigori.hyogo.jp\",\n\"kamikawa.hyogo.jp\",\n\"kasai.hyogo.jp\",\n\"kasuga.hyogo.jp\",\n\"kawanishi.hyogo.jp\",\n\"miki.hyogo.jp\",\n\"minamiawaji.hyogo.jp\",\n\"nishinomiya.hyogo.jp\",\n\"nishiwaki.hyogo.jp\",\n\"ono.hyogo.jp\",\n\"sanda.hyogo.jp\",\n\"sannan.hyogo.jp\",\n\"sasayama.hyogo.jp\",\n\"sayo.hyogo.jp\",\n\"shingu.hyogo.jp\",\n\"shinonsen.hyogo.jp\",\n\"shiso.hyogo.jp\",\n\"sumoto.hyogo.jp\",\n\"taishi.hyogo.jp\",\n\"taka.hyogo.jp\",\n\"takarazuka.hyogo.jp\",\n\"takasago.hyogo.jp\",\n\"takino.hyogo.jp\",\n\"tamba.hyogo.jp\",\n\"tatsuno.hyogo.jp\",\n\"toyooka.hyogo.jp\",\n\"yabu.hyogo.jp\",\n\"yashiro.hyogo.jp\",\n\"yoka.hyogo.jp\",\n\"yokawa.hyogo.jp\",\n\"ami.ibaraki.jp\",\n\"asahi.ibaraki.jp\",\n\"bando.ibaraki.jp\",\n\"chikusei.ibaraki.jp\",\n\"daigo.ibaraki.jp\",\n\"fujishiro.ibaraki.jp\",\n\"hitachi.ibaraki.jp\",\n\"hitachinaka.ibaraki.jp\",\n\"hitachiomiya.ibaraki.jp\",\n\"hitachiota.ibaraki.jp\",\n\"ibaraki.ibaraki.jp\",\n\"ina.ibaraki.jp\",\n\"inashiki.ibaraki.jp\",\n\"itako.ibaraki.jp\",\n\"iwama.ibaraki.jp\",\n\"joso.ibaraki.jp\",\n\"kamisu.ibaraki.jp\",\n\"kasama.ibaraki.jp\",\n\"kashima.ibaraki.jp\",\n\"kasumigaura.ibaraki.jp\",\n\"koga.ibaraki.jp\",\n\"miho.ibaraki.jp\",\n\"mito.ibaraki.jp\",\n\"moriya.ibaraki.jp\",\n\"naka.ibaraki.jp\",\n\"namegata.ibaraki.jp\",\n\"oarai.ibaraki.jp\",\n\"ogawa.ibaraki.jp\",\n\"omitama.ibaraki.jp\",\n\"ryugasaki.ibaraki.jp\",\n\"sakai.ibaraki.jp\",\n\"sakuragawa.ibaraki.jp\",\n\"shimodate.ibaraki.jp\",\n\"shimotsuma.ibaraki.jp\",\n\"shirosato.ibaraki.jp\",\n\"sowa.ibaraki.jp\",\n\"suifu.ibaraki.jp\",\n\"takahagi.ibaraki.jp\",\n\"tamatsukuri.ibaraki.jp\",\n\"tokai.ibaraki.jp\",\n\"tomobe.ibaraki.jp\",\n\"tone.ibaraki.jp\",\n\"toride.ibaraki.jp\",\n\"tsuchiura.ibaraki.jp\",\n\"tsukuba.ibaraki.jp\",\n\"uchihara.ibaraki.jp\",\n\"ushiku.ibaraki.jp\",\n\"yachiyo.ibaraki.jp\",\n\"yamagata.ibaraki.jp\",\n\"yawara.ibaraki.jp\",\n\"yuki.ibaraki.jp\",\n\"anamizu.ishikawa.jp\",\n\"hakui.ishikawa.jp\",\n\"hakusan.ishikawa.jp\",\n\"kaga.ishikawa.jp\",\n\"kahoku.ishikawa.jp\",\n\"kanazawa.ishikawa.jp\",\n\"kawakita.ishikawa.jp\",\n\"komatsu.ishikawa.jp\",\n\"nakanoto.ishikawa.jp\",\n\"nanao.ishikawa.jp\",\n\"nomi.ishikawa.jp\",\n\"nonoichi.ishikawa.jp\",\n\"noto.ishikawa.jp\",\n\"shika.ishikawa.jp\",\n\"suzu.ishikawa.jp\",\n\"tsubata.ishikawa.jp\",\n\"tsurugi.ishikawa.jp\",\n\"uchinada.ishikawa.jp\",\n\"wajima.ishikawa.jp\",\n\"fudai.iwate.jp\",\n\"fujisawa.iwate.jp\",\n\"hanamaki.iwate.jp\",\n\"hiraizumi.iwate.jp\",\n\"hirono.iwate.jp\",\n\"ichinohe.iwate.jp\",\n\"ichinoseki.iwate.jp\",\n\"iwaizumi.iwate.jp\",\n\"iwate.iwate.jp\",\n\"joboji.iwate.jp\",\n\"kamaishi.iwate.jp\",\n\"kanegasaki.iwate.jp\",\n\"karumai.iwate.jp\",\n\"kawai.iwate.jp\",\n\"kitakami.iwate.jp\",\n\"kuji.iwate.jp\",\n\"kunohe.iwate.jp\",\n\"kuzumaki.iwate.jp\",\n\"miyako.iwate.jp\",\n\"mizusawa.iwate.jp\",\n\"morioka.iwate.jp\",\n\"ninohe.iwate.jp\",\n\"noda.iwate.jp\",\n\"ofunato.iwate.jp\",\n\"oshu.iwate.jp\",\n\"otsuchi.iwate.jp\",\n\"rikuzentakata.iwate.jp\",\n\"shiwa.iwate.jp\",\n\"shizukuishi.iwate.jp\",\n\"sumita.iwate.jp\",\n\"tanohata.iwate.jp\",\n\"tono.iwate.jp\",\n\"yahaba.iwate.jp\",\n\"yamada.iwate.jp\",\n\"ayagawa.kagawa.jp\",\n\"higashikagawa.kagawa.jp\",\n\"kanonji.kagawa.jp\",\n\"kotohira.kagawa.jp\",\n\"manno.kagawa.jp\",\n\"marugame.kagawa.jp\",\n\"mitoyo.kagawa.jp\",\n\"naoshima.kagawa.jp\",\n\"sanuki.kagawa.jp\",\n\"tadotsu.kagawa.jp\",\n\"takamatsu.kagawa.jp\",\n\"tonosho.kagawa.jp\",\n\"uchinomi.kagawa.jp\",\n\"utazu.kagawa.jp\",\n\"zentsuji.kagawa.jp\",\n\"akune.kagoshima.jp\",\n\"amami.kagoshima.jp\",\n\"hioki.kagoshima.jp\",\n\"isa.kagoshima.jp\",\n\"isen.kagoshima.jp\",\n\"izumi.kagoshima.jp\",\n\"kagoshima.kagoshima.jp\",\n\"kanoya.kagoshima.jp\",\n\"kawanabe.kagoshima.jp\",\n\"kinko.kagoshima.jp\",\n\"kouyama.kagoshima.jp\",\n\"makurazaki.kagoshima.jp\",\n\"matsumoto.kagoshima.jp\",\n\"minamitane.kagoshima.jp\",\n\"nakatane.kagoshima.jp\",\n\"nishinoomote.kagoshima.jp\",\n\"satsumasendai.kagoshima.jp\",\n\"soo.kagoshima.jp\",\n\"tarumizu.kagoshima.jp\",\n\"yusui.kagoshima.jp\",\n\"aikawa.kanagawa.jp\",\n\"atsugi.kanagawa.jp\",\n\"ayase.kanagawa.jp\",\n\"chigasaki.kanagawa.jp\",\n\"ebina.kanagawa.jp\",\n\"fujisawa.kanagawa.jp\",\n\"hadano.kanagawa.jp\",\n\"hakone.kanagawa.jp\",\n\"hiratsuka.kanagawa.jp\",\n\"isehara.kanagawa.jp\",\n\"kaisei.kanagawa.jp\",\n\"kamakura.kanagawa.jp\",\n\"kiyokawa.kanagawa.jp\",\n\"matsuda.kanagawa.jp\",\n\"minamiashigara.kanagawa.jp\",\n\"miura.kanagawa.jp\",\n\"nakai.kanagawa.jp\",\n\"ninomiya.kanagawa.jp\",\n\"odawara.kanagawa.jp\",\n\"oi.kanagawa.jp\",\n\"oiso.kanagawa.jp\",\n\"sagamihara.kanagawa.jp\",\n\"samukawa.kanagawa.jp\",\n\"tsukui.kanagawa.jp\",\n\"yamakita.kanagawa.jp\",\n\"yamato.kanagawa.jp\",\n\"yokosuka.kanagawa.jp\",\n\"yugawara.kanagawa.jp\",\n\"zama.kanagawa.jp\",\n\"zushi.kanagawa.jp\",\n\"aki.kochi.jp\",\n\"geisei.kochi.jp\",\n\"hidaka.kochi.jp\",\n\"higashitsuno.kochi.jp\",\n\"ino.kochi.jp\",\n\"kagami.kochi.jp\",\n\"kami.kochi.jp\",\n\"kitagawa.kochi.jp\",\n\"kochi.kochi.jp\",\n\"mihara.kochi.jp\",\n\"motoyama.kochi.jp\",\n\"muroto.kochi.jp\",\n\"nahari.kochi.jp\",\n\"nakamura.kochi.jp\",\n\"nankoku.kochi.jp\",\n\"nishitosa.kochi.jp\",\n\"niyodogawa.kochi.jp\",\n\"ochi.kochi.jp\",\n\"okawa.kochi.jp\",\n\"otoyo.kochi.jp\",\n\"otsuki.kochi.jp\",\n\"sakawa.kochi.jp\",\n\"sukumo.kochi.jp\",\n\"susaki.kochi.jp\",\n\"tosa.kochi.jp\",\n\"tosashimizu.kochi.jp\",\n\"toyo.kochi.jp\",\n\"tsuno.kochi.jp\",\n\"umaji.kochi.jp\",\n\"yasuda.kochi.jp\",\n\"yusuhara.kochi.jp\",\n\"amakusa.kumamoto.jp\",\n\"arao.kumamoto.jp\",\n\"aso.kumamoto.jp\",\n\"choyo.kumamoto.jp\",\n\"gyokuto.kumamoto.jp\",\n\"kamiamakusa.kumamoto.jp\",\n\"kikuchi.kumamoto.jp\",\n\"kumamoto.kumamoto.jp\",\n\"mashiki.kumamoto.jp\",\n\"mifune.kumamoto.jp\",\n\"minamata.kumamoto.jp\",\n\"minamioguni.kumamoto.jp\",\n\"nagasu.kumamoto.jp\",\n\"nishihara.kumamoto.jp\",\n\"oguni.kumamoto.jp\",\n\"ozu.kumamoto.jp\",\n\"sumoto.kumamoto.jp\",\n\"takamori.kumamoto.jp\",\n\"uki.kumamoto.jp\",\n\"uto.kumamoto.jp\",\n\"yamaga.kumamoto.jp\",\n\"yamato.kumamoto.jp\",\n\"yatsushiro.kumamoto.jp\",\n\"ayabe.kyoto.jp\",\n\"fukuchiyama.kyoto.jp\",\n\"higashiyama.kyoto.jp\",\n\"ide.kyoto.jp\",\n\"ine.kyoto.jp\",\n\"joyo.kyoto.jp\",\n\"kameoka.kyoto.jp\",\n\"kamo.kyoto.jp\",\n\"kita.kyoto.jp\",\n\"kizu.kyoto.jp\",\n\"kumiyama.kyoto.jp\",\n\"kyotamba.kyoto.jp\",\n\"kyotanabe.kyoto.jp\",\n\"kyotango.kyoto.jp\",\n\"maizuru.kyoto.jp\",\n\"minami.kyoto.jp\",\n\"minamiyamashiro.kyoto.jp\",\n\"miyazu.kyoto.jp\",\n\"muko.kyoto.jp\",\n\"nagaokakyo.kyoto.jp\",\n\"nakagyo.kyoto.jp\",\n\"nantan.kyoto.jp\",\n\"oyamazaki.kyoto.jp\",\n\"sakyo.kyoto.jp\",\n\"seika.kyoto.jp\",\n\"tanabe.kyoto.jp\",\n\"uji.kyoto.jp\",\n\"ujitawara.kyoto.jp\",\n\"wazuka.kyoto.jp\",\n\"yamashina.kyoto.jp\",\n\"yawata.kyoto.jp\",\n\"asahi.mie.jp\",\n\"inabe.mie.jp\",\n\"ise.mie.jp\",\n\"kameyama.mie.jp\",\n\"kawagoe.mie.jp\",\n\"kiho.mie.jp\",\n\"kisosaki.mie.jp\",\n\"kiwa.mie.jp\",\n\"komono.mie.jp\",\n\"kumano.mie.jp\",\n\"kuwana.mie.jp\",\n\"matsusaka.mie.jp\",\n\"meiwa.mie.jp\",\n\"mihama.mie.jp\",\n\"minamiise.mie.jp\",\n\"misugi.mie.jp\",\n\"miyama.mie.jp\",\n\"nabari.mie.jp\",\n\"shima.mie.jp\",\n\"suzuka.mie.jp\",\n\"tado.mie.jp\",\n\"taiki.mie.jp\",\n\"taki.mie.jp\",\n\"tamaki.mie.jp\",\n\"toba.mie.jp\",\n\"tsu.mie.jp\",\n\"udono.mie.jp\",\n\"ureshino.mie.jp\",\n\"watarai.mie.jp\",\n\"yokkaichi.mie.jp\",\n\"furukawa.miyagi.jp\",\n\"higashimatsushima.miyagi.jp\",\n\"ishinomaki.miyagi.jp\",\n\"iwanuma.miyagi.jp\",\n\"kakuda.miyagi.jp\",\n\"kami.miyagi.jp\",\n\"kawasaki.miyagi.jp\",\n\"marumori.miyagi.jp\",\n\"matsushima.miyagi.jp\",\n\"minamisanriku.miyagi.jp\",\n\"misato.miyagi.jp\",\n\"murata.miyagi.jp\",\n\"natori.miyagi.jp\",\n\"ogawara.miyagi.jp\",\n\"ohira.miyagi.jp\",\n\"onagawa.miyagi.jp\",\n\"osaki.miyagi.jp\",\n\"rifu.miyagi.jp\",\n\"semine.miyagi.jp\",\n\"shibata.miyagi.jp\",\n\"shichikashuku.miyagi.jp\",\n\"shikama.miyagi.jp\",\n\"shiogama.miyagi.jp\",\n\"shiroishi.miyagi.jp\",\n\"tagajo.miyagi.jp\",\n\"taiwa.miyagi.jp\",\n\"tome.miyagi.jp\",\n\"tomiya.miyagi.jp\",\n\"wakuya.miyagi.jp\",\n\"watari.miyagi.jp\",\n\"yamamoto.miyagi.jp\",\n\"zao.miyagi.jp\",\n\"aya.miyazaki.jp\",\n\"ebino.miyazaki.jp\",\n\"gokase.miyazaki.jp\",\n\"hyuga.miyazaki.jp\",\n\"kadogawa.miyazaki.jp\",\n\"kawaminami.miyazaki.jp\",\n\"kijo.miyazaki.jp\",\n\"kitagawa.miyazaki.jp\",\n\"kitakata.miyazaki.jp\",\n\"kitaura.miyazaki.jp\",\n\"kobayashi.miyazaki.jp\",\n\"kunitomi.miyazaki.jp\",\n\"kushima.miyazaki.jp\",\n\"mimata.miyazaki.jp\",\n\"miyakonojo.miyazaki.jp\",\n\"miyazaki.miyazaki.jp\",\n\"morotsuka.miyazaki.jp\",\n\"nichinan.miyazaki.jp\",\n\"nishimera.miyazaki.jp\",\n\"nobeoka.miyazaki.jp\",\n\"saito.miyazaki.jp\",\n\"shiiba.miyazaki.jp\",\n\"shintomi.miyazaki.jp\",\n\"takaharu.miyazaki.jp\",\n\"takanabe.miyazaki.jp\",\n\"takazaki.miyazaki.jp\",\n\"tsuno.miyazaki.jp\",\n\"achi.nagano.jp\",\n\"agematsu.nagano.jp\",\n\"anan.nagano.jp\",\n\"aoki.nagano.jp\",\n\"asahi.nagano.jp\",\n\"azumino.nagano.jp\",\n\"chikuhoku.nagano.jp\",\n\"chikuma.nagano.jp\",\n\"chino.nagano.jp\",\n\"fujimi.nagano.jp\",\n\"hakuba.nagano.jp\",\n\"hara.nagano.jp\",\n\"hiraya.nagano.jp\",\n\"iida.nagano.jp\",\n\"iijima.nagano.jp\",\n\"iiyama.nagano.jp\",\n\"iizuna.nagano.jp\",\n\"ikeda.nagano.jp\",\n\"ikusaka.nagano.jp\",\n\"ina.nagano.jp\",\n\"karuizawa.nagano.jp\",\n\"kawakami.nagano.jp\",\n\"kiso.nagano.jp\",\n\"kisofukushima.nagano.jp\",\n\"kitaaiki.nagano.jp\",\n\"komagane.nagano.jp\",\n\"komoro.nagano.jp\",\n\"matsukawa.nagano.jp\",\n\"matsumoto.nagano.jp\",\n\"miasa.nagano.jp\",\n\"minamiaiki.nagano.jp\",\n\"minamimaki.nagano.jp\",\n\"minamiminowa.nagano.jp\",\n\"minowa.nagano.jp\",\n\"miyada.nagano.jp\",\n\"miyota.nagano.jp\",\n\"mochizuki.nagano.jp\",\n\"nagano.nagano.jp\",\n\"nagawa.nagano.jp\",\n\"nagiso.nagano.jp\",\n\"nakagawa.nagano.jp\",\n\"nakano.nagano.jp\",\n\"nozawaonsen.nagano.jp\",\n\"obuse.nagano.jp\",\n\"ogawa.nagano.jp\",\n\"okaya.nagano.jp\",\n\"omachi.nagano.jp\",\n\"omi.nagano.jp\",\n\"ookuwa.nagano.jp\",\n\"ooshika.nagano.jp\",\n\"otaki.nagano.jp\",\n\"otari.nagano.jp\",\n\"sakae.nagano.jp\",\n\"sakaki.nagano.jp\",\n\"saku.nagano.jp\",\n\"sakuho.nagano.jp\",\n\"shimosuwa.nagano.jp\",\n\"shinanomachi.nagano.jp\",\n\"shiojiri.nagano.jp\",\n\"suwa.nagano.jp\",\n\"suzaka.nagano.jp\",\n\"takagi.nagano.jp\",\n\"takamori.nagano.jp\",\n\"takayama.nagano.jp\",\n\"tateshina.nagano.jp\",\n\"tatsuno.nagano.jp\",\n\"togakushi.nagano.jp\",\n\"togura.nagano.jp\",\n\"tomi.nagano.jp\",\n\"ueda.nagano.jp\",\n\"wada.nagano.jp\",\n\"yamagata.nagano.jp\",\n\"yamanouchi.nagano.jp\",\n\"yasaka.nagano.jp\",\n\"yasuoka.nagano.jp\",\n\"chijiwa.nagasaki.jp\",\n\"futsu.nagasaki.jp\",\n\"goto.nagasaki.jp\",\n\"hasami.nagasaki.jp\",\n\"hirado.nagasaki.jp\",\n\"iki.nagasaki.jp\",\n\"isahaya.nagasaki.jp\",\n\"kawatana.nagasaki.jp\",\n\"kuchinotsu.nagasaki.jp\",\n\"matsuura.nagasaki.jp\",\n\"nagasaki.nagasaki.jp\",\n\"obama.nagasaki.jp\",\n\"omura.nagasaki.jp\",\n\"oseto.nagasaki.jp\",\n\"saikai.nagasaki.jp\",\n\"sasebo.nagasaki.jp\",\n\"seihi.nagasaki.jp\",\n\"shimabara.nagasaki.jp\",\n\"shinkamigoto.nagasaki.jp\",\n\"togitsu.nagasaki.jp\",\n\"tsushima.nagasaki.jp\",\n\"unzen.nagasaki.jp\",\n\"ando.nara.jp\",\n\"gose.nara.jp\",\n\"heguri.nara.jp\",\n\"higashiyoshino.nara.jp\",\n\"ikaruga.nara.jp\",\n\"ikoma.nara.jp\",\n\"kamikitayama.nara.jp\",\n\"kanmaki.nara.jp\",\n\"kashiba.nara.jp\",\n\"kashihara.nara.jp\",\n\"katsuragi.nara.jp\",\n\"kawai.nara.jp\",\n\"kawakami.nara.jp\",\n\"kawanishi.nara.jp\",\n\"koryo.nara.jp\",\n\"kurotaki.nara.jp\",\n\"mitsue.nara.jp\",\n\"miyake.nara.jp\",\n\"nara.nara.jp\",\n\"nosegawa.nara.jp\",\n\"oji.nara.jp\",\n\"ouda.nara.jp\",\n\"oyodo.nara.jp\",\n\"sakurai.nara.jp\",\n\"sango.nara.jp\",\n\"shimoichi.nara.jp\",\n\"shimokitayama.nara.jp\",\n\"shinjo.nara.jp\",\n\"soni.nara.jp\",\n\"takatori.nara.jp\",\n\"tawaramoto.nara.jp\",\n\"tenkawa.nara.jp\",\n\"tenri.nara.jp\",\n\"uda.nara.jp\",\n\"yamatokoriyama.nara.jp\",\n\"yamatotakada.nara.jp\",\n\"yamazoe.nara.jp\",\n\"yoshino.nara.jp\",\n\"aga.niigata.jp\",\n\"agano.niigata.jp\",\n\"gosen.niigata.jp\",\n\"itoigawa.niigata.jp\",\n\"izumozaki.niigata.jp\",\n\"joetsu.niigata.jp\",\n\"kamo.niigata.jp\",\n\"kariwa.niigata.jp\",\n\"kashiwazaki.niigata.jp\",\n\"minamiuonuma.niigata.jp\",\n\"mitsuke.niigata.jp\",\n\"muika.niigata.jp\",\n\"murakami.niigata.jp\",\n\"myoko.niigata.jp\",\n\"nagaoka.niigata.jp\",\n\"niigata.niigata.jp\",\n\"ojiya.niigata.jp\",\n\"omi.niigata.jp\",\n\"sado.niigata.jp\",\n\"sanjo.niigata.jp\",\n\"seiro.niigata.jp\",\n\"seirou.niigata.jp\",\n\"sekikawa.niigata.jp\",\n\"shibata.niigata.jp\",\n\"tagami.niigata.jp\",\n\"tainai.niigata.jp\",\n\"tochio.niigata.jp\",\n\"tokamachi.niigata.jp\",\n\"tsubame.niigata.jp\",\n\"tsunan.niigata.jp\",\n\"uonuma.niigata.jp\",\n\"yahiko.niigata.jp\",\n\"yoita.niigata.jp\",\n\"yuzawa.niigata.jp\",\n\"beppu.oita.jp\",\n\"bungoono.oita.jp\",\n\"bungotakada.oita.jp\",\n\"hasama.oita.jp\",\n\"hiji.oita.jp\",\n\"himeshima.oita.jp\",\n\"hita.oita.jp\",\n\"kamitsue.oita.jp\",\n\"kokonoe.oita.jp\",\n\"kuju.oita.jp\",\n\"kunisaki.oita.jp\",\n\"kusu.oita.jp\",\n\"oita.oita.jp\",\n\"saiki.oita.jp\",\n\"taketa.oita.jp\",\n\"tsukumi.oita.jp\",\n\"usa.oita.jp\",\n\"usuki.oita.jp\",\n\"yufu.oita.jp\",\n\"akaiwa.okayama.jp\",\n\"asakuchi.okayama.jp\",\n\"bizen.okayama.jp\",\n\"hayashima.okayama.jp\",\n\"ibara.okayama.jp\",\n\"kagamino.okayama.jp\",\n\"kasaoka.okayama.jp\",\n\"kibichuo.okayama.jp\",\n\"kumenan.okayama.jp\",\n\"kurashiki.okayama.jp\",\n\"maniwa.okayama.jp\",\n\"misaki.okayama.jp\",\n\"nagi.okayama.jp\",\n\"niimi.okayama.jp\",\n\"nishiawakura.okayama.jp\",\n\"okayama.okayama.jp\",\n\"satosho.okayama.jp\",\n\"setouchi.okayama.jp\",\n\"shinjo.okayama.jp\",\n\"shoo.okayama.jp\",\n\"soja.okayama.jp\",\n\"takahashi.okayama.jp\",\n\"tamano.okayama.jp\",\n\"tsuyama.okayama.jp\",\n\"wake.okayama.jp\",\n\"yakage.okayama.jp\",\n\"aguni.okinawa.jp\",\n\"ginowan.okinawa.jp\",\n\"ginoza.okinawa.jp\",\n\"gushikami.okinawa.jp\",\n\"haebaru.okinawa.jp\",\n\"higashi.okinawa.jp\",\n\"hirara.okinawa.jp\",\n\"iheya.okinawa.jp\",\n\"ishigaki.okinawa.jp\",\n\"ishikawa.okinawa.jp\",\n\"itoman.okinawa.jp\",\n\"izena.okinawa.jp\",\n\"kadena.okinawa.jp\",\n\"kin.okinawa.jp\",\n\"kitadaito.okinawa.jp\",\n\"kitanakagusuku.okinawa.jp\",\n\"kumejima.okinawa.jp\",\n\"kunigami.okinawa.jp\",\n\"minamidaito.okinawa.jp\",\n\"motobu.okinawa.jp\",\n\"nago.okinawa.jp\",\n\"naha.okinawa.jp\",\n\"nakagusuku.okinawa.jp\",\n\"nakijin.okinawa.jp\",\n\"nanjo.okinawa.jp\",\n\"nishihara.okinawa.jp\",\n\"ogimi.okinawa.jp\",\n\"okinawa.okinawa.jp\",\n\"onna.okinawa.jp\",\n\"shimoji.okinawa.jp\",\n\"taketomi.okinawa.jp\",\n\"tarama.okinawa.jp\",\n\"tokashiki.okinawa.jp\",\n\"tomigusuku.okinawa.jp\",\n\"tonaki.okinawa.jp\",\n\"urasoe.okinawa.jp\",\n\"uruma.okinawa.jp\",\n\"yaese.okinawa.jp\",\n\"yomitan.okinawa.jp\",\n\"yonabaru.okinawa.jp\",\n\"yonaguni.okinawa.jp\",\n\"zamami.okinawa.jp\",\n\"abeno.osaka.jp\",\n\"chihayaakasaka.osaka.jp\",\n\"chuo.osaka.jp\",\n\"daito.osaka.jp\",\n\"fujiidera.osaka.jp\",\n\"habikino.osaka.jp\",\n\"hannan.osaka.jp\",\n\"higashiosaka.osaka.jp\",\n\"higashisumiyoshi.osaka.jp\",\n\"higashiyodogawa.osaka.jp\",\n\"hirakata.osaka.jp\",\n\"ibaraki.osaka.jp\",\n\"ikeda.osaka.jp\",\n\"izumi.osaka.jp\",\n\"izumiotsu.osaka.jp\",\n\"izumisano.osaka.jp\",\n\"kadoma.osaka.jp\",\n\"kaizuka.osaka.jp\",\n\"kanan.osaka.jp\",\n\"kashiwara.osaka.jp\",\n\"katano.osaka.jp\",\n\"kawachinagano.osaka.jp\",\n\"kishiwada.osaka.jp\",\n\"kita.osaka.jp\",\n\"kumatori.osaka.jp\",\n\"matsubara.osaka.jp\",\n\"minato.osaka.jp\",\n\"minoh.osaka.jp\",\n\"misaki.osaka.jp\",\n\"moriguchi.osaka.jp\",\n\"neyagawa.osaka.jp\",\n\"nishi.osaka.jp\",\n\"nose.osaka.jp\",\n\"osakasayama.osaka.jp\",\n\"sakai.osaka.jp\",\n\"sayama.osaka.jp\",\n\"sennan.osaka.jp\",\n\"settsu.osaka.jp\",\n\"shijonawate.osaka.jp\",\n\"shimamoto.osaka.jp\",\n\"suita.osaka.jp\",\n\"tadaoka.osaka.jp\",\n\"taishi.osaka.jp\",\n\"tajiri.osaka.jp\",\n\"takaishi.osaka.jp\",\n\"takatsuki.osaka.jp\",\n\"tondabayashi.osaka.jp\",\n\"toyonaka.osaka.jp\",\n\"toyono.osaka.jp\",\n\"yao.osaka.jp\",\n\"ariake.saga.jp\",\n\"arita.saga.jp\",\n\"fukudomi.saga.jp\",\n\"genkai.saga.jp\",\n\"hamatama.saga.jp\",\n\"hizen.saga.jp\",\n\"imari.saga.jp\",\n\"kamimine.saga.jp\",\n\"kanzaki.saga.jp\",\n\"karatsu.saga.jp\",\n\"kashima.saga.jp\",\n\"kitagata.saga.jp\",\n\"kitahata.saga.jp\",\n\"kiyama.saga.jp\",\n\"kouhoku.saga.jp\",\n\"kyuragi.saga.jp\",\n\"nishiarita.saga.jp\",\n\"ogi.saga.jp\",\n\"omachi.saga.jp\",\n\"ouchi.saga.jp\",\n\"saga.saga.jp\",\n\"shiroishi.saga.jp\",\n\"taku.saga.jp\",\n\"tara.saga.jp\",\n\"tosu.saga.jp\",\n\"yoshinogari.saga.jp\",\n\"arakawa.saitama.jp\",\n\"asaka.saitama.jp\",\n\"chichibu.saitama.jp\",\n\"fujimi.saitama.jp\",\n\"fujimino.saitama.jp\",\n\"fukaya.saitama.jp\",\n\"hanno.saitama.jp\",\n\"hanyu.saitama.jp\",\n\"hasuda.saitama.jp\",\n\"hatogaya.saitama.jp\",\n\"hatoyama.saitama.jp\",\n\"hidaka.saitama.jp\",\n\"higashichichibu.saitama.jp\",\n\"higashimatsuyama.saitama.jp\",\n\"honjo.saitama.jp\",\n\"ina.saitama.jp\",\n\"iruma.saitama.jp\",\n\"iwatsuki.saitama.jp\",\n\"kamiizumi.saitama.jp\",\n\"kamikawa.saitama.jp\",\n\"kamisato.saitama.jp\",\n\"kasukabe.saitama.jp\",\n\"kawagoe.saitama.jp\",\n\"kawaguchi.saitama.jp\",\n\"kawajima.saitama.jp\",\n\"kazo.saitama.jp\",\n\"kitamoto.saitama.jp\",\n\"koshigaya.saitama.jp\",\n\"kounosu.saitama.jp\",\n\"kuki.saitama.jp\",\n\"kumagaya.saitama.jp\",\n\"matsubushi.saitama.jp\",\n\"minano.saitama.jp\",\n\"misato.saitama.jp\",\n\"miyashiro.saitama.jp\",\n\"miyoshi.saitama.jp\",\n\"moroyama.saitama.jp\",\n\"nagatoro.saitama.jp\",\n\"namegawa.saitama.jp\",\n\"niiza.saitama.jp\",\n\"ogano.saitama.jp\",\n\"ogawa.saitama.jp\",\n\"ogose.saitama.jp\",\n\"okegawa.saitama.jp\",\n\"omiya.saitama.jp\",\n\"otaki.saitama.jp\",\n\"ranzan.saitama.jp\",\n\"ryokami.saitama.jp\",\n\"saitama.saitama.jp\",\n\"sakado.saitama.jp\",\n\"satte.saitama.jp\",\n\"sayama.saitama.jp\",\n\"shiki.saitama.jp\",\n\"shiraoka.saitama.jp\",\n\"soka.saitama.jp\",\n\"sugito.saitama.jp\",\n\"toda.saitama.jp\",\n\"tokigawa.saitama.jp\",\n\"tokorozawa.saitama.jp\",\n\"tsurugashima.saitama.jp\",\n\"urawa.saitama.jp\",\n\"warabi.saitama.jp\",\n\"yashio.saitama.jp\",\n\"yokoze.saitama.jp\",\n\"yono.saitama.jp\",\n\"yorii.saitama.jp\",\n\"yoshida.saitama.jp\",\n\"yoshikawa.saitama.jp\",\n\"yoshimi.saitama.jp\",\n\"aisho.shiga.jp\",\n\"gamo.shiga.jp\",\n\"higashiomi.shiga.jp\",\n\"hikone.shiga.jp\",\n\"koka.shiga.jp\",\n\"konan.shiga.jp\",\n\"kosei.shiga.jp\",\n\"koto.shiga.jp\",\n\"kusatsu.shiga.jp\",\n\"maibara.shiga.jp\",\n\"moriyama.shiga.jp\",\n\"nagahama.shiga.jp\",\n\"nishiazai.shiga.jp\",\n\"notogawa.shiga.jp\",\n\"omihachiman.shiga.jp\",\n\"otsu.shiga.jp\",\n\"ritto.shiga.jp\",\n\"ryuoh.shiga.jp\",\n\"takashima.shiga.jp\",\n\"takatsuki.shiga.jp\",\n\"torahime.shiga.jp\",\n\"toyosato.shiga.jp\",\n\"yasu.shiga.jp\",\n\"akagi.shimane.jp\",\n\"ama.shimane.jp\",\n\"gotsu.shimane.jp\",\n\"hamada.shimane.jp\",\n\"higashiizumo.shimane.jp\",\n\"hikawa.shimane.jp\",\n\"hikimi.shimane.jp\",\n\"izumo.shimane.jp\",\n\"kakinoki.shimane.jp\",\n\"masuda.shimane.jp\",\n\"matsue.shimane.jp\",\n\"misato.shimane.jp\",\n\"nishinoshima.shimane.jp\",\n\"ohda.shimane.jp\",\n\"okinoshima.shimane.jp\",\n\"okuizumo.shimane.jp\",\n\"shimane.shimane.jp\",\n\"tamayu.shimane.jp\",\n\"tsuwano.shimane.jp\",\n\"unnan.shimane.jp\",\n\"yakumo.shimane.jp\",\n\"yasugi.shimane.jp\",\n\"yatsuka.shimane.jp\",\n\"arai.shizuoka.jp\",\n\"atami.shizuoka.jp\",\n\"fuji.shizuoka.jp\",\n\"fujieda.shizuoka.jp\",\n\"fujikawa.shizuoka.jp\",\n\"fujinomiya.shizuoka.jp\",\n\"fukuroi.shizuoka.jp\",\n\"gotemba.shizuoka.jp\",\n\"haibara.shizuoka.jp\",\n\"hamamatsu.shizuoka.jp\",\n\"higashiizu.shizuoka.jp\",\n\"ito.shizuoka.jp\",\n\"iwata.shizuoka.jp\",\n\"izu.shizuoka.jp\",\n\"izunokuni.shizuoka.jp\",\n\"kakegawa.shizuoka.jp\",\n\"kannami.shizuoka.jp\",\n\"kawanehon.shizuoka.jp\",\n\"kawazu.shizuoka.jp\",\n\"kikugawa.shizuoka.jp\",\n\"kosai.shizuoka.jp\",\n\"makinohara.shizuoka.jp\",\n\"matsuzaki.shizuoka.jp\",\n\"minamiizu.shizuoka.jp\",\n\"mishima.shizuoka.jp\",\n\"morimachi.shizuoka.jp\",\n\"nishiizu.shizuoka.jp\",\n\"numazu.shizuoka.jp\",\n\"omaezaki.shizuoka.jp\",\n\"shimada.shizuoka.jp\",\n\"shimizu.shizuoka.jp\",\n\"shimoda.shizuoka.jp\",\n\"shizuoka.shizuoka.jp\",\n\"susono.shizuoka.jp\",\n\"yaizu.shizuoka.jp\",\n\"yoshida.shizuoka.jp\",\n\"ashikaga.tochigi.jp\",\n\"bato.tochigi.jp\",\n\"haga.tochigi.jp\",\n\"ichikai.tochigi.jp\",\n\"iwafune.tochigi.jp\",\n\"kaminokawa.tochigi.jp\",\n\"kanuma.tochigi.jp\",\n\"karasuyama.tochigi.jp\",\n\"kuroiso.tochigi.jp\",\n\"mashiko.tochigi.jp\",\n\"mibu.tochigi.jp\",\n\"moka.tochigi.jp\",\n\"motegi.tochigi.jp\",\n\"nasu.tochigi.jp\",\n\"nasushiobara.tochigi.jp\",\n\"nikko.tochigi.jp\",\n\"nishikata.tochigi.jp\",\n\"nogi.tochigi.jp\",\n\"ohira.tochigi.jp\",\n\"ohtawara.tochigi.jp\",\n\"oyama.tochigi.jp\",\n\"sakura.tochigi.jp\",\n\"sano.tochigi.jp\",\n\"shimotsuke.tochigi.jp\",\n\"shioya.tochigi.jp\",\n\"takanezawa.tochigi.jp\",\n\"tochigi.tochigi.jp\",\n\"tsuga.tochigi.jp\",\n\"ujiie.tochigi.jp\",\n\"utsunomiya.tochigi.jp\",\n\"yaita.tochigi.jp\",\n\"aizumi.tokushima.jp\",\n\"anan.tokushima.jp\",\n\"ichiba.tokushima.jp\",\n\"itano.tokushima.jp\",\n\"kainan.tokushima.jp\",\n\"komatsushima.tokushima.jp\",\n\"matsushige.tokushima.jp\",\n\"mima.tokushima.jp\",\n\"minami.tokushima.jp\",\n\"miyoshi.tokushima.jp\",\n\"mugi.tokushima.jp\",\n\"nakagawa.tokushima.jp\",\n\"naruto.tokushima.jp\",\n\"sanagochi.tokushima.jp\",\n\"shishikui.tokushima.jp\",\n\"tokushima.tokushima.jp\",\n\"wajiki.tokushima.jp\",\n\"adachi.tokyo.jp\",\n\"akiruno.tokyo.jp\",\n\"akishima.tokyo.jp\",\n\"aogashima.tokyo.jp\",\n\"arakawa.tokyo.jp\",\n\"bunkyo.tokyo.jp\",\n\"chiyoda.tokyo.jp\",\n\"chofu.tokyo.jp\",\n\"chuo.tokyo.jp\",\n\"edogawa.tokyo.jp\",\n\"fuchu.tokyo.jp\",\n\"fussa.tokyo.jp\",\n\"hachijo.tokyo.jp\",\n\"hachioji.tokyo.jp\",\n\"hamura.tokyo.jp\",\n\"higashikurume.tokyo.jp\",\n\"higashimurayama.tokyo.jp\",\n\"higashiyamato.tokyo.jp\",\n\"hino.tokyo.jp\",\n\"hinode.tokyo.jp\",\n\"hinohara.tokyo.jp\",\n\"inagi.tokyo.jp\",\n\"itabashi.tokyo.jp\",\n\"katsushika.tokyo.jp\",\n\"kita.tokyo.jp\",\n\"kiyose.tokyo.jp\",\n\"kodaira.tokyo.jp\",\n\"koganei.tokyo.jp\",\n\"kokubunji.tokyo.jp\",\n\"komae.tokyo.jp\",\n\"koto.tokyo.jp\",\n\"kouzushima.tokyo.jp\",\n\"kunitachi.tokyo.jp\",\n\"machida.tokyo.jp\",\n\"meguro.tokyo.jp\",\n\"minato.tokyo.jp\",\n\"mitaka.tokyo.jp\",\n\"mizuho.tokyo.jp\",\n\"musashimurayama.tokyo.jp\",\n\"musashino.tokyo.jp\",\n\"nakano.tokyo.jp\",\n\"nerima.tokyo.jp\",\n\"ogasawara.tokyo.jp\",\n\"okutama.tokyo.jp\",\n\"ome.tokyo.jp\",\n\"oshima.tokyo.jp\",\n\"ota.tokyo.jp\",\n\"setagaya.tokyo.jp\",\n\"shibuya.tokyo.jp\",\n\"shinagawa.tokyo.jp\",\n\"shinjuku.tokyo.jp\",\n\"suginami.tokyo.jp\",\n\"sumida.tokyo.jp\",\n\"tachikawa.tokyo.jp\",\n\"taito.tokyo.jp\",\n\"tama.tokyo.jp\",\n\"toshima.tokyo.jp\",\n\"chizu.tottori.jp\",\n\"hino.tottori.jp\",\n\"kawahara.tottori.jp\",\n\"koge.tottori.jp\",\n\"kotoura.tottori.jp\",\n\"misasa.tottori.jp\",\n\"nanbu.tottori.jp\",\n\"nichinan.tottori.jp\",\n\"sakaiminato.tottori.jp\",\n\"tottori.tottori.jp\",\n\"wakasa.tottori.jp\",\n\"yazu.tottori.jp\",\n\"yonago.tottori.jp\",\n\"asahi.toyama.jp\",\n\"fuchu.toyama.jp\",\n\"fukumitsu.toyama.jp\",\n\"funahashi.toyama.jp\",\n\"himi.toyama.jp\",\n\"imizu.toyama.jp\",\n\"inami.toyama.jp\",\n\"johana.toyama.jp\",\n\"kamiichi.toyama.jp\",\n\"kurobe.toyama.jp\",\n\"nakaniikawa.toyama.jp\",\n\"namerikawa.toyama.jp\",\n\"nanto.toyama.jp\",\n\"nyuzen.toyama.jp\",\n\"oyabe.toyama.jp\",\n\"taira.toyama.jp\",\n\"takaoka.toyama.jp\",\n\"tateyama.toyama.jp\",\n\"toga.toyama.jp\",\n\"tonami.toyama.jp\",\n\"toyama.toyama.jp\",\n\"unazuki.toyama.jp\",\n\"uozu.toyama.jp\",\n\"yamada.toyama.jp\",\n\"arida.wakayama.jp\",\n\"aridagawa.wakayama.jp\",\n\"gobo.wakayama.jp\",\n\"hashimoto.wakayama.jp\",\n\"hidaka.wakayama.jp\",\n\"hirogawa.wakayama.jp\",\n\"inami.wakayama.jp\",\n\"iwade.wakayama.jp\",\n\"kainan.wakayama.jp\",\n\"kamitonda.wakayama.jp\",\n\"katsuragi.wakayama.jp\",\n\"kimino.wakayama.jp\",\n\"kinokawa.wakayama.jp\",\n\"kitayama.wakayama.jp\",\n\"koya.wakayama.jp\",\n\"koza.wakayama.jp\",\n\"kozagawa.wakayama.jp\",\n\"kudoyama.wakayama.jp\",\n\"kushimoto.wakayama.jp\",\n\"mihama.wakayama.jp\",\n\"misato.wakayama.jp\",\n\"nachikatsuura.wakayama.jp\",\n\"shingu.wakayama.jp\",\n\"shirahama.wakayama.jp\",\n\"taiji.wakayama.jp\",\n\"tanabe.wakayama.jp\",\n\"wakayama.wakayama.jp\",\n\"yuasa.wakayama.jp\",\n\"yura.wakayama.jp\",\n\"asahi.yamagata.jp\",\n\"funagata.yamagata.jp\",\n\"higashine.yamagata.jp\",\n\"iide.yamagata.jp\",\n\"kahoku.yamagata.jp\",\n\"kaminoyama.yamagata.jp\",\n\"kaneyama.yamagata.jp\",\n\"kawanishi.yamagata.jp\",\n\"mamurogawa.yamagata.jp\",\n\"mikawa.yamagata.jp\",\n\"murayama.yamagata.jp\",\n\"nagai.yamagata.jp\",\n\"nakayama.yamagata.jp\",\n\"nanyo.yamagata.jp\",\n\"nishikawa.yamagata.jp\",\n\"obanazawa.yamagata.jp\",\n\"oe.yamagata.jp\",\n\"oguni.yamagata.jp\",\n\"ohkura.yamagata.jp\",\n\"oishida.yamagata.jp\",\n\"sagae.yamagata.jp\",\n\"sakata.yamagata.jp\",\n\"sakegawa.yamagata.jp\",\n\"shinjo.yamagata.jp\",\n\"shirataka.yamagata.jp\",\n\"shonai.yamagata.jp\",\n\"takahata.yamagata.jp\",\n\"tendo.yamagata.jp\",\n\"tozawa.yamagata.jp\",\n\"tsuruoka.yamagata.jp\",\n\"yamagata.yamagata.jp\",\n\"yamanobe.yamagata.jp\",\n\"yonezawa.yamagata.jp\",\n\"yuza.yamagata.jp\",\n\"abu.yamaguchi.jp\",\n\"hagi.yamaguchi.jp\",\n\"hikari.yamaguchi.jp\",\n\"hofu.yamaguchi.jp\",\n\"iwakuni.yamaguchi.jp\",\n\"kudamatsu.yamaguchi.jp\",\n\"mitou.yamaguchi.jp\",\n\"nagato.yamaguchi.jp\",\n\"oshima.yamaguchi.jp\",\n\"shimonoseki.yamaguchi.jp\",\n\"shunan.yamaguchi.jp\",\n\"tabuse.yamaguchi.jp\",\n\"tokuyama.yamaguchi.jp\",\n\"toyota.yamaguchi.jp\",\n\"ube.yamaguchi.jp\",\n\"yuu.yamaguchi.jp\",\n\"chuo.yamanashi.jp\",\n\"doshi.yamanashi.jp\",\n\"fuefuki.yamanashi.jp\",\n\"fujikawa.yamanashi.jp\",\n\"fujikawaguchiko.yamanashi.jp\",\n\"fujiyoshida.yamanashi.jp\",\n\"hayakawa.yamanashi.jp\",\n\"hokuto.yamanashi.jp\",\n\"ichikawamisato.yamanashi.jp\",\n\"kai.yamanashi.jp\",\n\"kofu.yamanashi.jp\",\n\"koshu.yamanashi.jp\",\n\"kosuge.yamanashi.jp\",\n\"minami-alps.yamanashi.jp\",\n\"minobu.yamanashi.jp\",\n\"nakamichi.yamanashi.jp\",\n\"nanbu.yamanashi.jp\",\n\"narusawa.yamanashi.jp\",\n\"nirasaki.yamanashi.jp\",\n\"nishikatsura.yamanashi.jp\",\n\"oshino.yamanashi.jp\",\n\"otsuki.yamanashi.jp\",\n\"showa.yamanashi.jp\",\n\"tabayama.yamanashi.jp\",\n\"tsuru.yamanashi.jp\",\n\"uenohara.yamanashi.jp\",\n\"yamanakako.yamanashi.jp\",\n\"yamanashi.yamanashi.jp\",\n\"ke\",\n\"ac.ke\",\n\"co.ke\",\n\"go.ke\",\n\"info.ke\",\n\"me.ke\",\n\"mobi.ke\",\n\"ne.ke\",\n\"or.ke\",\n\"sc.ke\",\n\"kg\",\n\"org.kg\",\n\"net.kg\",\n\"com.kg\",\n\"edu.kg\",\n\"gov.kg\",\n\"mil.kg\",\n\"*.kh\",\n\"ki\",\n\"edu.ki\",\n\"biz.ki\",\n\"net.ki\",\n\"org.ki\",\n\"gov.ki\",\n\"info.ki\",\n\"com.ki\",\n\"km\",\n\"org.km\",\n\"nom.km\",\n\"gov.km\",\n\"prd.km\",\n\"tm.km\",\n\"edu.km\",\n\"mil.km\",\n\"ass.km\",\n\"com.km\",\n\"coop.km\",\n\"asso.km\",\n\"presse.km\",\n\"medecin.km\",\n\"notaires.km\",\n\"pharmaciens.km\",\n\"veterinaire.km\",\n\"gouv.km\",\n\"kn\",\n\"net.kn\",\n\"org.kn\",\n\"edu.kn\",\n\"gov.kn\",\n\"kp\",\n\"com.kp\",\n\"edu.kp\",\n\"gov.kp\",\n\"org.kp\",\n\"rep.kp\",\n\"tra.kp\",\n\"kr\",\n\"ac.kr\",\n\"co.kr\",\n\"es.kr\",\n\"go.kr\",\n\"hs.kr\",\n\"kg.kr\",\n\"mil.kr\",\n\"ms.kr\",\n\"ne.kr\",\n\"or.kr\",\n\"pe.kr\",\n\"re.kr\",\n\"sc.kr\",\n\"busan.kr\",\n\"chungbuk.kr\",\n\"chungnam.kr\",\n\"daegu.kr\",\n\"daejeon.kr\",\n\"gangwon.kr\",\n\"gwangju.kr\",\n\"gyeongbuk.kr\",\n\"gyeonggi.kr\",\n\"gyeongnam.kr\",\n\"incheon.kr\",\n\"jeju.kr\",\n\"jeonbuk.kr\",\n\"jeonnam.kr\",\n\"seoul.kr\",\n\"ulsan.kr\",\n\"kw\",\n\"com.kw\",\n\"edu.kw\",\n\"emb.kw\",\n\"gov.kw\",\n\"ind.kw\",\n\"net.kw\",\n\"org.kw\",\n\"ky\",\n\"edu.ky\",\n\"gov.ky\",\n\"com.ky\",\n\"org.ky\",\n\"net.ky\",\n\"kz\",\n\"org.kz\",\n\"edu.kz\",\n\"net.kz\",\n\"gov.kz\",\n\"mil.kz\",\n\"com.kz\",\n\"la\",\n\"int.la\",\n\"net.la\",\n\"info.la\",\n\"edu.la\",\n\"gov.la\",\n\"per.la\",\n\"com.la\",\n\"org.la\",\n\"lb\",\n\"com.lb\",\n\"edu.lb\",\n\"gov.lb\",\n\"net.lb\",\n\"org.lb\",\n\"lc\",\n\"com.lc\",\n\"net.lc\",\n\"co.lc\",\n\"org.lc\",\n\"edu.lc\",\n\"gov.lc\",\n\"li\",\n\"lk\",\n\"gov.lk\",\n\"sch.lk\",\n\"net.lk\",\n\"int.lk\",\n\"com.lk\",\n\"org.lk\",\n\"edu.lk\",\n\"ngo.lk\",\n\"soc.lk\",\n\"web.lk\",\n\"ltd.lk\",\n\"assn.lk\",\n\"grp.lk\",\n\"hotel.lk\",\n\"ac.lk\",\n\"lr\",\n\"com.lr\",\n\"edu.lr\",\n\"gov.lr\",\n\"org.lr\",\n\"net.lr\",\n\"ls\",\n\"ac.ls\",\n\"biz.ls\",\n\"co.ls\",\n\"edu.ls\",\n\"gov.ls\",\n\"info.ls\",\n\"net.ls\",\n\"org.ls\",\n\"sc.ls\",\n\"lt\",\n\"gov.lt\",\n\"lu\",\n\"lv\",\n\"com.lv\",\n\"edu.lv\",\n\"gov.lv\",\n\"org.lv\",\n\"mil.lv\",\n\"id.lv\",\n\"net.lv\",\n\"asn.lv\",\n\"conf.lv\",\n\"ly\",\n\"com.ly\",\n\"net.ly\",\n\"gov.ly\",\n\"plc.ly\",\n\"edu.ly\",\n\"sch.ly\",\n\"med.ly\",\n\"org.ly\",\n\"id.ly\",\n\"ma\",\n\"co.ma\",\n\"net.ma\",\n\"gov.ma\",\n\"org.ma\",\n\"ac.ma\",\n\"press.ma\",\n\"mc\",\n\"tm.mc\",\n\"asso.mc\",\n\"md\",\n\"me\",\n\"co.me\",\n\"net.me\",\n\"org.me\",\n\"edu.me\",\n\"ac.me\",\n\"gov.me\",\n\"its.me\",\n\"priv.me\",\n\"mg\",\n\"org.mg\",\n\"nom.mg\",\n\"gov.mg\",\n\"prd.mg\",\n\"tm.mg\",\n\"edu.mg\",\n\"mil.mg\",\n\"com.mg\",\n\"co.mg\",\n\"mh\",\n\"mil\",\n\"mk\",\n\"com.mk\",\n\"org.mk\",\n\"net.mk\",\n\"edu.mk\",\n\"gov.mk\",\n\"inf.mk\",\n\"name.mk\",\n\"ml\",\n\"com.ml\",\n\"edu.ml\",\n\"gouv.ml\",\n\"gov.ml\",\n\"net.ml\",\n\"org.ml\",\n\"presse.ml\",\n\"*.mm\",\n\"mn\",\n\"gov.mn\",\n\"edu.mn\",\n\"org.mn\",\n\"mo\",\n\"com.mo\",\n\"net.mo\",\n\"org.mo\",\n\"edu.mo\",\n\"gov.mo\",\n\"mobi\",\n\"mp\",\n\"mq\",\n\"mr\",\n\"gov.mr\",\n\"ms\",\n\"com.ms\",\n\"edu.ms\",\n\"gov.ms\",\n\"net.ms\",\n\"org.ms\",\n\"mt\",\n\"com.mt\",\n\"edu.mt\",\n\"net.mt\",\n\"org.mt\",\n\"mu\",\n\"com.mu\",\n\"net.mu\",\n\"org.mu\",\n\"gov.mu\",\n\"ac.mu\",\n\"co.mu\",\n\"or.mu\",\n\"museum\",\n\"academy.museum\",\n\"agriculture.museum\",\n\"air.museum\",\n\"airguard.museum\",\n\"alabama.museum\",\n\"alaska.museum\",\n\"amber.museum\",\n\"ambulance.museum\",\n\"american.museum\",\n\"americana.museum\",\n\"americanantiques.museum\",\n\"americanart.museum\",\n\"amsterdam.museum\",\n\"and.museum\",\n\"annefrank.museum\",\n\"anthro.museum\",\n\"anthropology.museum\",\n\"antiques.museum\",\n\"aquarium.museum\",\n\"arboretum.museum\",\n\"archaeological.museum\",\n\"archaeology.museum\",\n\"architecture.museum\",\n\"art.museum\",\n\"artanddesign.museum\",\n\"artcenter.museum\",\n\"artdeco.museum\",\n\"arteducation.museum\",\n\"artgallery.museum\",\n\"arts.museum\",\n\"artsandcrafts.museum\",\n\"asmatart.museum\",\n\"assassination.museum\",\n\"assisi.museum\",\n\"association.museum\",\n\"astronomy.museum\",\n\"atlanta.museum\",\n\"austin.museum\",\n\"australia.museum\",\n\"automotive.museum\",\n\"aviation.museum\",\n\"axis.museum\",\n\"badajoz.museum\",\n\"baghdad.museum\",\n\"bahn.museum\",\n\"bale.museum\",\n\"baltimore.museum\",\n\"barcelona.museum\",\n\"baseball.museum\",\n\"basel.museum\",\n\"baths.museum\",\n\"bauern.museum\",\n\"beauxarts.museum\",\n\"beeldengeluid.museum\",\n\"bellevue.museum\",\n\"bergbau.museum\",\n\"berkeley.museum\",\n\"berlin.museum\",\n\"bern.museum\",\n\"bible.museum\",\n\"bilbao.museum\",\n\"bill.museum\",\n\"birdart.museum\",\n\"birthplace.museum\",\n\"bonn.museum\",\n\"boston.museum\",\n\"botanical.museum\",\n\"botanicalgarden.museum\",\n\"botanicgarden.museum\",\n\"botany.museum\",\n\"brandywinevalley.museum\",\n\"brasil.museum\",\n\"bristol.museum\",\n\"british.museum\",\n\"britishcolumbia.museum\",\n\"broadcast.museum\",\n\"brunel.museum\",\n\"brussel.museum\",\n\"brussels.museum\",\n\"bruxelles.museum\",\n\"building.museum\",\n\"burghof.museum\",\n\"bus.museum\",\n\"bushey.museum\",\n\"cadaques.museum\",\n\"california.museum\",\n\"cambridge.museum\",\n\"can.museum\",\n\"canada.museum\",\n\"capebreton.museum\",\n\"carrier.museum\",\n\"cartoonart.museum\",\n\"casadelamoneda.museum\",\n\"castle.museum\",\n\"castres.museum\",\n\"celtic.museum\",\n\"center.museum\",\n\"chattanooga.museum\",\n\"cheltenham.museum\",\n\"chesapeakebay.museum\",\n\"chicago.museum\",\n\"children.museum\",\n\"childrens.museum\",\n\"childrensgarden.museum\",\n\"chiropractic.museum\",\n\"chocolate.museum\",\n\"christiansburg.museum\",\n\"cincinnati.museum\",\n\"cinema.museum\",\n\"circus.museum\",\n\"civilisation.museum\",\n\"civilization.museum\",\n\"civilwar.museum\",\n\"clinton.museum\",\n\"clock.museum\",\n\"coal.museum\",\n\"coastaldefence.museum\",\n\"cody.museum\",\n\"coldwar.museum\",\n\"collection.museum\",\n\"colonialwilliamsburg.museum\",\n\"coloradoplateau.museum\",\n\"columbia.museum\",\n\"columbus.museum\",\n\"communication.museum\",\n\"communications.museum\",\n\"community.museum\",\n\"computer.museum\",\n\"computerhistory.museum\",\n\"comunicações.museum\",\n\"contemporary.museum\",\n\"contemporaryart.museum\",\n\"convent.museum\",\n\"copenhagen.museum\",\n\"corporation.museum\",\n\"correios-e-telecomunicações.museum\",\n\"corvette.museum\",\n\"costume.museum\",\n\"countryestate.museum\",\n\"county.museum\",\n\"crafts.museum\",\n\"cranbrook.museum\",\n\"creation.museum\",\n\"cultural.museum\",\n\"culturalcenter.museum\",\n\"culture.museum\",\n\"cyber.museum\",\n\"cymru.museum\",\n\"dali.museum\",\n\"dallas.museum\",\n\"database.museum\",\n\"ddr.museum\",\n\"decorativearts.museum\",\n\"delaware.museum\",\n\"delmenhorst.museum\",\n\"denmark.museum\",\n\"depot.museum\",\n\"design.museum\",\n\"detroit.museum\",\n\"dinosaur.museum\",\n\"discovery.museum\",\n\"dolls.museum\",\n\"donostia.museum\",\n\"durham.museum\",\n\"eastafrica.museum\",\n\"eastcoast.museum\",\n\"education.museum\",\n\"educational.museum\",\n\"egyptian.museum\",\n\"eisenbahn.museum\",\n\"elburg.museum\",\n\"elvendrell.museum\",\n\"embroidery.museum\",\n\"encyclopedic.museum\",\n\"england.museum\",\n\"entomology.museum\",\n\"environment.museum\",\n\"environmentalconservation.museum\",\n\"epilepsy.museum\",\n\"essex.museum\",\n\"estate.museum\",\n\"ethnology.museum\",\n\"exeter.museum\",\n\"exhibition.museum\",\n\"family.museum\",\n\"farm.museum\",\n\"farmequipment.museum\",\n\"farmers.museum\",\n\"farmstead.museum\",\n\"field.museum\",\n\"figueres.museum\",\n\"filatelia.museum\",\n\"film.museum\",\n\"fineart.museum\",\n\"finearts.museum\",\n\"finland.museum\",\n\"flanders.museum\",\n\"florida.museum\",\n\"force.museum\",\n\"fortmissoula.museum\",\n\"fortworth.museum\",\n\"foundation.museum\",\n\"francaise.museum\",\n\"frankfurt.museum\",\n\"franziskaner.museum\",\n\"freemasonry.museum\",\n\"freiburg.museum\",\n\"fribourg.museum\",\n\"frog.museum\",\n\"fundacio.museum\",\n\"furniture.museum\",\n\"gallery.museum\",\n\"garden.museum\",\n\"gateway.museum\",\n\"geelvinck.museum\",\n\"gemological.museum\",\n\"geology.museum\",\n\"georgia.museum\",\n\"giessen.museum\",\n\"glas.museum\",\n\"glass.museum\",\n\"gorge.museum\",\n\"grandrapids.museum\",\n\"graz.museum\",\n\"guernsey.museum\",\n\"halloffame.museum\",\n\"hamburg.museum\",\n\"handson.museum\",\n\"harvestcelebration.museum\",\n\"hawaii.museum\",\n\"health.museum\",\n\"heimatunduhren.museum\",\n\"hellas.museum\",\n\"helsinki.museum\",\n\"hembygdsforbund.museum\",\n\"heritage.museum\",\n\"histoire.museum\",\n\"historical.museum\",\n\"historicalsociety.museum\",\n\"historichouses.museum\",\n\"historisch.museum\",\n\"historisches.museum\",\n\"history.museum\",\n\"historyofscience.museum\",\n\"horology.museum\",\n\"house.museum\",\n\"humanities.museum\",\n\"illustration.museum\",\n\"imageandsound.museum\",\n\"indian.museum\",\n\"indiana.museum\",\n\"indianapolis.museum\",\n\"indianmarket.museum\",\n\"intelligence.museum\",\n\"interactive.museum\",\n\"iraq.museum\",\n\"iron.museum\",\n\"isleofman.museum\",\n\"jamison.museum\",\n\"jefferson.museum\",\n\"jerusalem.museum\",\n\"jewelry.museum\",\n\"jewish.museum\",\n\"jewishart.museum\",\n\"jfk.museum\",\n\"journalism.museum\",\n\"judaica.museum\",\n\"judygarland.museum\",\n\"juedisches.museum\",\n\"juif.museum\",\n\"karate.museum\",\n\"karikatur.museum\",\n\"kids.museum\",\n\"koebenhavn.museum\",\n\"koeln.museum\",\n\"kunst.museum\",\n\"kunstsammlung.museum\",\n\"kunstunddesign.museum\",\n\"labor.museum\",\n\"labour.museum\",\n\"lajolla.museum\",\n\"lancashire.museum\",\n\"landes.museum\",\n\"lans.museum\",\n\"läns.museum\",\n\"larsson.museum\",\n\"lewismiller.museum\",\n\"lincoln.museum\",\n\"linz.museum\",\n\"living.museum\",\n\"livinghistory.museum\",\n\"localhistory.museum\",\n\"london.museum\",\n\"losangeles.museum\",\n\"louvre.museum\",\n\"loyalist.museum\",\n\"lucerne.museum\",\n\"luxembourg.museum\",\n\"luzern.museum\",\n\"mad.museum\",\n\"madrid.museum\",\n\"mallorca.museum\",\n\"manchester.museum\",\n\"mansion.museum\",\n\"mansions.museum\",\n\"manx.museum\",\n\"marburg.museum\",\n\"maritime.museum\",\n\"maritimo.museum\",\n\"maryland.museum\",\n\"marylhurst.museum\",\n\"media.museum\",\n\"medical.museum\",\n\"medizinhistorisches.museum\",\n\"meeres.museum\",\n\"memorial.museum\",\n\"mesaverde.museum\",\n\"michigan.museum\",\n\"midatlantic.museum\",\n\"military.museum\",\n\"mill.museum\",\n\"miners.museum\",\n\"mining.museum\",\n\"minnesota.museum\",\n\"missile.museum\",\n\"missoula.museum\",\n\"modern.museum\",\n\"moma.museum\",\n\"money.museum\",\n\"monmouth.museum\",\n\"monticello.museum\",\n\"montreal.museum\",\n\"moscow.museum\",\n\"motorcycle.museum\",\n\"muenchen.museum\",\n\"muenster.museum\",\n\"mulhouse.museum\",\n\"muncie.museum\",\n\"museet.museum\",\n\"museumcenter.museum\",\n\"museumvereniging.museum\",\n\"music.museum\",\n\"national.museum\",\n\"nationalfirearms.museum\",\n\"nationalheritage.museum\",\n\"nativeamerican.museum\",\n\"naturalhistory.museum\",\n\"naturalhistorymuseum.museum\",\n\"naturalsciences.museum\",\n\"nature.museum\",\n\"naturhistorisches.museum\",\n\"natuurwetenschappen.museum\",\n\"naumburg.museum\",\n\"naval.museum\",\n\"nebraska.museum\",\n\"neues.museum\",\n\"newhampshire.museum\",\n\"newjersey.museum\",\n\"newmexico.museum\",\n\"newport.museum\",\n\"newspaper.museum\",\n\"newyork.museum\",\n\"niepce.museum\",\n\"norfolk.museum\",\n\"north.museum\",\n\"nrw.museum\",\n\"nyc.museum\",\n\"nyny.museum\",\n\"oceanographic.museum\",\n\"oceanographique.museum\",\n\"omaha.museum\",\n\"online.museum\",\n\"ontario.museum\",\n\"openair.museum\",\n\"oregon.museum\",\n\"oregontrail.museum\",\n\"otago.museum\",\n\"oxford.museum\",\n\"pacific.museum\",\n\"paderborn.museum\",\n\"palace.museum\",\n\"paleo.museum\",\n\"palmsprings.museum\",\n\"panama.museum\",\n\"paris.museum\",\n\"pasadena.museum\",\n\"pharmacy.museum\",\n\"philadelphia.museum\",\n\"philadelphiaarea.museum\",\n\"philately.museum\",\n\"phoenix.museum\",\n\"photography.museum\",\n\"pilots.museum\",\n\"pittsburgh.museum\",\n\"planetarium.museum\",\n\"plantation.museum\",\n\"plants.museum\",\n\"plaza.museum\",\n\"portal.museum\",\n\"portland.museum\",\n\"portlligat.museum\",\n\"posts-and-telecommunications.museum\",\n\"preservation.museum\",\n\"presidio.museum\",\n\"press.museum\",\n\"project.museum\",\n\"public.museum\",\n\"pubol.museum\",\n\"quebec.museum\",\n\"railroad.museum\",\n\"railway.museum\",\n\"research.museum\",\n\"resistance.museum\",\n\"riodejaneiro.museum\",\n\"rochester.museum\",\n\"rockart.museum\",\n\"roma.museum\",\n\"russia.museum\",\n\"saintlouis.museum\",\n\"salem.museum\",\n\"salvadordali.museum\",\n\"salzburg.museum\",\n\"sandiego.museum\",\n\"sanfrancisco.museum\",\n\"santabarbara.museum\",\n\"santacruz.museum\",\n\"santafe.museum\",\n\"saskatchewan.museum\",\n\"satx.museum\",\n\"savannahga.museum\",\n\"schlesisches.museum\",\n\"schoenbrunn.museum\",\n\"schokoladen.museum\",\n\"school.museum\",\n\"schweiz.museum\",\n\"science.museum\",\n\"scienceandhistory.museum\",\n\"scienceandindustry.museum\",\n\"sciencecenter.museum\",\n\"sciencecenters.museum\",\n\"science-fiction.museum\",\n\"sciencehistory.museum\",\n\"sciences.museum\",\n\"sciencesnaturelles.museum\",\n\"scotland.museum\",\n\"seaport.museum\",\n\"settlement.museum\",\n\"settlers.museum\",\n\"shell.museum\",\n\"sherbrooke.museum\",\n\"sibenik.museum\",\n\"silk.museum\",\n\"ski.museum\",\n\"skole.museum\",\n\"society.museum\",\n\"sologne.museum\",\n\"soundandvision.museum\",\n\"southcarolina.museum\",\n\"southwest.museum\",\n\"space.museum\",\n\"spy.museum\",\n\"square.museum\",\n\"stadt.museum\",\n\"stalbans.museum\",\n\"starnberg.museum\",\n\"state.museum\",\n\"stateofdelaware.museum\",\n\"station.museum\",\n\"steam.museum\",\n\"steiermark.museum\",\n\"stjohn.museum\",\n\"stockholm.museum\",\n\"stpetersburg.museum\",\n\"stuttgart.museum\",\n\"suisse.museum\",\n\"surgeonshall.museum\",\n\"surrey.museum\",\n\"svizzera.museum\",\n\"sweden.museum\",\n\"sydney.museum\",\n\"tank.museum\",\n\"tcm.museum\",\n\"technology.museum\",\n\"telekommunikation.museum\",\n\"television.museum\",\n\"texas.museum\",\n\"textile.museum\",\n\"theater.museum\",\n\"time.museum\",\n\"timekeeping.museum\",\n\"topology.museum\",\n\"torino.museum\",\n\"touch.museum\",\n\"town.museum\",\n\"transport.museum\",\n\"tree.museum\",\n\"trolley.museum\",\n\"trust.museum\",\n\"trustee.museum\",\n\"uhren.museum\",\n\"ulm.museum\",\n\"undersea.museum\",\n\"university.museum\",\n\"usa.museum\",\n\"usantiques.museum\",\n\"usarts.museum\",\n\"uscountryestate.museum\",\n\"usculture.museum\",\n\"usdecorativearts.museum\",\n\"usgarden.museum\",\n\"ushistory.museum\",\n\"ushuaia.museum\",\n\"uslivinghistory.museum\",\n\"utah.museum\",\n\"uvic.museum\",\n\"valley.museum\",\n\"vantaa.museum\",\n\"versailles.museum\",\n\"viking.museum\",\n\"village.museum\",\n\"virginia.museum\",\n\"virtual.museum\",\n\"virtuel.museum\",\n\"vlaanderen.museum\",\n\"volkenkunde.museum\",\n\"wales.museum\",\n\"wallonie.museum\",\n\"war.museum\",\n\"washingtondc.museum\",\n\"watchandclock.museum\",\n\"watch-and-clock.museum\",\n\"western.museum\",\n\"westfalen.museum\",\n\"whaling.museum\",\n\"wildlife.museum\",\n\"williamsburg.museum\",\n\"windmill.museum\",\n\"workshop.museum\",\n\"york.museum\",\n\"yorkshire.museum\",\n\"yosemite.museum\",\n\"youth.museum\",\n\"zoological.museum\",\n\"zoology.museum\",\n\"ירושלים.museum\",\n\"иком.museum\",\n\"mv\",\n\"aero.mv\",\n\"biz.mv\",\n\"com.mv\",\n\"coop.mv\",\n\"edu.mv\",\n\"gov.mv\",\n\"info.mv\",\n\"int.mv\",\n\"mil.mv\",\n\"museum.mv\",\n\"name.mv\",\n\"net.mv\",\n\"org.mv\",\n\"pro.mv\",\n\"mw\",\n\"ac.mw\",\n\"biz.mw\",\n\"co.mw\",\n\"com.mw\",\n\"coop.mw\",\n\"edu.mw\",\n\"gov.mw\",\n\"int.mw\",\n\"museum.mw\",\n\"net.mw\",\n\"org.mw\",\n\"mx\",\n\"com.mx\",\n\"org.mx\",\n\"gob.mx\",\n\"edu.mx\",\n\"net.mx\",\n\"my\",\n\"com.my\",\n\"net.my\",\n\"org.my\",\n\"gov.my\",\n\"edu.my\",\n\"mil.my\",\n\"name.my\",\n\"mz\",\n\"ac.mz\",\n\"adv.mz\",\n\"co.mz\",\n\"edu.mz\",\n\"gov.mz\",\n\"mil.mz\",\n\"net.mz\",\n\"org.mz\",\n\"na\",\n\"info.na\",\n\"pro.na\",\n\"name.na\",\n\"school.na\",\n\"or.na\",\n\"dr.na\",\n\"us.na\",\n\"mx.na\",\n\"ca.na\",\n\"in.na\",\n\"cc.na\",\n\"tv.na\",\n\"ws.na\",\n\"mobi.na\",\n\"co.na\",\n\"com.na\",\n\"org.na\",\n\"name\",\n\"nc\",\n\"asso.nc\",\n\"nom.nc\",\n\"ne\",\n\"net\",\n\"nf\",\n\"com.nf\",\n\"net.nf\",\n\"per.nf\",\n\"rec.nf\",\n\"web.nf\",\n\"arts.nf\",\n\"firm.nf\",\n\"info.nf\",\n\"other.nf\",\n\"store.nf\",\n\"ng\",\n\"com.ng\",\n\"edu.ng\",\n\"gov.ng\",\n\"i.ng\",\n\"mil.ng\",\n\"mobi.ng\",\n\"name.ng\",\n\"net.ng\",\n\"org.ng\",\n\"sch.ng\",\n\"ni\",\n\"ac.ni\",\n\"biz.ni\",\n\"co.ni\",\n\"com.ni\",\n\"edu.ni\",\n\"gob.ni\",\n\"in.ni\",\n\"info.ni\",\n\"int.ni\",\n\"mil.ni\",\n\"net.ni\",\n\"nom.ni\",\n\"org.ni\",\n\"web.ni\",\n\"nl\",\n\"no\",\n\"fhs.no\",\n\"vgs.no\",\n\"fylkesbibl.no\",\n\"folkebibl.no\",\n\"museum.no\",\n\"idrett.no\",\n\"priv.no\",\n\"mil.no\",\n\"stat.no\",\n\"dep.no\",\n\"kommune.no\",\n\"herad.no\",\n\"aa.no\",\n\"ah.no\",\n\"bu.no\",\n\"fm.no\",\n\"hl.no\",\n\"hm.no\",\n\"jan-mayen.no\",\n\"mr.no\",\n\"nl.no\",\n\"nt.no\",\n\"of.no\",\n\"ol.no\",\n\"oslo.no\",\n\"rl.no\",\n\"sf.no\",\n\"st.no\",\n\"svalbard.no\",\n\"tm.no\",\n\"tr.no\",\n\"va.no\",\n\"vf.no\",\n\"gs.aa.no\",\n\"gs.ah.no\",\n\"gs.bu.no\",\n\"gs.fm.no\",\n\"gs.hl.no\",\n\"gs.hm.no\",\n\"gs.jan-mayen.no\",\n\"gs.mr.no\",\n\"gs.nl.no\",\n\"gs.nt.no\",\n\"gs.of.no\",\n\"gs.ol.no\",\n\"gs.oslo.no\",\n\"gs.rl.no\",\n\"gs.sf.no\",\n\"gs.st.no\",\n\"gs.svalbard.no\",\n\"gs.tm.no\",\n\"gs.tr.no\",\n\"gs.va.no\",\n\"gs.vf.no\",\n\"akrehamn.no\",\n\"åkrehamn.no\",\n\"algard.no\",\n\"ålgård.no\",\n\"arna.no\",\n\"brumunddal.no\",\n\"bryne.no\",\n\"bronnoysund.no\",\n\"brønnøysund.no\",\n\"drobak.no\",\n\"drøbak.no\",\n\"egersund.no\",\n\"fetsund.no\",\n\"floro.no\",\n\"florø.no\",\n\"fredrikstad.no\",\n\"hokksund.no\",\n\"honefoss.no\",\n\"hønefoss.no\",\n\"jessheim.no\",\n\"jorpeland.no\",\n\"jørpeland.no\",\n\"kirkenes.no\",\n\"kopervik.no\",\n\"krokstadelva.no\",\n\"langevag.no\",\n\"langevåg.no\",\n\"leirvik.no\",\n\"mjondalen.no\",\n\"mjøndalen.no\",\n\"mo-i-rana.no\",\n\"mosjoen.no\",\n\"mosjøen.no\",\n\"nesoddtangen.no\",\n\"orkanger.no\",\n\"osoyro.no\",\n\"osøyro.no\",\n\"raholt.no\",\n\"råholt.no\",\n\"sandnessjoen.no\",\n\"sandnessjøen.no\",\n\"skedsmokorset.no\",\n\"slattum.no\",\n\"spjelkavik.no\",\n\"stathelle.no\",\n\"stavern.no\",\n\"stjordalshalsen.no\",\n\"stjørdalshalsen.no\",\n\"tananger.no\",\n\"tranby.no\",\n\"vossevangen.no\",\n\"afjord.no\",\n\"åfjord.no\",\n\"agdenes.no\",\n\"al.no\",\n\"ål.no\",\n\"alesund.no\",\n\"ålesund.no\",\n\"alstahaug.no\",\n\"alta.no\",\n\"áltá.no\",\n\"alaheadju.no\",\n\"álaheadju.no\",\n\"alvdal.no\",\n\"amli.no\",\n\"åmli.no\",\n\"amot.no\",\n\"åmot.no\",\n\"andebu.no\",\n\"andoy.no\",\n\"andøy.no\",\n\"andasuolo.no\",\n\"ardal.no\",\n\"årdal.no\",\n\"aremark.no\",\n\"arendal.no\",\n\"ås.no\",\n\"aseral.no\",\n\"åseral.no\",\n\"asker.no\",\n\"askim.no\",\n\"askvoll.no\",\n\"askoy.no\",\n\"askøy.no\",\n\"asnes.no\",\n\"åsnes.no\",\n\"audnedaln.no\",\n\"aukra.no\",\n\"aure.no\",\n\"aurland.no\",\n\"aurskog-holand.no\",\n\"aurskog-høland.no\",\n\"austevoll.no\",\n\"austrheim.no\",\n\"averoy.no\",\n\"averøy.no\",\n\"balestrand.no\",\n\"ballangen.no\",\n\"balat.no\",\n\"bálát.no\",\n\"balsfjord.no\",\n\"bahccavuotna.no\",\n\"báhccavuotna.no\",\n\"bamble.no\",\n\"bardu.no\",\n\"beardu.no\",\n\"beiarn.no\",\n\"bajddar.no\",\n\"bájddar.no\",\n\"baidar.no\",\n\"báidár.no\",\n\"berg.no\",\n\"bergen.no\",\n\"berlevag.no\",\n\"berlevåg.no\",\n\"bearalvahki.no\",\n\"bearalváhki.no\",\n\"bindal.no\",\n\"birkenes.no\",\n\"bjarkoy.no\",\n\"bjarkøy.no\",\n\"bjerkreim.no\",\n\"bjugn.no\",\n\"bodo.no\",\n\"bodø.no\",\n\"badaddja.no\",\n\"bådåddjå.no\",\n\"budejju.no\",\n\"bokn.no\",\n\"bremanger.no\",\n\"bronnoy.no\",\n\"brønnøy.no\",\n\"bygland.no\",\n\"bykle.no\",\n\"barum.no\",\n\"bærum.no\",\n\"bo.telemark.no\",\n\"bø.telemark.no\",\n\"bo.nordland.no\",\n\"bø.nordland.no\",\n\"bievat.no\",\n\"bievát.no\",\n\"bomlo.no\",\n\"bømlo.no\",\n\"batsfjord.no\",\n\"båtsfjord.no\",\n\"bahcavuotna.no\",\n\"báhcavuotna.no\",\n\"dovre.no\",\n\"drammen.no\",\n\"drangedal.no\",\n\"dyroy.no\",\n\"dyrøy.no\",\n\"donna.no\",\n\"dønna.no\",\n\"eid.no\",\n\"eidfjord.no\",\n\"eidsberg.no\",\n\"eidskog.no\",\n\"eidsvoll.no\",\n\"eigersund.no\",\n\"elverum.no\",\n\"enebakk.no\",\n\"engerdal.no\",\n\"etne.no\",\n\"etnedal.no\",\n\"evenes.no\",\n\"evenassi.no\",\n\"evenášši.no\",\n\"evje-og-hornnes.no\",\n\"farsund.no\",\n\"fauske.no\",\n\"fuossko.no\",\n\"fuoisku.no\",\n\"fedje.no\",\n\"fet.no\",\n\"finnoy.no\",\n\"finnøy.no\",\n\"fitjar.no\",\n\"fjaler.no\",\n\"fjell.no\",\n\"flakstad.no\",\n\"flatanger.no\",\n\"flekkefjord.no\",\n\"flesberg.no\",\n\"flora.no\",\n\"fla.no\",\n\"flå.no\",\n\"folldal.no\",\n\"forsand.no\",\n\"fosnes.no\",\n\"frei.no\",\n\"frogn.no\",\n\"froland.no\",\n\"frosta.no\",\n\"frana.no\",\n\"fræna.no\",\n\"froya.no\",\n\"frøya.no\",\n\"fusa.no\",\n\"fyresdal.no\",\n\"forde.no\",\n\"førde.no\",\n\"gamvik.no\",\n\"gangaviika.no\",\n\"gáŋgaviika.no\",\n\"gaular.no\",\n\"gausdal.no\",\n\"gildeskal.no\",\n\"gildeskål.no\",\n\"giske.no\",\n\"gjemnes.no\",\n\"gjerdrum.no\",\n\"gjerstad.no\",\n\"gjesdal.no\",\n\"gjovik.no\",\n\"gjøvik.no\",\n\"gloppen.no\",\n\"gol.no\",\n\"gran.no\",\n\"grane.no\",\n\"granvin.no\",\n\"gratangen.no\",\n\"grimstad.no\",\n\"grong.no\",\n\"kraanghke.no\",\n\"kråanghke.no\",\n\"grue.no\",\n\"gulen.no\",\n\"hadsel.no\",\n\"halden.no\",\n\"halsa.no\",\n\"hamar.no\",\n\"hamaroy.no\",\n\"habmer.no\",\n\"hábmer.no\",\n\"hapmir.no\",\n\"hápmir.no\",\n\"hammerfest.no\",\n\"hammarfeasta.no\",\n\"hámmárfeasta.no\",\n\"haram.no\",\n\"hareid.no\",\n\"harstad.no\",\n\"hasvik.no\",\n\"aknoluokta.no\",\n\"ákŋoluokta.no\",\n\"hattfjelldal.no\",\n\"aarborte.no\",\n\"haugesund.no\",\n\"hemne.no\",\n\"hemnes.no\",\n\"hemsedal.no\",\n\"heroy.more-og-romsdal.no\",\n\"herøy.møre-og-romsdal.no\",\n\"heroy.nordland.no\",\n\"herøy.nordland.no\",\n\"hitra.no\",\n\"hjartdal.no\",\n\"hjelmeland.no\",\n\"hobol.no\",\n\"hobøl.no\",\n\"hof.no\",\n\"hol.no\",\n\"hole.no\",\n\"holmestrand.no\",\n\"holtalen.no\",\n\"holtålen.no\",\n\"hornindal.no\",\n\"horten.no\",\n\"hurdal.no\",\n\"hurum.no\",\n\"hvaler.no\",\n\"hyllestad.no\",\n\"hagebostad.no\",\n\"hægebostad.no\",\n\"hoyanger.no\",\n\"høyanger.no\",\n\"hoylandet.no\",\n\"høylandet.no\",\n\"ha.no\",\n\"hå.no\",\n\"ibestad.no\",\n\"inderoy.no\",\n\"inderøy.no\",\n\"iveland.no\",\n\"jevnaker.no\",\n\"jondal.no\",\n\"jolster.no\",\n\"jølster.no\",\n\"karasjok.no\",\n\"karasjohka.no\",\n\"kárášjohka.no\",\n\"karlsoy.no\",\n\"galsa.no\",\n\"gálsá.no\",\n\"karmoy.no\",\n\"karmøy.no\",\n\"kautokeino.no\",\n\"guovdageaidnu.no\",\n\"klepp.no\",\n\"klabu.no\",\n\"klæbu.no\",\n\"kongsberg.no\",\n\"kongsvinger.no\",\n\"kragero.no\",\n\"kragerø.no\",\n\"kristiansand.no\",\n\"kristiansund.no\",\n\"krodsherad.no\",\n\"krødsherad.no\",\n\"kvalsund.no\",\n\"rahkkeravju.no\",\n\"ráhkkerávju.no\",\n\"kvam.no\",\n\"kvinesdal.no\",\n\"kvinnherad.no\",\n\"kviteseid.no\",\n\"kvitsoy.no\",\n\"kvitsøy.no\",\n\"kvafjord.no\",\n\"kvæfjord.no\",\n\"giehtavuoatna.no\",\n\"kvanangen.no\",\n\"kvænangen.no\",\n\"navuotna.no\",\n\"návuotna.no\",\n\"kafjord.no\",\n\"kåfjord.no\",\n\"gaivuotna.no\",\n\"gáivuotna.no\",\n\"larvik.no\",\n\"lavangen.no\",\n\"lavagis.no\",\n\"loabat.no\",\n\"loabát.no\",\n\"lebesby.no\",\n\"davvesiida.no\",\n\"leikanger.no\",\n\"leirfjord.no\",\n\"leka.no\",\n\"leksvik.no\",\n\"lenvik.no\",\n\"leangaviika.no\",\n\"leaŋgaviika.no\",\n\"lesja.no\",\n\"levanger.no\",\n\"lier.no\",\n\"lierne.no\",\n\"lillehammer.no\",\n\"lillesand.no\",\n\"lindesnes.no\",\n\"lindas.no\",\n\"lindås.no\",\n\"lom.no\",\n\"loppa.no\",\n\"lahppi.no\",\n\"láhppi.no\",\n\"lund.no\",\n\"lunner.no\",\n\"luroy.no\",\n\"lurøy.no\",\n\"luster.no\",\n\"lyngdal.no\",\n\"lyngen.no\",\n\"ivgu.no\",\n\"lardal.no\",\n\"lerdal.no\",\n\"lærdal.no\",\n\"lodingen.no\",\n\"lødingen.no\",\n\"lorenskog.no\",\n\"lørenskog.no\",\n\"loten.no\",\n\"løten.no\",\n\"malvik.no\",\n\"masoy.no\",\n\"måsøy.no\",\n\"muosat.no\",\n\"muosát.no\",\n\"mandal.no\",\n\"marker.no\",\n\"marnardal.no\",\n\"masfjorden.no\",\n\"meland.no\",\n\"meldal.no\",\n\"melhus.no\",\n\"meloy.no\",\n\"meløy.no\",\n\"meraker.no\",\n\"meråker.no\",\n\"moareke.no\",\n\"moåreke.no\",\n\"midsund.no\",\n\"midtre-gauldal.no\",\n\"modalen.no\",\n\"modum.no\",\n\"molde.no\",\n\"moskenes.no\",\n\"moss.no\",\n\"mosvik.no\",\n\"malselv.no\",\n\"målselv.no\",\n\"malatvuopmi.no\",\n\"málatvuopmi.no\",\n\"namdalseid.no\",\n\"aejrie.no\",\n\"namsos.no\",\n\"namsskogan.no\",\n\"naamesjevuemie.no\",\n\"nååmesjevuemie.no\",\n\"laakesvuemie.no\",\n\"nannestad.no\",\n\"narvik.no\",\n\"narviika.no\",\n\"naustdal.no\",\n\"nedre-eiker.no\",\n\"nes.akershus.no\",\n\"nes.buskerud.no\",\n\"nesna.no\",\n\"nesodden.no\",\n\"nesseby.no\",\n\"unjarga.no\",\n\"unjárga.no\",\n\"nesset.no\",\n\"nissedal.no\",\n\"nittedal.no\",\n\"nord-aurdal.no\",\n\"nord-fron.no\",\n\"nord-odal.no\",\n\"norddal.no\",\n\"nordkapp.no\",\n\"davvenjarga.no\",\n\"davvenjárga.no\",\n\"nordre-land.no\",\n\"nordreisa.no\",\n\"raisa.no\",\n\"ráisa.no\",\n\"nore-og-uvdal.no\",\n\"notodden.no\",\n\"naroy.no\",\n\"nærøy.no\",\n\"notteroy.no\",\n\"nøtterøy.no\",\n\"odda.no\",\n\"oksnes.no\",\n\"øksnes.no\",\n\"oppdal.no\",\n\"oppegard.no\",\n\"oppegård.no\",\n\"orkdal.no\",\n\"orland.no\",\n\"ørland.no\",\n\"orskog.no\",\n\"ørskog.no\",\n\"orsta.no\",\n\"ørsta.no\",\n\"os.hedmark.no\",\n\"os.hordaland.no\",\n\"osen.no\",\n\"osteroy.no\",\n\"osterøy.no\",\n\"ostre-toten.no\",\n\"østre-toten.no\",\n\"overhalla.no\",\n\"ovre-eiker.no\",\n\"øvre-eiker.no\",\n\"oyer.no\",\n\"øyer.no\",\n\"oygarden.no\",\n\"øygarden.no\",\n\"oystre-slidre.no\",\n\"øystre-slidre.no\",\n\"porsanger.no\",\n\"porsangu.no\",\n\"porsáŋgu.no\",\n\"porsgrunn.no\",\n\"radoy.no\",\n\"radøy.no\",\n\"rakkestad.no\",\n\"rana.no\",\n\"ruovat.no\",\n\"randaberg.no\",\n\"rauma.no\",\n\"rendalen.no\",\n\"rennebu.no\",\n\"rennesoy.no\",\n\"rennesøy.no\",\n\"rindal.no\",\n\"ringebu.no\",\n\"ringerike.no\",\n\"ringsaker.no\",\n\"rissa.no\",\n\"risor.no\",\n\"risør.no\",\n\"roan.no\",\n\"rollag.no\",\n\"rygge.no\",\n\"ralingen.no\",\n\"rælingen.no\",\n\"rodoy.no\",\n\"rødøy.no\",\n\"romskog.no\",\n\"rømskog.no\",\n\"roros.no\",\n\"røros.no\",\n\"rost.no\",\n\"røst.no\",\n\"royken.no\",\n\"røyken.no\",\n\"royrvik.no\",\n\"røyrvik.no\",\n\"rade.no\",\n\"råde.no\",\n\"salangen.no\",\n\"siellak.no\",\n\"saltdal.no\",\n\"salat.no\",\n\"sálát.no\",\n\"sálat.no\",\n\"samnanger.no\",\n\"sande.more-og-romsdal.no\",\n\"sande.møre-og-romsdal.no\",\n\"sande.vestfold.no\",\n\"sandefjord.no\",\n\"sandnes.no\",\n\"sandoy.no\",\n\"sandøy.no\",\n\"sarpsborg.no\",\n\"sauda.no\",\n\"sauherad.no\",\n\"sel.no\",\n\"selbu.no\",\n\"selje.no\",\n\"seljord.no\",\n\"sigdal.no\",\n\"siljan.no\",\n\"sirdal.no\",\n\"skaun.no\",\n\"skedsmo.no\",\n\"ski.no\",\n\"skien.no\",\n\"skiptvet.no\",\n\"skjervoy.no\",\n\"skjervøy.no\",\n\"skierva.no\",\n\"skiervá.no\",\n\"skjak.no\",\n\"skjåk.no\",\n\"skodje.no\",\n\"skanland.no\",\n\"skånland.no\",\n\"skanit.no\",\n\"skánit.no\",\n\"smola.no\",\n\"smøla.no\",\n\"snillfjord.no\",\n\"snasa.no\",\n\"snåsa.no\",\n\"snoasa.no\",\n\"snaase.no\",\n\"snåase.no\",\n\"sogndal.no\",\n\"sokndal.no\",\n\"sola.no\",\n\"solund.no\",\n\"songdalen.no\",\n\"sortland.no\",\n\"spydeberg.no\",\n\"stange.no\",\n\"stavanger.no\",\n\"steigen.no\",\n\"steinkjer.no\",\n\"stjordal.no\",\n\"stjørdal.no\",\n\"stokke.no\",\n\"stor-elvdal.no\",\n\"stord.no\",\n\"stordal.no\",\n\"storfjord.no\",\n\"omasvuotna.no\",\n\"strand.no\",\n\"stranda.no\",\n\"stryn.no\",\n\"sula.no\",\n\"suldal.no\",\n\"sund.no\",\n\"sunndal.no\",\n\"surnadal.no\",\n\"sveio.no\",\n\"svelvik.no\",\n\"sykkylven.no\",\n\"sogne.no\",\n\"søgne.no\",\n\"somna.no\",\n\"sømna.no\",\n\"sondre-land.no\",\n\"søndre-land.no\",\n\"sor-aurdal.no\",\n\"sør-aurdal.no\",\n\"sor-fron.no\",\n\"sør-fron.no\",\n\"sor-odal.no\",\n\"sør-odal.no\",\n\"sor-varanger.no\",\n\"sør-varanger.no\",\n\"matta-varjjat.no\",\n\"mátta-várjjat.no\",\n\"sorfold.no\",\n\"sørfold.no\",\n\"sorreisa.no\",\n\"sørreisa.no\",\n\"sorum.no\",\n\"sørum.no\",\n\"tana.no\",\n\"deatnu.no\",\n\"time.no\",\n\"tingvoll.no\",\n\"tinn.no\",\n\"tjeldsund.no\",\n\"dielddanuorri.no\",\n\"tjome.no\",\n\"tjøme.no\",\n\"tokke.no\",\n\"tolga.no\",\n\"torsken.no\",\n\"tranoy.no\",\n\"tranøy.no\",\n\"tromso.no\",\n\"tromsø.no\",\n\"tromsa.no\",\n\"romsa.no\",\n\"trondheim.no\",\n\"troandin.no\",\n\"trysil.no\",\n\"trana.no\",\n\"træna.no\",\n\"trogstad.no\",\n\"trøgstad.no\",\n\"tvedestrand.no\",\n\"tydal.no\",\n\"tynset.no\",\n\"tysfjord.no\",\n\"divtasvuodna.no\",\n\"divttasvuotna.no\",\n\"tysnes.no\",\n\"tysvar.no\",\n\"tysvær.no\",\n\"tonsberg.no\",\n\"tønsberg.no\",\n\"ullensaker.no\",\n\"ullensvang.no\",\n\"ulvik.no\",\n\"utsira.no\",\n\"vadso.no\",\n\"vadsø.no\",\n\"cahcesuolo.no\",\n\"čáhcesuolo.no\",\n\"vaksdal.no\",\n\"valle.no\",\n\"vang.no\",\n\"vanylven.no\",\n\"vardo.no\",\n\"vardø.no\",\n\"varggat.no\",\n\"várggát.no\",\n\"vefsn.no\",\n\"vaapste.no\",\n\"vega.no\",\n\"vegarshei.no\",\n\"vegårshei.no\",\n\"vennesla.no\",\n\"verdal.no\",\n\"verran.no\",\n\"vestby.no\",\n\"vestnes.no\",\n\"vestre-slidre.no\",\n\"vestre-toten.no\",\n\"vestvagoy.no\",\n\"vestvågøy.no\",\n\"vevelstad.no\",\n\"vik.no\",\n\"vikna.no\",\n\"vindafjord.no\",\n\"volda.no\",\n\"voss.no\",\n\"varoy.no\",\n\"værøy.no\",\n\"vagan.no\",\n\"vågan.no\",\n\"voagat.no\",\n\"vagsoy.no\",\n\"vågsøy.no\",\n\"vaga.no\",\n\"vågå.no\",\n\"valer.ostfold.no\",\n\"våler.østfold.no\",\n\"valer.hedmark.no\",\n\"våler.hedmark.no\",\n\"*.np\",\n\"nr\",\n\"biz.nr\",\n\"info.nr\",\n\"gov.nr\",\n\"edu.nr\",\n\"org.nr\",\n\"net.nr\",\n\"com.nr\",\n\"nu\",\n\"nz\",\n\"ac.nz\",\n\"co.nz\",\n\"cri.nz\",\n\"geek.nz\",\n\"gen.nz\",\n\"govt.nz\",\n\"health.nz\",\n\"iwi.nz\",\n\"kiwi.nz\",\n\"maori.nz\",\n\"mil.nz\",\n\"māori.nz\",\n\"net.nz\",\n\"org.nz\",\n\"parliament.nz\",\n\"school.nz\",\n\"om\",\n\"co.om\",\n\"com.om\",\n\"edu.om\",\n\"gov.om\",\n\"med.om\",\n\"museum.om\",\n\"net.om\",\n\"org.om\",\n\"pro.om\",\n\"onion\",\n\"org\",\n\"pa\",\n\"ac.pa\",\n\"gob.pa\",\n\"com.pa\",\n\"org.pa\",\n\"sld.pa\",\n\"edu.pa\",\n\"net.pa\",\n\"ing.pa\",\n\"abo.pa\",\n\"med.pa\",\n\"nom.pa\",\n\"pe\",\n\"edu.pe\",\n\"gob.pe\",\n\"nom.pe\",\n\"mil.pe\",\n\"org.pe\",\n\"com.pe\",\n\"net.pe\",\n\"pf\",\n\"com.pf\",\n\"org.pf\",\n\"edu.pf\",\n\"*.pg\",\n\"ph\",\n\"com.ph\",\n\"net.ph\",\n\"org.ph\",\n\"gov.ph\",\n\"edu.ph\",\n\"ngo.ph\",\n\"mil.ph\",\n\"i.ph\",\n\"pk\",\n\"com.pk\",\n\"net.pk\",\n\"edu.pk\",\n\"org.pk\",\n\"fam.pk\",\n\"biz.pk\",\n\"web.pk\",\n\"gov.pk\",\n\"gob.pk\",\n\"gok.pk\",\n\"gon.pk\",\n\"gop.pk\",\n\"gos.pk\",\n\"info.pk\",\n\"pl\",\n\"com.pl\",\n\"net.pl\",\n\"org.pl\",\n\"aid.pl\",\n\"agro.pl\",\n\"atm.pl\",\n\"auto.pl\",\n\"biz.pl\",\n\"edu.pl\",\n\"gmina.pl\",\n\"gsm.pl\",\n\"info.pl\",\n\"mail.pl\",\n\"miasta.pl\",\n\"media.pl\",\n\"mil.pl\",\n\"nieruchomosci.pl\",\n\"nom.pl\",\n\"pc.pl\",\n\"powiat.pl\",\n\"priv.pl\",\n\"realestate.pl\",\n\"rel.pl\",\n\"sex.pl\",\n\"shop.pl\",\n\"sklep.pl\",\n\"sos.pl\",\n\"szkola.pl\",\n\"targi.pl\",\n\"tm.pl\",\n\"tourism.pl\",\n\"travel.pl\",\n\"turystyka.pl\",\n\"gov.pl\",\n\"ap.gov.pl\",\n\"ic.gov.pl\",\n\"is.gov.pl\",\n\"us.gov.pl\",\n\"kmpsp.gov.pl\",\n\"kppsp.gov.pl\",\n\"kwpsp.gov.pl\",\n\"psp.gov.pl\",\n\"wskr.gov.pl\",\n\"kwp.gov.pl\",\n\"mw.gov.pl\",\n\"ug.gov.pl\",\n\"um.gov.pl\",\n\"umig.gov.pl\",\n\"ugim.gov.pl\",\n\"upow.gov.pl\",\n\"uw.gov.pl\",\n\"starostwo.gov.pl\",\n\"pa.gov.pl\",\n\"po.gov.pl\",\n\"psse.gov.pl\",\n\"pup.gov.pl\",\n\"rzgw.gov.pl\",\n\"sa.gov.pl\",\n\"so.gov.pl\",\n\"sr.gov.pl\",\n\"wsa.gov.pl\",\n\"sko.gov.pl\",\n\"uzs.gov.pl\",\n\"wiih.gov.pl\",\n\"winb.gov.pl\",\n\"pinb.gov.pl\",\n\"wios.gov.pl\",\n\"witd.gov.pl\",\n\"wzmiuw.gov.pl\",\n\"piw.gov.pl\",\n\"wiw.gov.pl\",\n\"griw.gov.pl\",\n\"wif.gov.pl\",\n\"oum.gov.pl\",\n\"sdn.gov.pl\",\n\"zp.gov.pl\",\n\"uppo.gov.pl\",\n\"mup.gov.pl\",\n\"wuoz.gov.pl\",\n\"konsulat.gov.pl\",\n\"oirm.gov.pl\",\n\"augustow.pl\",\n\"babia-gora.pl\",\n\"bedzin.pl\",\n\"beskidy.pl\",\n\"bialowieza.pl\",\n\"bialystok.pl\",\n\"bielawa.pl\",\n\"bieszczady.pl\",\n\"boleslawiec.pl\",\n\"bydgoszcz.pl\",\n\"bytom.pl\",\n\"cieszyn.pl\",\n\"czeladz.pl\",\n\"czest.pl\",\n\"dlugoleka.pl\",\n\"elblag.pl\",\n\"elk.pl\",\n\"glogow.pl\",\n\"gniezno.pl\",\n\"gorlice.pl\",\n\"grajewo.pl\",\n\"ilawa.pl\",\n\"jaworzno.pl\",\n\"jelenia-gora.pl\",\n\"jgora.pl\",\n\"kalisz.pl\",\n\"kazimierz-dolny.pl\",\n\"karpacz.pl\",\n\"kartuzy.pl\",\n\"kaszuby.pl\",\n\"katowice.pl\",\n\"kepno.pl\",\n\"ketrzyn.pl\",\n\"klodzko.pl\",\n\"kobierzyce.pl\",\n\"kolobrzeg.pl\",\n\"konin.pl\",\n\"konskowola.pl\",\n\"kutno.pl\",\n\"lapy.pl\",\n\"lebork.pl\",\n\"legnica.pl\",\n\"lezajsk.pl\",\n\"limanowa.pl\",\n\"lomza.pl\",\n\"lowicz.pl\",\n\"lubin.pl\",\n\"lukow.pl\",\n\"malbork.pl\",\n\"malopolska.pl\",\n\"mazowsze.pl\",\n\"mazury.pl\",\n\"mielec.pl\",\n\"mielno.pl\",\n\"mragowo.pl\",\n\"naklo.pl\",\n\"nowaruda.pl\",\n\"nysa.pl\",\n\"olawa.pl\",\n\"olecko.pl\",\n\"olkusz.pl\",\n\"olsztyn.pl\",\n\"opoczno.pl\",\n\"opole.pl\",\n\"ostroda.pl\",\n\"ostroleka.pl\",\n\"ostrowiec.pl\",\n\"ostrowwlkp.pl\",\n\"pila.pl\",\n\"pisz.pl\",\n\"podhale.pl\",\n\"podlasie.pl\",\n\"polkowice.pl\",\n\"pomorze.pl\",\n\"pomorskie.pl\",\n\"prochowice.pl\",\n\"pruszkow.pl\",\n\"przeworsk.pl\",\n\"pulawy.pl\",\n\"radom.pl\",\n\"rawa-maz.pl\",\n\"rybnik.pl\",\n\"rzeszow.pl\",\n\"sanok.pl\",\n\"sejny.pl\",\n\"slask.pl\",\n\"slupsk.pl\",\n\"sosnowiec.pl\",\n\"stalowa-wola.pl\",\n\"skoczow.pl\",\n\"starachowice.pl\",\n\"stargard.pl\",\n\"suwalki.pl\",\n\"swidnica.pl\",\n\"swiebodzin.pl\",\n\"swinoujscie.pl\",\n\"szczecin.pl\",\n\"szczytno.pl\",\n\"tarnobrzeg.pl\",\n\"tgory.pl\",\n\"turek.pl\",\n\"tychy.pl\",\n\"ustka.pl\",\n\"walbrzych.pl\",\n\"warmia.pl\",\n\"warszawa.pl\",\n\"waw.pl\",\n\"wegrow.pl\",\n\"wielun.pl\",\n\"wlocl.pl\",\n\"wloclawek.pl\",\n\"wodzislaw.pl\",\n\"wolomin.pl\",\n\"wroclaw.pl\",\n\"zachpomor.pl\",\n\"zagan.pl\",\n\"zarow.pl\",\n\"zgora.pl\",\n\"zgorzelec.pl\",\n\"pm\",\n\"pn\",\n\"gov.pn\",\n\"co.pn\",\n\"org.pn\",\n\"edu.pn\",\n\"net.pn\",\n\"post\",\n\"pr\",\n\"com.pr\",\n\"net.pr\",\n\"org.pr\",\n\"gov.pr\",\n\"edu.pr\",\n\"isla.pr\",\n\"pro.pr\",\n\"biz.pr\",\n\"info.pr\",\n\"name.pr\",\n\"est.pr\",\n\"prof.pr\",\n\"ac.pr\",\n\"pro\",\n\"aaa.pro\",\n\"aca.pro\",\n\"acct.pro\",\n\"avocat.pro\",\n\"bar.pro\",\n\"cpa.pro\",\n\"eng.pro\",\n\"jur.pro\",\n\"law.pro\",\n\"med.pro\",\n\"recht.pro\",\n\"ps\",\n\"edu.ps\",\n\"gov.ps\",\n\"sec.ps\",\n\"plo.ps\",\n\"com.ps\",\n\"org.ps\",\n\"net.ps\",\n\"pt\",\n\"net.pt\",\n\"gov.pt\",\n\"org.pt\",\n\"edu.pt\",\n\"int.pt\",\n\"publ.pt\",\n\"com.pt\",\n\"nome.pt\",\n\"pw\",\n\"co.pw\",\n\"ne.pw\",\n\"or.pw\",\n\"ed.pw\",\n\"go.pw\",\n\"belau.pw\",\n\"py\",\n\"com.py\",\n\"coop.py\",\n\"edu.py\",\n\"gov.py\",\n\"mil.py\",\n\"net.py\",\n\"org.py\",\n\"qa\",\n\"com.qa\",\n\"edu.qa\",\n\"gov.qa\",\n\"mil.qa\",\n\"name.qa\",\n\"net.qa\",\n\"org.qa\",\n\"sch.qa\",\n\"re\",\n\"asso.re\",\n\"com.re\",\n\"nom.re\",\n\"ro\",\n\"arts.ro\",\n\"com.ro\",\n\"firm.ro\",\n\"info.ro\",\n\"nom.ro\",\n\"nt.ro\",\n\"org.ro\",\n\"rec.ro\",\n\"store.ro\",\n\"tm.ro\",\n\"www.ro\",\n\"rs\",\n\"ac.rs\",\n\"co.rs\",\n\"edu.rs\",\n\"gov.rs\",\n\"in.rs\",\n\"org.rs\",\n\"ru\",\n\"rw\",\n\"ac.rw\",\n\"co.rw\",\n\"coop.rw\",\n\"gov.rw\",\n\"mil.rw\",\n\"net.rw\",\n\"org.rw\",\n\"sa\",\n\"com.sa\",\n\"net.sa\",\n\"org.sa\",\n\"gov.sa\",\n\"med.sa\",\n\"pub.sa\",\n\"edu.sa\",\n\"sch.sa\",\n\"sb\",\n\"com.sb\",\n\"edu.sb\",\n\"gov.sb\",\n\"net.sb\",\n\"org.sb\",\n\"sc\",\n\"com.sc\",\n\"gov.sc\",\n\"net.sc\",\n\"org.sc\",\n\"edu.sc\",\n\"sd\",\n\"com.sd\",\n\"net.sd\",\n\"org.sd\",\n\"edu.sd\",\n\"med.sd\",\n\"tv.sd\",\n\"gov.sd\",\n\"info.sd\",\n\"se\",\n\"a.se\",\n\"ac.se\",\n\"b.se\",\n\"bd.se\",\n\"brand.se\",\n\"c.se\",\n\"d.se\",\n\"e.se\",\n\"f.se\",\n\"fh.se\",\n\"fhsk.se\",\n\"fhv.se\",\n\"g.se\",\n\"h.se\",\n\"i.se\",\n\"k.se\",\n\"komforb.se\",\n\"kommunalforbund.se\",\n\"komvux.se\",\n\"l.se\",\n\"lanbib.se\",\n\"m.se\",\n\"n.se\",\n\"naturbruksgymn.se\",\n\"o.se\",\n\"org.se\",\n\"p.se\",\n\"parti.se\",\n\"pp.se\",\n\"press.se\",\n\"r.se\",\n\"s.se\",\n\"t.se\",\n\"tm.se\",\n\"u.se\",\n\"w.se\",\n\"x.se\",\n\"y.se\",\n\"z.se\",\n\"sg\",\n\"com.sg\",\n\"net.sg\",\n\"org.sg\",\n\"gov.sg\",\n\"edu.sg\",\n\"per.sg\",\n\"sh\",\n\"com.sh\",\n\"net.sh\",\n\"gov.sh\",\n\"org.sh\",\n\"mil.sh\",\n\"si\",\n\"sj\",\n\"sk\",\n\"sl\",\n\"com.sl\",\n\"net.sl\",\n\"edu.sl\",\n\"gov.sl\",\n\"org.sl\",\n\"sm\",\n\"sn\",\n\"art.sn\",\n\"com.sn\",\n\"edu.sn\",\n\"gouv.sn\",\n\"org.sn\",\n\"perso.sn\",\n\"univ.sn\",\n\"so\",\n\"com.so\",\n\"edu.so\",\n\"gov.so\",\n\"me.so\",\n\"net.so\",\n\"org.so\",\n\"sr\",\n\"ss\",\n\"biz.ss\",\n\"com.ss\",\n\"edu.ss\",\n\"gov.ss\",\n\"net.ss\",\n\"org.ss\",\n\"st\",\n\"co.st\",\n\"com.st\",\n\"consulado.st\",\n\"edu.st\",\n\"embaixada.st\",\n\"gov.st\",\n\"mil.st\",\n\"net.st\",\n\"org.st\",\n\"principe.st\",\n\"saotome.st\",\n\"store.st\",\n\"su\",\n\"sv\",\n\"com.sv\",\n\"edu.sv\",\n\"gob.sv\",\n\"org.sv\",\n\"red.sv\",\n\"sx\",\n\"gov.sx\",\n\"sy\",\n\"edu.sy\",\n\"gov.sy\",\n\"net.sy\",\n\"mil.sy\",\n\"com.sy\",\n\"org.sy\",\n\"sz\",\n\"co.sz\",\n\"ac.sz\",\n\"org.sz\",\n\"tc\",\n\"td\",\n\"tel\",\n\"tf\",\n\"tg\",\n\"th\",\n\"ac.th\",\n\"co.th\",\n\"go.th\",\n\"in.th\",\n\"mi.th\",\n\"net.th\",\n\"or.th\",\n\"tj\",\n\"ac.tj\",\n\"biz.tj\",\n\"co.tj\",\n\"com.tj\",\n\"edu.tj\",\n\"go.tj\",\n\"gov.tj\",\n\"int.tj\",\n\"mil.tj\",\n\"name.tj\",\n\"net.tj\",\n\"nic.tj\",\n\"org.tj\",\n\"test.tj\",\n\"web.tj\",\n\"tk\",\n\"tl\",\n\"gov.tl\",\n\"tm\",\n\"com.tm\",\n\"co.tm\",\n\"org.tm\",\n\"net.tm\",\n\"nom.tm\",\n\"gov.tm\",\n\"mil.tm\",\n\"edu.tm\",\n\"tn\",\n\"com.tn\",\n\"ens.tn\",\n\"fin.tn\",\n\"gov.tn\",\n\"ind.tn\",\n\"intl.tn\",\n\"nat.tn\",\n\"net.tn\",\n\"org.tn\",\n\"info.tn\",\n\"perso.tn\",\n\"tourism.tn\",\n\"edunet.tn\",\n\"rnrt.tn\",\n\"rns.tn\",\n\"rnu.tn\",\n\"mincom.tn\",\n\"agrinet.tn\",\n\"defense.tn\",\n\"turen.tn\",\n\"to\",\n\"com.to\",\n\"gov.to\",\n\"net.to\",\n\"org.to\",\n\"edu.to\",\n\"mil.to\",\n\"tr\",\n\"av.tr\",\n\"bbs.tr\",\n\"bel.tr\",\n\"biz.tr\",\n\"com.tr\",\n\"dr.tr\",\n\"edu.tr\",\n\"gen.tr\",\n\"gov.tr\",\n\"info.tr\",\n\"mil.tr\",\n\"k12.tr\",\n\"kep.tr\",\n\"name.tr\",\n\"net.tr\",\n\"org.tr\",\n\"pol.tr\",\n\"tel.tr\",\n\"tsk.tr\",\n\"tv.tr\",\n\"web.tr\",\n\"nc.tr\",\n\"gov.nc.tr\",\n\"tt\",\n\"co.tt\",\n\"com.tt\",\n\"org.tt\",\n\"net.tt\",\n\"biz.tt\",\n\"info.tt\",\n\"pro.tt\",\n\"int.tt\",\n\"coop.tt\",\n\"jobs.tt\",\n\"mobi.tt\",\n\"travel.tt\",\n\"museum.tt\",\n\"aero.tt\",\n\"name.tt\",\n\"gov.tt\",\n\"edu.tt\",\n\"tv\",\n\"tw\",\n\"edu.tw\",\n\"gov.tw\",\n\"mil.tw\",\n\"com.tw\",\n\"net.tw\",\n\"org.tw\",\n\"idv.tw\",\n\"game.tw\",\n\"ebiz.tw\",\n\"club.tw\",\n\"網路.tw\",\n\"組織.tw\",\n\"商業.tw\",\n\"tz\",\n\"ac.tz\",\n\"co.tz\",\n\"go.tz\",\n\"hotel.tz\",\n\"info.tz\",\n\"me.tz\",\n\"mil.tz\",\n\"mobi.tz\",\n\"ne.tz\",\n\"or.tz\",\n\"sc.tz\",\n\"tv.tz\",\n\"ua\",\n\"com.ua\",\n\"edu.ua\",\n\"gov.ua\",\n\"in.ua\",\n\"net.ua\",\n\"org.ua\",\n\"cherkassy.ua\",\n\"cherkasy.ua\",\n\"chernigov.ua\",\n\"chernihiv.ua\",\n\"chernivtsi.ua\",\n\"chernovtsy.ua\",\n\"ck.ua\",\n\"cn.ua\",\n\"cr.ua\",\n\"crimea.ua\",\n\"cv.ua\",\n\"dn.ua\",\n\"dnepropetrovsk.ua\",\n\"dnipropetrovsk.ua\",\n\"dominic.ua\",\n\"donetsk.ua\",\n\"dp.ua\",\n\"if.ua\",\n\"ivano-frankivsk.ua\",\n\"kh.ua\",\n\"kharkiv.ua\",\n\"kharkov.ua\",\n\"kherson.ua\",\n\"khmelnitskiy.ua\",\n\"khmelnytskyi.ua\",\n\"kiev.ua\",\n\"kirovograd.ua\",\n\"km.ua\",\n\"kr.ua\",\n\"krym.ua\",\n\"ks.ua\",\n\"kv.ua\",\n\"kyiv.ua\",\n\"lg.ua\",\n\"lt.ua\",\n\"lugansk.ua\",\n\"lutsk.ua\",\n\"lv.ua\",\n\"lviv.ua\",\n\"mk.ua\",\n\"mykolaiv.ua\",\n\"nikolaev.ua\",\n\"od.ua\",\n\"odesa.ua\",\n\"odessa.ua\",\n\"pl.ua\",\n\"poltava.ua\",\n\"rivne.ua\",\n\"rovno.ua\",\n\"rv.ua\",\n\"sb.ua\",\n\"sebastopol.ua\",\n\"sevastopol.ua\",\n\"sm.ua\",\n\"sumy.ua\",\n\"te.ua\",\n\"ternopil.ua\",\n\"uz.ua\",\n\"uzhgorod.ua\",\n\"vinnica.ua\",\n\"vinnytsia.ua\",\n\"vn.ua\",\n\"volyn.ua\",\n\"yalta.ua\",\n\"zaporizhzhe.ua\",\n\"zaporizhzhia.ua\",\n\"zhitomir.ua\",\n\"zhytomyr.ua\",\n\"zp.ua\",\n\"zt.ua\",\n\"ug\",\n\"co.ug\",\n\"or.ug\",\n\"ac.ug\",\n\"sc.ug\",\n\"go.ug\",\n\"ne.ug\",\n\"com.ug\",\n\"org.ug\",\n\"uk\",\n\"ac.uk\",\n\"co.uk\",\n\"gov.uk\",\n\"ltd.uk\",\n\"me.uk\",\n\"net.uk\",\n\"nhs.uk\",\n\"org.uk\",\n\"plc.uk\",\n\"police.uk\",\n\"*.sch.uk\",\n\"us\",\n\"dni.us\",\n\"fed.us\",\n\"isa.us\",\n\"kids.us\",\n\"nsn.us\",\n\"ak.us\",\n\"al.us\",\n\"ar.us\",\n\"as.us\",\n\"az.us\",\n\"ca.us\",\n\"co.us\",\n\"ct.us\",\n\"dc.us\",\n\"de.us\",\n\"fl.us\",\n\"ga.us\",\n\"gu.us\",\n\"hi.us\",\n\"ia.us\",\n\"id.us\",\n\"il.us\",\n\"in.us\",\n\"ks.us\",\n\"ky.us\",\n\"la.us\",\n\"ma.us\",\n\"md.us\",\n\"me.us\",\n\"mi.us\",\n\"mn.us\",\n\"mo.us\",\n\"ms.us\",\n\"mt.us\",\n\"nc.us\",\n\"nd.us\",\n\"ne.us\",\n\"nh.us\",\n\"nj.us\",\n\"nm.us\",\n\"nv.us\",\n\"ny.us\",\n\"oh.us\",\n\"ok.us\",\n\"or.us\",\n\"pa.us\",\n\"pr.us\",\n\"ri.us\",\n\"sc.us\",\n\"sd.us\",\n\"tn.us\",\n\"tx.us\",\n\"ut.us\",\n\"vi.us\",\n\"vt.us\",\n\"va.us\",\n\"wa.us\",\n\"wi.us\",\n\"wv.us\",\n\"wy.us\",\n\"k12.ak.us\",\n\"k12.al.us\",\n\"k12.ar.us\",\n\"k12.as.us\",\n\"k12.az.us\",\n\"k12.ca.us\",\n\"k12.co.us\",\n\"k12.ct.us\",\n\"k12.dc.us\",\n\"k12.de.us\",\n\"k12.fl.us\",\n\"k12.ga.us\",\n\"k12.gu.us\",\n\"k12.ia.us\",\n\"k12.id.us\",\n\"k12.il.us\",\n\"k12.in.us\",\n\"k12.ks.us\",\n\"k12.ky.us\",\n\"k12.la.us\",\n\"k12.ma.us\",\n\"k12.md.us\",\n\"k12.me.us\",\n\"k12.mi.us\",\n\"k12.mn.us\",\n\"k12.mo.us\",\n\"k12.ms.us\",\n\"k12.mt.us\",\n\"k12.nc.us\",\n\"k12.ne.us\",\n\"k12.nh.us\",\n\"k12.nj.us\",\n\"k12.nm.us\",\n\"k12.nv.us\",\n\"k12.ny.us\",\n\"k12.oh.us\",\n\"k12.ok.us\",\n\"k12.or.us\",\n\"k12.pa.us\",\n\"k12.pr.us\",\n\"k12.ri.us\",\n\"k12.sc.us\",\n\"k12.tn.us\",\n\"k12.tx.us\",\n\"k12.ut.us\",\n\"k12.vi.us\",\n\"k12.vt.us\",\n\"k12.va.us\",\n\"k12.wa.us\",\n\"k12.wi.us\",\n\"k12.wy.us\",\n\"cc.ak.us\",\n\"cc.al.us\",\n\"cc.ar.us\",\n\"cc.as.us\",\n\"cc.az.us\",\n\"cc.ca.us\",\n\"cc.co.us\",\n\"cc.ct.us\",\n\"cc.dc.us\",\n\"cc.de.us\",\n\"cc.fl.us\",\n\"cc.ga.us\",\n\"cc.gu.us\",\n\"cc.hi.us\",\n\"cc.ia.us\",\n\"cc.id.us\",\n\"cc.il.us\",\n\"cc.in.us\",\n\"cc.ks.us\",\n\"cc.ky.us\",\n\"cc.la.us\",\n\"cc.ma.us\",\n\"cc.md.us\",\n\"cc.me.us\",\n\"cc.mi.us\",\n\"cc.mn.us\",\n\"cc.mo.us\",\n\"cc.ms.us\",\n\"cc.mt.us\",\n\"cc.nc.us\",\n\"cc.nd.us\",\n\"cc.ne.us\",\n\"cc.nh.us\",\n\"cc.nj.us\",\n\"cc.nm.us\",\n\"cc.nv.us\",\n\"cc.ny.us\",\n\"cc.oh.us\",\n\"cc.ok.us\",\n\"cc.or.us\",\n\"cc.pa.us\",\n\"cc.pr.us\",\n\"cc.ri.us\",\n\"cc.sc.us\",\n\"cc.sd.us\",\n\"cc.tn.us\",\n\"cc.tx.us\",\n\"cc.ut.us\",\n\"cc.vi.us\",\n\"cc.vt.us\",\n\"cc.va.us\",\n\"cc.wa.us\",\n\"cc.wi.us\",\n\"cc.wv.us\",\n\"cc.wy.us\",\n\"lib.ak.us\",\n\"lib.al.us\",\n\"lib.ar.us\",\n\"lib.as.us\",\n\"lib.az.us\",\n\"lib.ca.us\",\n\"lib.co.us\",\n\"lib.ct.us\",\n\"lib.dc.us\",\n\"lib.fl.us\",\n\"lib.ga.us\",\n\"lib.gu.us\",\n\"lib.hi.us\",\n\"lib.ia.us\",\n\"lib.id.us\",\n\"lib.il.us\",\n\"lib.in.us\",\n\"lib.ks.us\",\n\"lib.ky.us\",\n\"lib.la.us\",\n\"lib.ma.us\",\n\"lib.md.us\",\n\"lib.me.us\",\n\"lib.mi.us\",\n\"lib.mn.us\",\n\"lib.mo.us\",\n\"lib.ms.us\",\n\"lib.mt.us\",\n\"lib.nc.us\",\n\"lib.nd.us\",\n\"lib.ne.us\",\n\"lib.nh.us\",\n\"lib.nj.us\",\n\"lib.nm.us\",\n\"lib.nv.us\",\n\"lib.ny.us\",\n\"lib.oh.us\",\n\"lib.ok.us\",\n\"lib.or.us\",\n\"lib.pa.us\",\n\"lib.pr.us\",\n\"lib.ri.us\",\n\"lib.sc.us\",\n\"lib.sd.us\",\n\"lib.tn.us\",\n\"lib.tx.us\",\n\"lib.ut.us\",\n\"lib.vi.us\",\n\"lib.vt.us\",\n\"lib.va.us\",\n\"lib.wa.us\",\n\"lib.wi.us\",\n\"lib.wy.us\",\n\"pvt.k12.ma.us\",\n\"chtr.k12.ma.us\",\n\"paroch.k12.ma.us\",\n\"ann-arbor.mi.us\",\n\"cog.mi.us\",\n\"dst.mi.us\",\n\"eaton.mi.us\",\n\"gen.mi.us\",\n\"mus.mi.us\",\n\"tec.mi.us\",\n\"washtenaw.mi.us\",\n\"uy\",\n\"com.uy\",\n\"edu.uy\",\n\"gub.uy\",\n\"mil.uy\",\n\"net.uy\",\n\"org.uy\",\n\"uz\",\n\"co.uz\",\n\"com.uz\",\n\"net.uz\",\n\"org.uz\",\n\"va\",\n\"vc\",\n\"com.vc\",\n\"net.vc\",\n\"org.vc\",\n\"gov.vc\",\n\"mil.vc\",\n\"edu.vc\",\n\"ve\",\n\"arts.ve\",\n\"co.ve\",\n\"com.ve\",\n\"e12.ve\",\n\"edu.ve\",\n\"firm.ve\",\n\"gob.ve\",\n\"gov.ve\",\n\"info.ve\",\n\"int.ve\",\n\"mil.ve\",\n\"net.ve\",\n\"org.ve\",\n\"rec.ve\",\n\"store.ve\",\n\"tec.ve\",\n\"web.ve\",\n\"vg\",\n\"vi\",\n\"co.vi\",\n\"com.vi\",\n\"k12.vi\",\n\"net.vi\",\n\"org.vi\",\n\"vn\",\n\"com.vn\",\n\"net.vn\",\n\"org.vn\",\n\"edu.vn\",\n\"gov.vn\",\n\"int.vn\",\n\"ac.vn\",\n\"biz.vn\",\n\"info.vn\",\n\"name.vn\",\n\"pro.vn\",\n\"health.vn\",\n\"vu\",\n\"com.vu\",\n\"edu.vu\",\n\"net.vu\",\n\"org.vu\",\n\"wf\",\n\"ws\",\n\"com.ws\",\n\"net.ws\",\n\"org.ws\",\n\"gov.ws\",\n\"edu.ws\",\n\"yt\",\n\"امارات\",\n\"հայ\",\n\"বাংলা\",\n\"бг\",\n\"бел\",\n\"中国\",\n\"中國\",\n\"الجزائر\",\n\"مصر\",\n\"ею\",\n\"ευ\",\n\"موريتانيا\",\n\"გე\",\n\"ελ\",\n\"香港\",\n\"公司.香港\",\n\"教育.香港\",\n\"政府.香港\",\n\"個人.香港\",\n\"網絡.香港\",\n\"組織.香港\",\n\"ಭಾರತ\",\n\"ଭାରତ\",\n\"ভাৰত\",\n\"भारतम्\",\n\"भारोत\",\n\"ڀارت\",\n\"ഭാരതം\",\n\"भारत\",\n\"بارت\",\n\"بھارت\",\n\"భారత్\",\n\"ભારત\",\n\"ਭਾਰਤ\",\n\"ভারত\",\n\"இந்தியா\",\n\"ایران\",\n\"ايران\",\n\"عراق\",\n\"الاردن\",\n\"한국\",\n\"қаз\",\n\"ලංකා\",\n\"இலங்கை\",\n\"المغرب\",\n\"мкд\",\n\"мон\",\n\"澳門\",\n\"澳门\",\n\"مليسيا\",\n\"عمان\",\n\"پاکستان\",\n\"پاكستان\",\n\"فلسطين\",\n\"срб\",\n\"пр.срб\",\n\"орг.срб\",\n\"обр.срб\",\n\"од.срб\",\n\"упр.срб\",\n\"ак.срб\",\n\"рф\",\n\"قطر\",\n\"السعودية\",\n\"السعودیة\",\n\"السعودیۃ\",\n\"السعوديه\",\n\"سودان\",\n\"新加坡\",\n\"சிங்கப்பூர்\",\n\"سورية\",\n\"سوريا\",\n\"ไทย\",\n\"ศึกษา.ไทย\",\n\"ธุรกิจ.ไทย\",\n\"รัฐบาล.ไทย\",\n\"ทหาร.ไทย\",\n\"เน็ต.ไทย\",\n\"องค์กร.ไทย\",\n\"تونس\",\n\"台灣\",\n\"台湾\",\n\"臺灣\",\n\"укр\",\n\"اليمن\",\n\"xxx\",\n\"*.ye\",\n\"ac.za\",\n\"agric.za\",\n\"alt.za\",\n\"co.za\",\n\"edu.za\",\n\"gov.za\",\n\"grondar.za\",\n\"law.za\",\n\"mil.za\",\n\"net.za\",\n\"ngo.za\",\n\"nic.za\",\n\"nis.za\",\n\"nom.za\",\n\"org.za\",\n\"school.za\",\n\"tm.za\",\n\"web.za\",\n\"zm\",\n\"ac.zm\",\n\"biz.zm\",\n\"co.zm\",\n\"com.zm\",\n\"edu.zm\",\n\"gov.zm\",\n\"info.zm\",\n\"mil.zm\",\n\"net.zm\",\n\"org.zm\",\n\"sch.zm\",\n\"zw\",\n\"ac.zw\",\n\"co.zw\",\n\"gov.zw\",\n\"mil.zw\",\n\"org.zw\",\n\"aaa\",\n\"aarp\",\n\"abarth\",\n\"abb\",\n\"abbott\",\n\"abbvie\",\n\"abc\",\n\"able\",\n\"abogado\",\n\"abudhabi\",\n\"academy\",\n\"accenture\",\n\"accountant\",\n\"accountants\",\n\"aco\",\n\"actor\",\n\"adac\",\n\"ads\",\n\"adult\",\n\"aeg\",\n\"aetna\",\n\"afamilycompany\",\n\"afl\",\n\"africa\",\n\"agakhan\",\n\"agency\",\n\"aig\",\n\"aigo\",\n\"airbus\",\n\"airforce\",\n\"airtel\",\n\"akdn\",\n\"alfaromeo\",\n\"alibaba\",\n\"alipay\",\n\"allfinanz\",\n\"allstate\",\n\"ally\",\n\"alsace\",\n\"alstom\",\n\"amazon\",\n\"americanexpress\",\n\"americanfamily\",\n\"amex\",\n\"amfam\",\n\"amica\",\n\"amsterdam\",\n\"analytics\",\n\"android\",\n\"anquan\",\n\"anz\",\n\"aol\",\n\"apartments\",\n\"app\",\n\"apple\",\n\"aquarelle\",\n\"arab\",\n\"aramco\",\n\"archi\",\n\"army\",\n\"art\",\n\"arte\",\n\"asda\",\n\"associates\",\n\"athleta\",\n\"attorney\",\n\"auction\",\n\"audi\",\n\"audible\",\n\"audio\",\n\"auspost\",\n\"author\",\n\"auto\",\n\"autos\",\n\"avianca\",\n\"aws\",\n\"axa\",\n\"azure\",\n\"baby\",\n\"baidu\",\n\"banamex\",\n\"bananarepublic\",\n\"band\",\n\"bank\",\n\"bar\",\n\"barcelona\",\n\"barclaycard\",\n\"barclays\",\n\"barefoot\",\n\"bargains\",\n\"baseball\",\n\"basketball\",\n\"bauhaus\",\n\"bayern\",\n\"bbc\",\n\"bbt\",\n\"bbva\",\n\"bcg\",\n\"bcn\",\n\"beats\",\n\"beauty\",\n\"beer\",\n\"bentley\",\n\"berlin\",\n\"best\",\n\"bestbuy\",\n\"bet\",\n\"bharti\",\n\"bible\",\n\"bid\",\n\"bike\",\n\"bing\",\n\"bingo\",\n\"bio\",\n\"black\",\n\"blackfriday\",\n\"blockbuster\",\n\"blog\",\n\"bloomberg\",\n\"blue\",\n\"bms\",\n\"bmw\",\n\"bnpparibas\",\n\"boats\",\n\"boehringer\",\n\"bofa\",\n\"bom\",\n\"bond\",\n\"boo\",\n\"book\",\n\"booking\",\n\"bosch\",\n\"bostik\",\n\"boston\",\n\"bot\",\n\"boutique\",\n\"box\",\n\"bradesco\",\n\"bridgestone\",\n\"broadway\",\n\"broker\",\n\"brother\",\n\"brussels\",\n\"budapest\",\n\"bugatti\",\n\"build\",\n\"builders\",\n\"business\",\n\"buy\",\n\"buzz\",\n\"bzh\",\n\"cab\",\n\"cafe\",\n\"cal\",\n\"call\",\n\"calvinklein\",\n\"cam\",\n\"camera\",\n\"camp\",\n\"cancerresearch\",\n\"canon\",\n\"capetown\",\n\"capital\",\n\"capitalone\",\n\"car\",\n\"caravan\",\n\"cards\",\n\"care\",\n\"career\",\n\"careers\",\n\"cars\",\n\"casa\",\n\"case\",\n\"caseih\",\n\"cash\",\n\"casino\",\n\"catering\",\n\"catholic\",\n\"cba\",\n\"cbn\",\n\"cbre\",\n\"cbs\",\n\"ceb\",\n\"center\",\n\"ceo\",\n\"cern\",\n\"cfa\",\n\"cfd\",\n\"chanel\",\n\"channel\",\n\"charity\",\n\"chase\",\n\"chat\",\n\"cheap\",\n\"chintai\",\n\"christmas\",\n\"chrome\",\n\"church\",\n\"cipriani\",\n\"circle\",\n\"cisco\",\n\"citadel\",\n\"citi\",\n\"citic\",\n\"city\",\n\"cityeats\",\n\"claims\",\n\"cleaning\",\n\"click\",\n\"clinic\",\n\"clinique\",\n\"clothing\",\n\"cloud\",\n\"club\",\n\"clubmed\",\n\"coach\",\n\"codes\",\n\"coffee\",\n\"college\",\n\"cologne\",\n\"comcast\",\n\"commbank\",\n\"community\",\n\"company\",\n\"compare\",\n\"computer\",\n\"comsec\",\n\"condos\",\n\"construction\",\n\"consulting\",\n\"contact\",\n\"contractors\",\n\"cooking\",\n\"cookingchannel\",\n\"cool\",\n\"corsica\",\n\"country\",\n\"coupon\",\n\"coupons\",\n\"courses\",\n\"cpa\",\n\"credit\",\n\"creditcard\",\n\"creditunion\",\n\"cricket\",\n\"crown\",\n\"crs\",\n\"cruise\",\n\"cruises\",\n\"csc\",\n\"cuisinella\",\n\"cymru\",\n\"cyou\",\n\"dabur\",\n\"dad\",\n\"dance\",\n\"data\",\n\"date\",\n\"dating\",\n\"datsun\",\n\"day\",\n\"dclk\",\n\"dds\",\n\"deal\",\n\"dealer\",\n\"deals\",\n\"degree\",\n\"delivery\",\n\"dell\",\n\"deloitte\",\n\"delta\",\n\"democrat\",\n\"dental\",\n\"dentist\",\n\"desi\",\n\"design\",\n\"dev\",\n\"dhl\",\n\"diamonds\",\n\"diet\",\n\"digital\",\n\"direct\",\n\"directory\",\n\"discount\",\n\"discover\",\n\"dish\",\n\"diy\",\n\"dnp\",\n\"docs\",\n\"doctor\",\n\"dog\",\n\"domains\",\n\"dot\",\n\"download\",\n\"drive\",\n\"dtv\",\n\"dubai\",\n\"duck\",\n\"dunlop\",\n\"dupont\",\n\"durban\",\n\"dvag\",\n\"dvr\",\n\"earth\",\n\"eat\",\n\"eco\",\n\"edeka\",\n\"education\",\n\"email\",\n\"emerck\",\n\"energy\",\n\"engineer\",\n\"engineering\",\n\"enterprises\",\n\"epson\",\n\"equipment\",\n\"ericsson\",\n\"erni\",\n\"esq\",\n\"estate\",\n\"esurance\",\n\"etisalat\",\n\"eurovision\",\n\"eus\",\n\"events\",\n\"exchange\",\n\"expert\",\n\"exposed\",\n\"express\",\n\"extraspace\",\n\"fage\",\n\"fail\",\n\"fairwinds\",\n\"faith\",\n\"family\",\n\"fan\",\n\"fans\",\n\"farm\",\n\"farmers\",\n\"fashion\",\n\"fast\",\n\"fedex\",\n\"feedback\",\n\"ferrari\",\n\"ferrero\",\n\"fiat\",\n\"fidelity\",\n\"fido\",\n\"film\",\n\"final\",\n\"finance\",\n\"financial\",\n\"fire\",\n\"firestone\",\n\"firmdale\",\n\"fish\",\n\"fishing\",\n\"fit\",\n\"fitness\",\n\"flickr\",\n\"flights\",\n\"flir\",\n\"florist\",\n\"flowers\",\n\"fly\",\n\"foo\",\n\"food\",\n\"foodnetwork\",\n\"football\",\n\"ford\",\n\"forex\",\n\"forsale\",\n\"forum\",\n\"foundation\",\n\"fox\",\n\"free\",\n\"fresenius\",\n\"frl\",\n\"frogans\",\n\"frontdoor\",\n\"frontier\",\n\"ftr\",\n\"fujitsu\",\n\"fujixerox\",\n\"fun\",\n\"fund\",\n\"furniture\",\n\"futbol\",\n\"fyi\",\n\"gal\",\n\"gallery\",\n\"gallo\",\n\"gallup\",\n\"game\",\n\"games\",\n\"gap\",\n\"garden\",\n\"gay\",\n\"gbiz\",\n\"gdn\",\n\"gea\",\n\"gent\",\n\"genting\",\n\"george\",\n\"ggee\",\n\"gift\",\n\"gifts\",\n\"gives\",\n\"giving\",\n\"glade\",\n\"glass\",\n\"gle\",\n\"global\",\n\"globo\",\n\"gmail\",\n\"gmbh\",\n\"gmo\",\n\"gmx\",\n\"godaddy\",\n\"gold\",\n\"goldpoint\",\n\"golf\",\n\"goo\",\n\"goodyear\",\n\"goog\",\n\"google\",\n\"gop\",\n\"got\",\n\"grainger\",\n\"graphics\",\n\"gratis\",\n\"green\",\n\"gripe\",\n\"grocery\",\n\"group\",\n\"guardian\",\n\"gucci\",\n\"guge\",\n\"guide\",\n\"guitars\",\n\"guru\",\n\"hair\",\n\"hamburg\",\n\"hangout\",\n\"haus\",\n\"hbo\",\n\"hdfc\",\n\"hdfcbank\",\n\"health\",\n\"healthcare\",\n\"help\",\n\"helsinki\",\n\"here\",\n\"hermes\",\n\"hgtv\",\n\"hiphop\",\n\"hisamitsu\",\n\"hitachi\",\n\"hiv\",\n\"hkt\",\n\"hockey\",\n\"holdings\",\n\"holiday\",\n\"homedepot\",\n\"homegoods\",\n\"homes\",\n\"homesense\",\n\"honda\",\n\"horse\",\n\"hospital\",\n\"host\",\n\"hosting\",\n\"hot\",\n\"hoteles\",\n\"hotels\",\n\"hotmail\",\n\"house\",\n\"how\",\n\"hsbc\",\n\"hughes\",\n\"hyatt\",\n\"hyundai\",\n\"ibm\",\n\"icbc\",\n\"ice\",\n\"icu\",\n\"ieee\",\n\"ifm\",\n\"ikano\",\n\"imamat\",\n\"imdb\",\n\"immo\",\n\"immobilien\",\n\"inc\",\n\"industries\",\n\"infiniti\",\n\"ing\",\n\"ink\",\n\"institute\",\n\"insurance\",\n\"insure\",\n\"intel\",\n\"international\",\n\"intuit\",\n\"investments\",\n\"ipiranga\",\n\"irish\",\n\"ismaili\",\n\"ist\",\n\"istanbul\",\n\"itau\",\n\"itv\",\n\"iveco\",\n\"jaguar\",\n\"java\",\n\"jcb\",\n\"jcp\",\n\"jeep\",\n\"jetzt\",\n\"jewelry\",\n\"jio\",\n\"jll\",\n\"jmp\",\n\"jnj\",\n\"joburg\",\n\"jot\",\n\"joy\",\n\"jpmorgan\",\n\"jprs\",\n\"juegos\",\n\"juniper\",\n\"kaufen\",\n\"kddi\",\n\"kerryhotels\",\n\"kerrylogistics\",\n\"kerryproperties\",\n\"kfh\",\n\"kia\",\n\"kim\",\n\"kinder\",\n\"kindle\",\n\"kitchen\",\n\"kiwi\",\n\"koeln\",\n\"komatsu\",\n\"kosher\",\n\"kpmg\",\n\"kpn\",\n\"krd\",\n\"kred\",\n\"kuokgroup\",\n\"kyoto\",\n\"lacaixa\",\n\"lamborghini\",\n\"lamer\",\n\"lancaster\",\n\"lancia\",\n\"land\",\n\"landrover\",\n\"lanxess\",\n\"lasalle\",\n\"lat\",\n\"latino\",\n\"latrobe\",\n\"law\",\n\"lawyer\",\n\"lds\",\n\"lease\",\n\"leclerc\",\n\"lefrak\",\n\"legal\",\n\"lego\",\n\"lexus\",\n\"lgbt\",\n\"lidl\",\n\"life\",\n\"lifeinsurance\",\n\"lifestyle\",\n\"lighting\",\n\"like\",\n\"lilly\",\n\"limited\",\n\"limo\",\n\"lincoln\",\n\"linde\",\n\"link\",\n\"lipsy\",\n\"live\",\n\"living\",\n\"lixil\",\n\"llc\",\n\"llp\",\n\"loan\",\n\"loans\",\n\"locker\",\n\"locus\",\n\"loft\",\n\"lol\",\n\"london\",\n\"lotte\",\n\"lotto\",\n\"love\",\n\"lpl\",\n\"lplfinancial\",\n\"ltd\",\n\"ltda\",\n\"lundbeck\",\n\"lupin\",\n\"luxe\",\n\"luxury\",\n\"macys\",\n\"madrid\",\n\"maif\",\n\"maison\",\n\"makeup\",\n\"man\",\n\"management\",\n\"mango\",\n\"map\",\n\"market\",\n\"marketing\",\n\"markets\",\n\"marriott\",\n\"marshalls\",\n\"maserati\",\n\"mattel\",\n\"mba\",\n\"mckinsey\",\n\"med\",\n\"media\",\n\"meet\",\n\"melbourne\",\n\"meme\",\n\"memorial\",\n\"men\",\n\"menu\",\n\"merckmsd\",\n\"metlife\",\n\"miami\",\n\"microsoft\",\n\"mini\",\n\"mint\",\n\"mit\",\n\"mitsubishi\",\n\"mlb\",\n\"mls\",\n\"mma\",\n\"mobile\",\n\"moda\",\n\"moe\",\n\"moi\",\n\"mom\",\n\"monash\",\n\"money\",\n\"monster\",\n\"mormon\",\n\"mortgage\",\n\"moscow\",\n\"moto\",\n\"motorcycles\",\n\"mov\",\n\"movie\",\n\"msd\",\n\"mtn\",\n\"mtr\",\n\"mutual\",\n\"nab\",\n\"nadex\",\n\"nagoya\",\n\"nationwide\",\n\"natura\",\n\"navy\",\n\"nba\",\n\"nec\",\n\"netbank\",\n\"netflix\",\n\"network\",\n\"neustar\",\n\"new\",\n\"newholland\",\n\"news\",\n\"next\",\n\"nextdirect\",\n\"nexus\",\n\"nfl\",\n\"ngo\",\n\"nhk\",\n\"nico\",\n\"nike\",\n\"nikon\",\n\"ninja\",\n\"nissan\",\n\"nissay\",\n\"nokia\",\n\"northwesternmutual\",\n\"norton\",\n\"now\",\n\"nowruz\",\n\"nowtv\",\n\"nra\",\n\"nrw\",\n\"ntt\",\n\"nyc\",\n\"obi\",\n\"observer\",\n\"off\",\n\"office\",\n\"okinawa\",\n\"olayan\",\n\"olayangroup\",\n\"oldnavy\",\n\"ollo\",\n\"omega\",\n\"one\",\n\"ong\",\n\"onl\",\n\"online\",\n\"onyourside\",\n\"ooo\",\n\"open\",\n\"oracle\",\n\"orange\",\n\"organic\",\n\"origins\",\n\"osaka\",\n\"otsuka\",\n\"ott\",\n\"ovh\",\n\"page\",\n\"panasonic\",\n\"paris\",\n\"pars\",\n\"partners\",\n\"parts\",\n\"party\",\n\"passagens\",\n\"pay\",\n\"pccw\",\n\"pet\",\n\"pfizer\",\n\"pharmacy\",\n\"phd\",\n\"philips\",\n\"phone\",\n\"photo\",\n\"photography\",\n\"photos\",\n\"physio\",\n\"pics\",\n\"pictet\",\n\"pictures\",\n\"pid\",\n\"pin\",\n\"ping\",\n\"pink\",\n\"pioneer\",\n\"pizza\",\n\"place\",\n\"play\",\n\"playstation\",\n\"plumbing\",\n\"plus\",\n\"pnc\",\n\"pohl\",\n\"poker\",\n\"politie\",\n\"porn\",\n\"pramerica\",\n\"praxi\",\n\"press\",\n\"prime\",\n\"prod\",\n\"productions\",\n\"prof\",\n\"progressive\",\n\"promo\",\n\"properties\",\n\"property\",\n\"protection\",\n\"pru\",\n\"prudential\",\n\"pub\",\n\"pwc\",\n\"qpon\",\n\"quebec\",\n\"quest\",\n\"qvc\",\n\"racing\",\n\"radio\",\n\"raid\",\n\"read\",\n\"realestate\",\n\"realtor\",\n\"realty\",\n\"recipes\",\n\"red\",\n\"redstone\",\n\"redumbrella\",\n\"rehab\",\n\"reise\",\n\"reisen\",\n\"reit\",\n\"reliance\",\n\"ren\",\n\"rent\",\n\"rentals\",\n\"repair\",\n\"report\",\n\"republican\",\n\"rest\",\n\"restaurant\",\n\"review\",\n\"reviews\",\n\"rexroth\",\n\"rich\",\n\"richardli\",\n\"ricoh\",\n\"rightathome\",\n\"ril\",\n\"rio\",\n\"rip\",\n\"rmit\",\n\"rocher\",\n\"rocks\",\n\"rodeo\",\n\"rogers\",\n\"room\",\n\"rsvp\",\n\"rugby\",\n\"ruhr\",\n\"run\",\n\"rwe\",\n\"ryukyu\",\n\"saarland\",\n\"safe\",\n\"safety\",\n\"sakura\",\n\"sale\",\n\"salon\",\n\"samsclub\",\n\"samsung\",\n\"sandvik\",\n\"sandvikcoromant\",\n\"sanofi\",\n\"sap\",\n\"sarl\",\n\"sas\",\n\"save\",\n\"saxo\",\n\"sbi\",\n\"sbs\",\n\"sca\",\n\"scb\",\n\"schaeffler\",\n\"schmidt\",\n\"scholarships\",\n\"school\",\n\"schule\",\n\"schwarz\",\n\"science\",\n\"scjohnson\",\n\"scor\",\n\"scot\",\n\"search\",\n\"seat\",\n\"secure\",\n\"security\",\n\"seek\",\n\"select\",\n\"sener\",\n\"services\",\n\"ses\",\n\"seven\",\n\"sew\",\n\"sex\",\n\"sexy\",\n\"sfr\",\n\"shangrila\",\n\"sharp\",\n\"shaw\",\n\"shell\",\n\"shia\",\n\"shiksha\",\n\"shoes\",\n\"shop\",\n\"shopping\",\n\"shouji\",\n\"show\",\n\"showtime\",\n\"shriram\",\n\"silk\",\n\"sina\",\n\"singles\",\n\"site\",\n\"ski\",\n\"skin\",\n\"sky\",\n\"skype\",\n\"sling\",\n\"smart\",\n\"smile\",\n\"sncf\",\n\"soccer\",\n\"social\",\n\"softbank\",\n\"software\",\n\"sohu\",\n\"solar\",\n\"solutions\",\n\"song\",\n\"sony\",\n\"soy\",\n\"spa\",\n\"space\",\n\"sport\",\n\"spot\",\n\"spreadbetting\",\n\"srl\",\n\"stada\",\n\"staples\",\n\"star\",\n\"statebank\",\n\"statefarm\",\n\"stc\",\n\"stcgroup\",\n\"stockholm\",\n\"storage\",\n\"store\",\n\"stream\",\n\"studio\",\n\"study\",\n\"style\",\n\"sucks\",\n\"supplies\",\n\"supply\",\n\"support\",\n\"surf\",\n\"surgery\",\n\"suzuki\",\n\"swatch\",\n\"swiftcover\",\n\"swiss\",\n\"sydney\",\n\"symantec\",\n\"systems\",\n\"tab\",\n\"taipei\",\n\"talk\",\n\"taobao\",\n\"target\",\n\"tatamotors\",\n\"tatar\",\n\"tattoo\",\n\"tax\",\n\"taxi\",\n\"tci\",\n\"tdk\",\n\"team\",\n\"tech\",\n\"technology\",\n\"temasek\",\n\"tennis\",\n\"teva\",\n\"thd\",\n\"theater\",\n\"theatre\",\n\"tiaa\",\n\"tickets\",\n\"tienda\",\n\"tiffany\",\n\"tips\",\n\"tires\",\n\"tirol\",\n\"tjmaxx\",\n\"tjx\",\n\"tkmaxx\",\n\"tmall\",\n\"today\",\n\"tokyo\",\n\"tools\",\n\"top\",\n\"toray\",\n\"toshiba\",\n\"total\",\n\"tours\",\n\"town\",\n\"toyota\",\n\"toys\",\n\"trade\",\n\"trading\",\n\"training\",\n\"travel\",\n\"travelchannel\",\n\"travelers\",\n\"travelersinsurance\",\n\"trust\",\n\"trv\",\n\"tube\",\n\"tui\",\n\"tunes\",\n\"tushu\",\n\"tvs\",\n\"ubank\",\n\"ubs\",\n\"unicom\",\n\"university\",\n\"uno\",\n\"uol\",\n\"ups\",\n\"vacations\",\n\"vana\",\n\"vanguard\",\n\"vegas\",\n\"ventures\",\n\"verisign\",\n\"versicherung\",\n\"vet\",\n\"viajes\",\n\"video\",\n\"vig\",\n\"viking\",\n\"villas\",\n\"vin\",\n\"vip\",\n\"virgin\",\n\"visa\",\n\"vision\",\n\"viva\",\n\"vivo\",\n\"vlaanderen\",\n\"vodka\",\n\"volkswagen\",\n\"volvo\",\n\"vote\",\n\"voting\",\n\"voto\",\n\"voyage\",\n\"vuelos\",\n\"wales\",\n\"walmart\",\n\"walter\",\n\"wang\",\n\"wanggou\",\n\"watch\",\n\"watches\",\n\"weather\",\n\"weatherchannel\",\n\"webcam\",\n\"weber\",\n\"website\",\n\"wed\",\n\"wedding\",\n\"weibo\",\n\"weir\",\n\"whoswho\",\n\"wien\",\n\"wiki\",\n\"williamhill\",\n\"win\",\n\"windows\",\n\"wine\",\n\"winners\",\n\"wme\",\n\"wolterskluwer\",\n\"woodside\",\n\"work\",\n\"works\",\n\"world\",\n\"wow\",\n\"wtc\",\n\"wtf\",\n\"xbox\",\n\"xerox\",\n\"xfinity\",\n\"xihuan\",\n\"xin\",\n\"कॉम\",\n\"セール\",\n\"佛山\",\n\"慈善\",\n\"集团\",\n\"在线\",\n\"大众汽车\",\n\"点看\",\n\"คอม\",\n\"八卦\",\n\"موقع\",\n\"公益\",\n\"公司\",\n\"香格里拉\",\n\"网站\",\n\"移动\",\n\"我爱你\",\n\"москва\",\n\"католик\",\n\"онлайн\",\n\"сайт\",\n\"联通\",\n\"קום\",\n\"时尚\",\n\"微博\",\n\"淡马锡\",\n\"ファッション\",\n\"орг\",\n\"नेट\",\n\"ストア\",\n\"アマゾン\",\n\"삼성\",\n\"商标\",\n\"商店\",\n\"商城\",\n\"дети\",\n\"ポイント\",\n\"新闻\",\n\"工行\",\n\"家電\",\n\"كوم\",\n\"中文网\",\n\"中信\",\n\"娱乐\",\n\"谷歌\",\n\"電訊盈科\",\n\"购物\",\n\"クラウド\",\n\"通販\",\n\"网店\",\n\"संगठन\",\n\"餐厅\",\n\"网络\",\n\"ком\",\n\"亚马逊\",\n\"诺基亚\",\n\"食品\",\n\"飞利浦\",\n\"手表\",\n\"手机\",\n\"ارامكو\",\n\"العليان\",\n\"اتصالات\",\n\"بازار\",\n\"ابوظبي\",\n\"كاثوليك\",\n\"همراه\",\n\"닷컴\",\n\"政府\",\n\"شبكة\",\n\"بيتك\",\n\"عرب\",\n\"机构\",\n\"组织机构\",\n\"健康\",\n\"招聘\",\n\"рус\",\n\"珠宝\",\n\"大拿\",\n\"みんな\",\n\"グーグル\",\n\"世界\",\n\"書籍\",\n\"网址\",\n\"닷넷\",\n\"コム\",\n\"天主教\",\n\"游戏\",\n\"vermögensberater\",\n\"vermögensberatung\",\n\"企业\",\n\"信息\",\n\"嘉里大酒店\",\n\"嘉里\",\n\"广东\",\n\"政务\",\n\"xyz\",\n\"yachts\",\n\"yahoo\",\n\"yamaxun\",\n\"yandex\",\n\"yodobashi\",\n\"yoga\",\n\"yokohama\",\n\"you\",\n\"youtube\",\n\"yun\",\n\"zappos\",\n\"zara\",\n\"zero\",\n\"zip\",\n\"zone\",\n\"zuerich\",\n\"cc.ua\",\n\"inf.ua\",\n\"ltd.ua\",\n\"adobeaemcloud.com\",\n\"adobeaemcloud.net\",\n\"*.dev.adobeaemcloud.com\",\n\"beep.pl\",\n\"barsy.ca\",\n\"*.compute.estate\",\n\"*.alces.network\",\n\"altervista.org\",\n\"alwaysdata.net\",\n\"cloudfront.net\",\n\"*.compute.amazonaws.com\",\n\"*.compute-1.amazonaws.com\",\n\"*.compute.amazonaws.com.cn\",\n\"us-east-1.amazonaws.com\",\n\"cn-north-1.eb.amazonaws.com.cn\",\n\"cn-northwest-1.eb.amazonaws.com.cn\",\n\"elasticbeanstalk.com\",\n\"ap-northeast-1.elasticbeanstalk.com\",\n\"ap-northeast-2.elasticbeanstalk.com\",\n\"ap-northeast-3.elasticbeanstalk.com\",\n\"ap-south-1.elasticbeanstalk.com\",\n\"ap-southeast-1.elasticbeanstalk.com\",\n\"ap-southeast-2.elasticbeanstalk.com\",\n\"ca-central-1.elasticbeanstalk.com\",\n\"eu-central-1.elasticbeanstalk.com\",\n\"eu-west-1.elasticbeanstalk.com\",\n\"eu-west-2.elasticbeanstalk.com\",\n\"eu-west-3.elasticbeanstalk.com\",\n\"sa-east-1.elasticbeanstalk.com\",\n\"us-east-1.elasticbeanstalk.com\",\n\"us-east-2.elasticbeanstalk.com\",\n\"us-gov-west-1.elasticbeanstalk.com\",\n\"us-west-1.elasticbeanstalk.com\",\n\"us-west-2.elasticbeanstalk.com\",\n\"*.elb.amazonaws.com\",\n\"*.elb.amazonaws.com.cn\",\n\"s3.amazonaws.com\",\n\"s3-ap-northeast-1.amazonaws.com\",\n\"s3-ap-northeast-2.amazonaws.com\",\n\"s3-ap-south-1.amazonaws.com\",\n\"s3-ap-southeast-1.amazonaws.com\",\n\"s3-ap-southeast-2.amazonaws.com\",\n\"s3-ca-central-1.amazonaws.com\",\n\"s3-eu-central-1.amazonaws.com\",\n\"s3-eu-west-1.amazonaws.com\",\n\"s3-eu-west-2.amazonaws.com\",\n\"s3-eu-west-3.amazonaws.com\",\n\"s3-external-1.amazonaws.com\",\n\"s3-fips-us-gov-west-1.amazonaws.com\",\n\"s3-sa-east-1.amazonaws.com\",\n\"s3-us-gov-west-1.amazonaws.com\",\n\"s3-us-east-2.amazonaws.com\",\n\"s3-us-west-1.amazonaws.com\",\n\"s3-us-west-2.amazonaws.com\",\n\"s3.ap-northeast-2.amazonaws.com\",\n\"s3.ap-south-1.amazonaws.com\",\n\"s3.cn-north-1.amazonaws.com.cn\",\n\"s3.ca-central-1.amazonaws.com\",\n\"s3.eu-central-1.amazonaws.com\",\n\"s3.eu-west-2.amazonaws.com\",\n\"s3.eu-west-3.amazonaws.com\",\n\"s3.us-east-2.amazonaws.com\",\n\"s3.dualstack.ap-northeast-1.amazonaws.com\",\n\"s3.dualstack.ap-northeast-2.amazonaws.com\",\n\"s3.dualstack.ap-south-1.amazonaws.com\",\n\"s3.dualstack.ap-southeast-1.amazonaws.com\",\n\"s3.dualstack.ap-southeast-2.amazonaws.com\",\n\"s3.dualstack.ca-central-1.amazonaws.com\",\n\"s3.dualstack.eu-central-1.amazonaws.com\",\n\"s3.dualstack.eu-west-1.amazonaws.com\",\n\"s3.dualstack.eu-west-2.amazonaws.com\",\n\"s3.dualstack.eu-west-3.amazonaws.com\",\n\"s3.dualstack.sa-east-1.amazonaws.com\",\n\"s3.dualstack.us-east-1.amazonaws.com\",\n\"s3.dualstack.us-east-2.amazonaws.com\",\n\"s3-website-us-east-1.amazonaws.com\",\n\"s3-website-us-west-1.amazonaws.com\",\n\"s3-website-us-west-2.amazonaws.com\",\n\"s3-website-ap-northeast-1.amazonaws.com\",\n\"s3-website-ap-southeast-1.amazonaws.com\",\n\"s3-website-ap-southeast-2.amazonaws.com\",\n\"s3-website-eu-west-1.amazonaws.com\",\n\"s3-website-sa-east-1.amazonaws.com\",\n\"s3-website.ap-northeast-2.amazonaws.com\",\n\"s3-website.ap-south-1.amazonaws.com\",\n\"s3-website.ca-central-1.amazonaws.com\",\n\"s3-website.eu-central-1.amazonaws.com\",\n\"s3-website.eu-west-2.amazonaws.com\",\n\"s3-website.eu-west-3.amazonaws.com\",\n\"s3-website.us-east-2.amazonaws.com\",\n\"amsw.nl\",\n\"t3l3p0rt.net\",\n\"tele.amune.org\",\n\"apigee.io\",\n\"on-aptible.com\",\n\"user.aseinet.ne.jp\",\n\"gv.vc\",\n\"d.gv.vc\",\n\"user.party.eus\",\n\"pimienta.org\",\n\"poivron.org\",\n\"potager.org\",\n\"sweetpepper.org\",\n\"myasustor.com\",\n\"myfritz.net\",\n\"*.awdev.ca\",\n\"*.advisor.ws\",\n\"b-data.io\",\n\"backplaneapp.io\",\n\"balena-devices.com\",\n\"app.banzaicloud.io\",\n\"betainabox.com\",\n\"bnr.la\",\n\"blackbaudcdn.net\",\n\"boomla.net\",\n\"boxfuse.io\",\n\"square7.ch\",\n\"bplaced.com\",\n\"bplaced.de\",\n\"square7.de\",\n\"bplaced.net\",\n\"square7.net\",\n\"browsersafetymark.io\",\n\"uk0.bigv.io\",\n\"dh.bytemark.co.uk\",\n\"vm.bytemark.co.uk\",\n\"mycd.eu\",\n\"carrd.co\",\n\"crd.co\",\n\"uwu.ai\",\n\"ae.org\",\n\"ar.com\",\n\"br.com\",\n\"cn.com\",\n\"com.de\",\n\"com.se\",\n\"de.com\",\n\"eu.com\",\n\"gb.com\",\n\"gb.net\",\n\"hu.com\",\n\"hu.net\",\n\"jp.net\",\n\"jpn.com\",\n\"kr.com\",\n\"mex.com\",\n\"no.com\",\n\"qc.com\",\n\"ru.com\",\n\"sa.com\",\n\"se.net\",\n\"uk.com\",\n\"uk.net\",\n\"us.com\",\n\"uy.com\",\n\"za.bz\",\n\"za.com\",\n\"africa.com\",\n\"gr.com\",\n\"in.net\",\n\"us.org\",\n\"co.com\",\n\"c.la\",\n\"certmgr.org\",\n\"xenapponazure.com\",\n\"discourse.group\",\n\"discourse.team\",\n\"virtueeldomein.nl\",\n\"cleverapps.io\",\n\"*.lcl.dev\",\n\"*.stg.dev\",\n\"c66.me\",\n\"cloud66.ws\",\n\"cloud66.zone\",\n\"jdevcloud.com\",\n\"wpdevcloud.com\",\n\"cloudaccess.host\",\n\"freesite.host\",\n\"cloudaccess.net\",\n\"cloudcontrolled.com\",\n\"cloudcontrolapp.com\",\n\"cloudera.site\",\n\"trycloudflare.com\",\n\"workers.dev\",\n\"wnext.app\",\n\"co.ca\",\n\"*.otap.co\",\n\"co.cz\",\n\"c.cdn77.org\",\n\"cdn77-ssl.net\",\n\"r.cdn77.net\",\n\"rsc.cdn77.org\",\n\"ssl.origin.cdn77-secure.org\",\n\"cloudns.asia\",\n\"cloudns.biz\",\n\"cloudns.club\",\n\"cloudns.cc\",\n\"cloudns.eu\",\n\"cloudns.in\",\n\"cloudns.info\",\n\"cloudns.org\",\n\"cloudns.pro\",\n\"cloudns.pw\",\n\"cloudns.us\",\n\"cloudeity.net\",\n\"cnpy.gdn\",\n\"co.nl\",\n\"co.no\",\n\"webhosting.be\",\n\"hosting-cluster.nl\",\n\"ac.ru\",\n\"edu.ru\",\n\"gov.ru\",\n\"int.ru\",\n\"mil.ru\",\n\"test.ru\",\n\"dyn.cosidns.de\",\n\"dynamisches-dns.de\",\n\"dnsupdater.de\",\n\"internet-dns.de\",\n\"l-o-g-i-n.de\",\n\"dynamic-dns.info\",\n\"feste-ip.net\",\n\"knx-server.net\",\n\"static-access.net\",\n\"realm.cz\",\n\"*.cryptonomic.net\",\n\"cupcake.is\",\n\"*.customer-oci.com\",\n\"*.oci.customer-oci.com\",\n\"*.ocp.customer-oci.com\",\n\"*.ocs.customer-oci.com\",\n\"cyon.link\",\n\"cyon.site\",\n\"daplie.me\",\n\"localhost.daplie.me\",\n\"dattolocal.com\",\n\"dattorelay.com\",\n\"dattoweb.com\",\n\"mydatto.com\",\n\"dattolocal.net\",\n\"mydatto.net\",\n\"biz.dk\",\n\"co.dk\",\n\"firm.dk\",\n\"reg.dk\",\n\"store.dk\",\n\"*.dapps.earth\",\n\"*.bzz.dapps.earth\",\n\"builtwithdark.com\",\n\"edgestack.me\",\n\"debian.net\",\n\"dedyn.io\",\n\"dnshome.de\",\n\"online.th\",\n\"shop.th\",\n\"drayddns.com\",\n\"dreamhosters.com\",\n\"mydrobo.com\",\n\"drud.io\",\n\"drud.us\",\n\"duckdns.org\",\n\"dy.fi\",\n\"tunk.org\",\n\"dyndns-at-home.com\",\n\"dyndns-at-work.com\",\n\"dyndns-blog.com\",\n\"dyndns-free.com\",\n\"dyndns-home.com\",\n\"dyndns-ip.com\",\n\"dyndns-mail.com\",\n\"dyndns-office.com\",\n\"dyndns-pics.com\",\n\"dyndns-remote.com\",\n\"dyndns-server.com\",\n\"dyndns-web.com\",\n\"dyndns-wiki.com\",\n\"dyndns-work.com\",\n\"dyndns.biz\",\n\"dyndns.info\",\n\"dyndns.org\",\n\"dyndns.tv\",\n\"at-band-camp.net\",\n\"ath.cx\",\n\"barrel-of-knowledge.info\",\n\"barrell-of-knowledge.info\",\n\"better-than.tv\",\n\"blogdns.com\",\n\"blogdns.net\",\n\"blogdns.org\",\n\"blogsite.org\",\n\"boldlygoingnowhere.org\",\n\"broke-it.net\",\n\"buyshouses.net\",\n\"cechire.com\",\n\"dnsalias.com\",\n\"dnsalias.net\",\n\"dnsalias.org\",\n\"dnsdojo.com\",\n\"dnsdojo.net\",\n\"dnsdojo.org\",\n\"does-it.net\",\n\"doesntexist.com\",\n\"doesntexist.org\",\n\"dontexist.com\",\n\"dontexist.net\",\n\"dontexist.org\",\n\"doomdns.com\",\n\"doomdns.org\",\n\"dvrdns.org\",\n\"dyn-o-saur.com\",\n\"dynalias.com\",\n\"dynalias.net\",\n\"dynalias.org\",\n\"dynathome.net\",\n\"dyndns.ws\",\n\"endofinternet.net\",\n\"endofinternet.org\",\n\"endoftheinternet.org\",\n\"est-a-la-maison.com\",\n\"est-a-la-masion.com\",\n\"est-le-patron.com\",\n\"est-mon-blogueur.com\",\n\"for-better.biz\",\n\"for-more.biz\",\n\"for-our.info\",\n\"for-some.biz\",\n\"for-the.biz\",\n\"forgot.her.name\",\n\"forgot.his.name\",\n\"from-ak.com\",\n\"from-al.com\",\n\"from-ar.com\",\n\"from-az.net\",\n\"from-ca.com\",\n\"from-co.net\",\n\"from-ct.com\",\n\"from-dc.com\",\n\"from-de.com\",\n\"from-fl.com\",\n\"from-ga.com\",\n\"from-hi.com\",\n\"from-ia.com\",\n\"from-id.com\",\n\"from-il.com\",\n\"from-in.com\",\n\"from-ks.com\",\n\"from-ky.com\",\n\"from-la.net\",\n\"from-ma.com\",\n\"from-md.com\",\n\"from-me.org\",\n\"from-mi.com\",\n\"from-mn.com\",\n\"from-mo.com\",\n\"from-ms.com\",\n\"from-mt.com\",\n\"from-nc.com\",\n\"from-nd.com\",\n\"from-ne.com\",\n\"from-nh.com\",\n\"from-nj.com\",\n\"from-nm.com\",\n\"from-nv.com\",\n\"from-ny.net\",\n\"from-oh.com\",\n\"from-ok.com\",\n\"from-or.com\",\n\"from-pa.com\",\n\"from-pr.com\",\n\"from-ri.com\",\n\"from-sc.com\",\n\"from-sd.com\",\n\"from-tn.com\",\n\"from-tx.com\",\n\"from-ut.com\",\n\"from-va.com\",\n\"from-vt.com\",\n\"from-wa.com\",\n\"from-wi.com\",\n\"from-wv.com\",\n\"from-wy.com\",\n\"ftpaccess.cc\",\n\"fuettertdasnetz.de\",\n\"game-host.org\",\n\"game-server.cc\",\n\"getmyip.com\",\n\"gets-it.net\",\n\"go.dyndns.org\",\n\"gotdns.com\",\n\"gotdns.org\",\n\"groks-the.info\",\n\"groks-this.info\",\n\"ham-radio-op.net\",\n\"here-for-more.info\",\n\"hobby-site.com\",\n\"hobby-site.org\",\n\"home.dyndns.org\",\n\"homedns.org\",\n\"homeftp.net\",\n\"homeftp.org\",\n\"homeip.net\",\n\"homelinux.com\",\n\"homelinux.net\",\n\"homelinux.org\",\n\"homeunix.com\",\n\"homeunix.net\",\n\"homeunix.org\",\n\"iamallama.com\",\n\"in-the-band.net\",\n\"is-a-anarchist.com\",\n\"is-a-blogger.com\",\n\"is-a-bookkeeper.com\",\n\"is-a-bruinsfan.org\",\n\"is-a-bulls-fan.com\",\n\"is-a-candidate.org\",\n\"is-a-caterer.com\",\n\"is-a-celticsfan.org\",\n\"is-a-chef.com\",\n\"is-a-chef.net\",\n\"is-a-chef.org\",\n\"is-a-conservative.com\",\n\"is-a-cpa.com\",\n\"is-a-cubicle-slave.com\",\n\"is-a-democrat.com\",\n\"is-a-designer.com\",\n\"is-a-doctor.com\",\n\"is-a-financialadvisor.com\",\n\"is-a-geek.com\",\n\"is-a-geek.net\",\n\"is-a-geek.org\",\n\"is-a-green.com\",\n\"is-a-guru.com\",\n\"is-a-hard-worker.com\",\n\"is-a-hunter.com\",\n\"is-a-knight.org\",\n\"is-a-landscaper.com\",\n\"is-a-lawyer.com\",\n\"is-a-liberal.com\",\n\"is-a-libertarian.com\",\n\"is-a-linux-user.org\",\n\"is-a-llama.com\",\n\"is-a-musician.com\",\n\"is-a-nascarfan.com\",\n\"is-a-nurse.com\",\n\"is-a-painter.com\",\n\"is-a-patsfan.org\",\n\"is-a-personaltrainer.com\",\n\"is-a-photographer.com\",\n\"is-a-player.com\",\n\"is-a-republican.com\",\n\"is-a-rockstar.com\",\n\"is-a-socialist.com\",\n\"is-a-soxfan.org\",\n\"is-a-student.com\",\n\"is-a-teacher.com\",\n\"is-a-techie.com\",\n\"is-a-therapist.com\",\n\"is-an-accountant.com\",\n\"is-an-actor.com\",\n\"is-an-actress.com\",\n\"is-an-anarchist.com\",\n\"is-an-artist.com\",\n\"is-an-engineer.com\",\n\"is-an-entertainer.com\",\n\"is-by.us\",\n\"is-certified.com\",\n\"is-found.org\",\n\"is-gone.com\",\n\"is-into-anime.com\",\n\"is-into-cars.com\",\n\"is-into-cartoons.com\",\n\"is-into-games.com\",\n\"is-leet.com\",\n\"is-lost.org\",\n\"is-not-certified.com\",\n\"is-saved.org\",\n\"is-slick.com\",\n\"is-uberleet.com\",\n\"is-very-bad.org\",\n\"is-very-evil.org\",\n\"is-very-good.org\",\n\"is-very-nice.org\",\n\"is-very-sweet.org\",\n\"is-with-theband.com\",\n\"isa-geek.com\",\n\"isa-geek.net\",\n\"isa-geek.org\",\n\"isa-hockeynut.com\",\n\"issmarterthanyou.com\",\n\"isteingeek.de\",\n\"istmein.de\",\n\"kicks-ass.net\",\n\"kicks-ass.org\",\n\"knowsitall.info\",\n\"land-4-sale.us\",\n\"lebtimnetz.de\",\n\"leitungsen.de\",\n\"likes-pie.com\",\n\"likescandy.com\",\n\"merseine.nu\",\n\"mine.nu\",\n\"misconfused.org\",\n\"mypets.ws\",\n\"myphotos.cc\",\n\"neat-url.com\",\n\"office-on-the.net\",\n\"on-the-web.tv\",\n\"podzone.net\",\n\"podzone.org\",\n\"readmyblog.org\",\n\"saves-the-whales.com\",\n\"scrapper-site.net\",\n\"scrapping.cc\",\n\"selfip.biz\",\n\"selfip.com\",\n\"selfip.info\",\n\"selfip.net\",\n\"selfip.org\",\n\"sells-for-less.com\",\n\"sells-for-u.com\",\n\"sells-it.net\",\n\"sellsyourhome.org\",\n\"servebbs.com\",\n\"servebbs.net\",\n\"servebbs.org\",\n\"serveftp.net\",\n\"serveftp.org\",\n\"servegame.org\",\n\"shacknet.nu\",\n\"simple-url.com\",\n\"space-to-rent.com\",\n\"stuff-4-sale.org\",\n\"stuff-4-sale.us\",\n\"teaches-yoga.com\",\n\"thruhere.net\",\n\"traeumtgerade.de\",\n\"webhop.biz\",\n\"webhop.info\",\n\"webhop.net\",\n\"webhop.org\",\n\"worse-than.tv\",\n\"writesthisblog.com\",\n\"ddnss.de\",\n\"dyn.ddnss.de\",\n\"dyndns.ddnss.de\",\n\"dyndns1.de\",\n\"dyn-ip24.de\",\n\"home-webserver.de\",\n\"dyn.home-webserver.de\",\n\"myhome-server.de\",\n\"ddnss.org\",\n\"definima.net\",\n\"definima.io\",\n\"bci.dnstrace.pro\",\n\"ddnsfree.com\",\n\"ddnsgeek.com\",\n\"giize.com\",\n\"gleeze.com\",\n\"kozow.com\",\n\"loseyourip.com\",\n\"ooguy.com\",\n\"theworkpc.com\",\n\"casacam.net\",\n\"dynu.net\",\n\"accesscam.org\",\n\"camdvr.org\",\n\"freeddns.org\",\n\"mywire.org\",\n\"webredirect.org\",\n\"myddns.rocks\",\n\"blogsite.xyz\",\n\"dynv6.net\",\n\"e4.cz\",\n\"en-root.fr\",\n\"mytuleap.com\",\n\"onred.one\",\n\"staging.onred.one\",\n\"enonic.io\",\n\"customer.enonic.io\",\n\"eu.org\",\n\"al.eu.org\",\n\"asso.eu.org\",\n\"at.eu.org\",\n\"au.eu.org\",\n\"be.eu.org\",\n\"bg.eu.org\",\n\"ca.eu.org\",\n\"cd.eu.org\",\n\"ch.eu.org\",\n\"cn.eu.org\",\n\"cy.eu.org\",\n\"cz.eu.org\",\n\"de.eu.org\",\n\"dk.eu.org\",\n\"edu.eu.org\",\n\"ee.eu.org\",\n\"es.eu.org\",\n\"fi.eu.org\",\n\"fr.eu.org\",\n\"gr.eu.org\",\n\"hr.eu.org\",\n\"hu.eu.org\",\n\"ie.eu.org\",\n\"il.eu.org\",\n\"in.eu.org\",\n\"int.eu.org\",\n\"is.eu.org\",\n\"it.eu.org\",\n\"jp.eu.org\",\n\"kr.eu.org\",\n\"lt.eu.org\",\n\"lu.eu.org\",\n\"lv.eu.org\",\n\"mc.eu.org\",\n\"me.eu.org\",\n\"mk.eu.org\",\n\"mt.eu.org\",\n\"my.eu.org\",\n\"net.eu.org\",\n\"ng.eu.org\",\n\"nl.eu.org\",\n\"no.eu.org\",\n\"nz.eu.org\",\n\"paris.eu.org\",\n\"pl.eu.org\",\n\"pt.eu.org\",\n\"q-a.eu.org\",\n\"ro.eu.org\",\n\"ru.eu.org\",\n\"se.eu.org\",\n\"si.eu.org\",\n\"sk.eu.org\",\n\"tr.eu.org\",\n\"uk.eu.org\",\n\"us.eu.org\",\n\"eu-1.evennode.com\",\n\"eu-2.evennode.com\",\n\"eu-3.evennode.com\",\n\"eu-4.evennode.com\",\n\"us-1.evennode.com\",\n\"us-2.evennode.com\",\n\"us-3.evennode.com\",\n\"us-4.evennode.com\",\n\"twmail.cc\",\n\"twmail.net\",\n\"twmail.org\",\n\"mymailer.com.tw\",\n\"url.tw\",\n\"apps.fbsbx.com\",\n\"ru.net\",\n\"adygeya.ru\",\n\"bashkiria.ru\",\n\"bir.ru\",\n\"cbg.ru\",\n\"com.ru\",\n\"dagestan.ru\",\n\"grozny.ru\",\n\"kalmykia.ru\",\n\"kustanai.ru\",\n\"marine.ru\",\n\"mordovia.ru\",\n\"msk.ru\",\n\"mytis.ru\",\n\"nalchik.ru\",\n\"nov.ru\",\n\"pyatigorsk.ru\",\n\"spb.ru\",\n\"vladikavkaz.ru\",\n\"vladimir.ru\",\n\"abkhazia.su\",\n\"adygeya.su\",\n\"aktyubinsk.su\",\n\"arkhangelsk.su\",\n\"armenia.su\",\n\"ashgabad.su\",\n\"azerbaijan.su\",\n\"balashov.su\",\n\"bashkiria.su\",\n\"bryansk.su\",\n\"bukhara.su\",\n\"chimkent.su\",\n\"dagestan.su\",\n\"east-kazakhstan.su\",\n\"exnet.su\",\n\"georgia.su\",\n\"grozny.su\",\n\"ivanovo.su\",\n\"jambyl.su\",\n\"kalmykia.su\",\n\"kaluga.su\",\n\"karacol.su\",\n\"karaganda.su\",\n\"karelia.su\",\n\"khakassia.su\",\n\"krasnodar.su\",\n\"kurgan.su\",\n\"kustanai.su\",\n\"lenug.su\",\n\"mangyshlak.su\",\n\"mordovia.su\",\n\"msk.su\",\n\"murmansk.su\",\n\"nalchik.su\",\n\"navoi.su\",\n\"north-kazakhstan.su\",\n\"nov.su\",\n\"obninsk.su\",\n\"penza.su\",\n\"pokrovsk.su\",\n\"sochi.su\",\n\"spb.su\",\n\"tashkent.su\",\n\"termez.su\",\n\"togliatti.su\",\n\"troitsk.su\",\n\"tselinograd.su\",\n\"tula.su\",\n\"tuva.su\",\n\"vladikavkaz.su\",\n\"vladimir.su\",\n\"vologda.su\",\n\"channelsdvr.net\",\n\"u.channelsdvr.net\",\n\"fastly-terrarium.com\",\n\"fastlylb.net\",\n\"map.fastlylb.net\",\n\"freetls.fastly.net\",\n\"map.fastly.net\",\n\"a.prod.fastly.net\",\n\"global.prod.fastly.net\",\n\"a.ssl.fastly.net\",\n\"b.ssl.fastly.net\",\n\"global.ssl.fastly.net\",\n\"fastpanel.direct\",\n\"fastvps-server.com\",\n\"fhapp.xyz\",\n\"fedorainfracloud.org\",\n\"fedorapeople.org\",\n\"cloud.fedoraproject.org\",\n\"app.os.fedoraproject.org\",\n\"app.os.stg.fedoraproject.org\",\n\"mydobiss.com\",\n\"filegear.me\",\n\"filegear-au.me\",\n\"filegear-de.me\",\n\"filegear-gb.me\",\n\"filegear-ie.me\",\n\"filegear-jp.me\",\n\"filegear-sg.me\",\n\"firebaseapp.com\",\n\"flynnhub.com\",\n\"flynnhosting.net\",\n\"0e.vc\",\n\"freebox-os.com\",\n\"freeboxos.com\",\n\"fbx-os.fr\",\n\"fbxos.fr\",\n\"freebox-os.fr\",\n\"freeboxos.fr\",\n\"freedesktop.org\",\n\"*.futurecms.at\",\n\"*.ex.futurecms.at\",\n\"*.in.futurecms.at\",\n\"futurehosting.at\",\n\"futuremailing.at\",\n\"*.ex.ortsinfo.at\",\n\"*.kunden.ortsinfo.at\",\n\"*.statics.cloud\",\n\"service.gov.uk\",\n\"gehirn.ne.jp\",\n\"usercontent.jp\",\n\"gentapps.com\",\n\"lab.ms\",\n\"github.io\",\n\"githubusercontent.com\",\n\"gitlab.io\",\n\"glitch.me\",\n\"lolipop.io\",\n\"cloudapps.digital\",\n\"london.cloudapps.digital\",\n\"homeoffice.gov.uk\",\n\"ro.im\",\n\"shop.ro\",\n\"goip.de\",\n\"run.app\",\n\"a.run.app\",\n\"web.app\",\n\"*.0emm.com\",\n\"appspot.com\",\n\"*.r.appspot.com\",\n\"blogspot.ae\",\n\"blogspot.al\",\n\"blogspot.am\",\n\"blogspot.ba\",\n\"blogspot.be\",\n\"blogspot.bg\",\n\"blogspot.bj\",\n\"blogspot.ca\",\n\"blogspot.cf\",\n\"blogspot.ch\",\n\"blogspot.cl\",\n\"blogspot.co.at\",\n\"blogspot.co.id\",\n\"blogspot.co.il\",\n\"blogspot.co.ke\",\n\"blogspot.co.nz\",\n\"blogspot.co.uk\",\n\"blogspot.co.za\",\n\"blogspot.com\",\n\"blogspot.com.ar\",\n\"blogspot.com.au\",\n\"blogspot.com.br\",\n\"blogspot.com.by\",\n\"blogspot.com.co\",\n\"blogspot.com.cy\",\n\"blogspot.com.ee\",\n\"blogspot.com.eg\",\n\"blogspot.com.es\",\n\"blogspot.com.mt\",\n\"blogspot.com.ng\",\n\"blogspot.com.tr\",\n\"blogspot.com.uy\",\n\"blogspot.cv\",\n\"blogspot.cz\",\n\"blogspot.de\",\n\"blogspot.dk\",\n\"blogspot.fi\",\n\"blogspot.fr\",\n\"blogspot.gr\",\n\"blogspot.hk\",\n\"blogspot.hr\",\n\"blogspot.hu\",\n\"blogspot.ie\",\n\"blogspot.in\",\n\"blogspot.is\",\n\"blogspot.it\",\n\"blogspot.jp\",\n\"blogspot.kr\",\n\"blogspot.li\",\n\"blogspot.lt\",\n\"blogspot.lu\",\n\"blogspot.md\",\n\"blogspot.mk\",\n\"blogspot.mr\",\n\"blogspot.mx\",\n\"blogspot.my\",\n\"blogspot.nl\",\n\"blogspot.no\",\n\"blogspot.pe\",\n\"blogspot.pt\",\n\"blogspot.qa\",\n\"blogspot.re\",\n\"blogspot.ro\",\n\"blogspot.rs\",\n\"blogspot.ru\",\n\"blogspot.se\",\n\"blogspot.sg\",\n\"blogspot.si\",\n\"blogspot.sk\",\n\"blogspot.sn\",\n\"blogspot.td\",\n\"blogspot.tw\",\n\"blogspot.ug\",\n\"blogspot.vn\",\n\"cloudfunctions.net\",\n\"cloud.goog\",\n\"codespot.com\",\n\"googleapis.com\",\n\"googlecode.com\",\n\"pagespeedmobilizer.com\",\n\"publishproxy.com\",\n\"withgoogle.com\",\n\"withyoutube.com\",\n\"awsmppl.com\",\n\"fin.ci\",\n\"free.hr\",\n\"caa.li\",\n\"ua.rs\",\n\"conf.se\",\n\"hs.zone\",\n\"hs.run\",\n\"hashbang.sh\",\n\"hasura.app\",\n\"hasura-app.io\",\n\"hepforge.org\",\n\"herokuapp.com\",\n\"herokussl.com\",\n\"myravendb.com\",\n\"ravendb.community\",\n\"ravendb.me\",\n\"development.run\",\n\"ravendb.run\",\n\"bpl.biz\",\n\"orx.biz\",\n\"ng.city\",\n\"biz.gl\",\n\"ng.ink\",\n\"col.ng\",\n\"firm.ng\",\n\"gen.ng\",\n\"ltd.ng\",\n\"ngo.ng\",\n\"ng.school\",\n\"sch.so\",\n\"häkkinen.fi\",\n\"*.moonscale.io\",\n\"moonscale.net\",\n\"iki.fi\",\n\"dyn-berlin.de\",\n\"in-berlin.de\",\n\"in-brb.de\",\n\"in-butter.de\",\n\"in-dsl.de\",\n\"in-dsl.net\",\n\"in-dsl.org\",\n\"in-vpn.de\",\n\"in-vpn.net\",\n\"in-vpn.org\",\n\"biz.at\",\n\"info.at\",\n\"info.cx\",\n\"ac.leg.br\",\n\"al.leg.br\",\n\"am.leg.br\",\n\"ap.leg.br\",\n\"ba.leg.br\",\n\"ce.leg.br\",\n\"df.leg.br\",\n\"es.leg.br\",\n\"go.leg.br\",\n\"ma.leg.br\",\n\"mg.leg.br\",\n\"ms.leg.br\",\n\"mt.leg.br\",\n\"pa.leg.br\",\n\"pb.leg.br\",\n\"pe.leg.br\",\n\"pi.leg.br\",\n\"pr.leg.br\",\n\"rj.leg.br\",\n\"rn.leg.br\",\n\"ro.leg.br\",\n\"rr.leg.br\",\n\"rs.leg.br\",\n\"sc.leg.br\",\n\"se.leg.br\",\n\"sp.leg.br\",\n\"to.leg.br\",\n\"pixolino.com\",\n\"ipifony.net\",\n\"mein-iserv.de\",\n\"test-iserv.de\",\n\"iserv.dev\",\n\"iobb.net\",\n\"myjino.ru\",\n\"*.hosting.myjino.ru\",\n\"*.landing.myjino.ru\",\n\"*.spectrum.myjino.ru\",\n\"*.vps.myjino.ru\",\n\"*.triton.zone\",\n\"*.cns.joyent.com\",\n\"js.org\",\n\"kaas.gg\",\n\"khplay.nl\",\n\"keymachine.de\",\n\"kinghost.net\",\n\"uni5.net\",\n\"knightpoint.systems\",\n\"oya.to\",\n\"co.krd\",\n\"edu.krd\",\n\"git-repos.de\",\n\"lcube-server.de\",\n\"svn-repos.de\",\n\"leadpages.co\",\n\"lpages.co\",\n\"lpusercontent.com\",\n\"lelux.site\",\n\"co.business\",\n\"co.education\",\n\"co.events\",\n\"co.financial\",\n\"co.network\",\n\"co.place\",\n\"co.technology\",\n\"app.lmpm.com\",\n\"linkitools.space\",\n\"linkyard.cloud\",\n\"linkyard-cloud.ch\",\n\"members.linode.com\",\n\"nodebalancer.linode.com\",\n\"we.bs\",\n\"loginline.app\",\n\"loginline.dev\",\n\"loginline.io\",\n\"loginline.services\",\n\"loginline.site\",\n\"krasnik.pl\",\n\"leczna.pl\",\n\"lubartow.pl\",\n\"lublin.pl\",\n\"poniatowa.pl\",\n\"swidnik.pl\",\n\"uklugs.org\",\n\"glug.org.uk\",\n\"lug.org.uk\",\n\"lugs.org.uk\",\n\"barsy.bg\",\n\"barsy.co.uk\",\n\"barsyonline.co.uk\",\n\"barsycenter.com\",\n\"barsyonline.com\",\n\"barsy.club\",\n\"barsy.de\",\n\"barsy.eu\",\n\"barsy.in\",\n\"barsy.info\",\n\"barsy.io\",\n\"barsy.me\",\n\"barsy.menu\",\n\"barsy.mobi\",\n\"barsy.net\",\n\"barsy.online\",\n\"barsy.org\",\n\"barsy.pro\",\n\"barsy.pub\",\n\"barsy.shop\",\n\"barsy.site\",\n\"barsy.support\",\n\"barsy.uk\",\n\"*.magentosite.cloud\",\n\"mayfirst.info\",\n\"mayfirst.org\",\n\"hb.cldmail.ru\",\n\"miniserver.com\",\n\"memset.net\",\n\"cloud.metacentrum.cz\",\n\"custom.metacentrum.cz\",\n\"flt.cloud.muni.cz\",\n\"usr.cloud.muni.cz\",\n\"meteorapp.com\",\n\"eu.meteorapp.com\",\n\"co.pl\",\n\"azurecontainer.io\",\n\"azurewebsites.net\",\n\"azure-mobile.net\",\n\"cloudapp.net\",\n\"mozilla-iot.org\",\n\"bmoattachments.org\",\n\"net.ru\",\n\"org.ru\",\n\"pp.ru\",\n\"ui.nabu.casa\",\n\"pony.club\",\n\"of.fashion\",\n\"on.fashion\",\n\"of.football\",\n\"in.london\",\n\"of.london\",\n\"for.men\",\n\"and.mom\",\n\"for.mom\",\n\"for.one\",\n\"for.sale\",\n\"of.work\",\n\"to.work\",\n\"nctu.me\",\n\"bitballoon.com\",\n\"netlify.com\",\n\"4u.com\",\n\"ngrok.io\",\n\"nh-serv.co.uk\",\n\"nfshost.com\",\n\"dnsking.ch\",\n\"mypi.co\",\n\"n4t.co\",\n\"001www.com\",\n\"ddnslive.com\",\n\"myiphost.com\",\n\"forumz.info\",\n\"16-b.it\",\n\"32-b.it\",\n\"64-b.it\",\n\"soundcast.me\",\n\"tcp4.me\",\n\"dnsup.net\",\n\"hicam.net\",\n\"now-dns.net\",\n\"ownip.net\",\n\"vpndns.net\",\n\"dynserv.org\",\n\"now-dns.org\",\n\"x443.pw\",\n\"now-dns.top\",\n\"ntdll.top\",\n\"freeddns.us\",\n\"crafting.xyz\",\n\"zapto.xyz\",\n\"nsupdate.info\",\n\"nerdpol.ovh\",\n\"blogsyte.com\",\n\"brasilia.me\",\n\"cable-modem.org\",\n\"ciscofreak.com\",\n\"collegefan.org\",\n\"couchpotatofries.org\",\n\"damnserver.com\",\n\"ddns.me\",\n\"ditchyourip.com\",\n\"dnsfor.me\",\n\"dnsiskinky.com\",\n\"dvrcam.info\",\n\"dynns.com\",\n\"eating-organic.net\",\n\"fantasyleague.cc\",\n\"geekgalaxy.com\",\n\"golffan.us\",\n\"health-carereform.com\",\n\"homesecuritymac.com\",\n\"homesecuritypc.com\",\n\"hopto.me\",\n\"ilovecollege.info\",\n\"loginto.me\",\n\"mlbfan.org\",\n\"mmafan.biz\",\n\"myactivedirectory.com\",\n\"mydissent.net\",\n\"myeffect.net\",\n\"mymediapc.net\",\n\"mypsx.net\",\n\"mysecuritycamera.com\",\n\"mysecuritycamera.net\",\n\"mysecuritycamera.org\",\n\"net-freaks.com\",\n\"nflfan.org\",\n\"nhlfan.net\",\n\"no-ip.ca\",\n\"no-ip.co.uk\",\n\"no-ip.net\",\n\"noip.us\",\n\"onthewifi.com\",\n\"pgafan.net\",\n\"point2this.com\",\n\"pointto.us\",\n\"privatizehealthinsurance.net\",\n\"quicksytes.com\",\n\"read-books.org\",\n\"securitytactics.com\",\n\"serveexchange.com\",\n\"servehumour.com\",\n\"servep2p.com\",\n\"servesarcasm.com\",\n\"stufftoread.com\",\n\"ufcfan.org\",\n\"unusualperson.com\",\n\"workisboring.com\",\n\"3utilities.com\",\n\"bounceme.net\",\n\"ddns.net\",\n\"ddnsking.com\",\n\"gotdns.ch\",\n\"hopto.org\",\n\"myftp.biz\",\n\"myftp.org\",\n\"myvnc.com\",\n\"no-ip.biz\",\n\"no-ip.info\",\n\"no-ip.org\",\n\"noip.me\",\n\"redirectme.net\",\n\"servebeer.com\",\n\"serveblog.net\",\n\"servecounterstrike.com\",\n\"serveftp.com\",\n\"servegame.com\",\n\"servehalflife.com\",\n\"servehttp.com\",\n\"serveirc.com\",\n\"serveminecraft.net\",\n\"servemp3.com\",\n\"servepics.com\",\n\"servequake.com\",\n\"sytes.net\",\n\"webhop.me\",\n\"zapto.org\",\n\"stage.nodeart.io\",\n\"nodum.co\",\n\"nodum.io\",\n\"pcloud.host\",\n\"nyc.mn\",\n\"nom.ae\",\n\"nom.af\",\n\"nom.ai\",\n\"nom.al\",\n\"nym.by\",\n\"nom.bz\",\n\"nym.bz\",\n\"nom.cl\",\n\"nym.ec\",\n\"nom.gd\",\n\"nom.ge\",\n\"nom.gl\",\n\"nym.gr\",\n\"nom.gt\",\n\"nym.gy\",\n\"nym.hk\",\n\"nom.hn\",\n\"nym.ie\",\n\"nom.im\",\n\"nom.ke\",\n\"nym.kz\",\n\"nym.la\",\n\"nym.lc\",\n\"nom.li\",\n\"nym.li\",\n\"nym.lt\",\n\"nym.lu\",\n\"nom.lv\",\n\"nym.me\",\n\"nom.mk\",\n\"nym.mn\",\n\"nym.mx\",\n\"nom.nu\",\n\"nym.nz\",\n\"nym.pe\",\n\"nym.pt\",\n\"nom.pw\",\n\"nom.qa\",\n\"nym.ro\",\n\"nom.rs\",\n\"nom.si\",\n\"nym.sk\",\n\"nom.st\",\n\"nym.su\",\n\"nym.sx\",\n\"nom.tj\",\n\"nym.tw\",\n\"nom.ug\",\n\"nom.uy\",\n\"nom.vc\",\n\"nom.vg\",\n\"static.observableusercontent.com\",\n\"cya.gg\",\n\"cloudycluster.net\",\n\"nid.io\",\n\"opencraft.hosting\",\n\"operaunite.com\",\n\"skygearapp.com\",\n\"outsystemscloud.com\",\n\"ownprovider.com\",\n\"own.pm\",\n\"ox.rs\",\n\"oy.lc\",\n\"pgfog.com\",\n\"pagefrontapp.com\",\n\"art.pl\",\n\"gliwice.pl\",\n\"krakow.pl\",\n\"poznan.pl\",\n\"wroc.pl\",\n\"zakopane.pl\",\n\"pantheonsite.io\",\n\"gotpantheon.com\",\n\"mypep.link\",\n\"perspecta.cloud\",\n\"on-web.fr\",\n\"*.platform.sh\",\n\"*.platformsh.site\",\n\"dyn53.io\",\n\"co.bn\",\n\"xen.prgmr.com\",\n\"priv.at\",\n\"prvcy.page\",\n\"*.dweb.link\",\n\"protonet.io\",\n\"chirurgiens-dentistes-en-france.fr\",\n\"byen.site\",\n\"pubtls.org\",\n\"qualifioapp.com\",\n\"qbuser.com\",\n\"instantcloud.cn\",\n\"ras.ru\",\n\"qa2.com\",\n\"qcx.io\",\n\"*.sys.qcx.io\",\n\"dev-myqnapcloud.com\",\n\"alpha-myqnapcloud.com\",\n\"myqnapcloud.com\",\n\"*.quipelements.com\",\n\"vapor.cloud\",\n\"vaporcloud.io\",\n\"rackmaze.com\",\n\"rackmaze.net\",\n\"*.on-k3s.io\",\n\"*.on-rancher.cloud\",\n\"*.on-rio.io\",\n\"readthedocs.io\",\n\"rhcloud.com\",\n\"app.render.com\",\n\"onrender.com\",\n\"repl.co\",\n\"repl.run\",\n\"resindevice.io\",\n\"devices.resinstaging.io\",\n\"hzc.io\",\n\"wellbeingzone.eu\",\n\"ptplus.fit\",\n\"wellbeingzone.co.uk\",\n\"git-pages.rit.edu\",\n\"sandcats.io\",\n\"logoip.de\",\n\"logoip.com\",\n\"schokokeks.net\",\n\"gov.scot\",\n\"scrysec.com\",\n\"firewall-gateway.com\",\n\"firewall-gateway.de\",\n\"my-gateway.de\",\n\"my-router.de\",\n\"spdns.de\",\n\"spdns.eu\",\n\"firewall-gateway.net\",\n\"my-firewall.org\",\n\"myfirewall.org\",\n\"spdns.org\",\n\"senseering.net\",\n\"biz.ua\",\n\"co.ua\",\n\"pp.ua\",\n\"shiftedit.io\",\n\"myshopblocks.com\",\n\"shopitsite.com\",\n\"mo-siemens.io\",\n\"1kapp.com\",\n\"appchizi.com\",\n\"applinzi.com\",\n\"sinaapp.com\",\n\"vipsinaapp.com\",\n\"siteleaf.net\",\n\"bounty-full.com\",\n\"alpha.bounty-full.com\",\n\"beta.bounty-full.com\",\n\"stackhero-network.com\",\n\"static.land\",\n\"dev.static.land\",\n\"sites.static.land\",\n\"apps.lair.io\",\n\"*.stolos.io\",\n\"spacekit.io\",\n\"customer.speedpartner.de\",\n\"api.stdlib.com\",\n\"storj.farm\",\n\"utwente.io\",\n\"soc.srcf.net\",\n\"user.srcf.net\",\n\"temp-dns.com\",\n\"applicationcloud.io\",\n\"scapp.io\",\n\"*.s5y.io\",\n\"*.sensiosite.cloud\",\n\"syncloud.it\",\n\"diskstation.me\",\n\"dscloud.biz\",\n\"dscloud.me\",\n\"dscloud.mobi\",\n\"dsmynas.com\",\n\"dsmynas.net\",\n\"dsmynas.org\",\n\"familyds.com\",\n\"familyds.net\",\n\"familyds.org\",\n\"i234.me\",\n\"myds.me\",\n\"synology.me\",\n\"vpnplus.to\",\n\"direct.quickconnect.to\",\n\"taifun-dns.de\",\n\"gda.pl\",\n\"gdansk.pl\",\n\"gdynia.pl\",\n\"med.pl\",\n\"sopot.pl\",\n\"edugit.org\",\n\"telebit.app\",\n\"telebit.io\",\n\"*.telebit.xyz\",\n\"gwiddle.co.uk\",\n\"thingdustdata.com\",\n\"cust.dev.thingdust.io\",\n\"cust.disrec.thingdust.io\",\n\"cust.prod.thingdust.io\",\n\"cust.testing.thingdust.io\",\n\"arvo.network\",\n\"azimuth.network\",\n\"bloxcms.com\",\n\"townnews-staging.com\",\n\"12hp.at\",\n\"2ix.at\",\n\"4lima.at\",\n\"lima-city.at\",\n\"12hp.ch\",\n\"2ix.ch\",\n\"4lima.ch\",\n\"lima-city.ch\",\n\"trafficplex.cloud\",\n\"de.cool\",\n\"12hp.de\",\n\"2ix.de\",\n\"4lima.de\",\n\"lima-city.de\",\n\"1337.pictures\",\n\"clan.rip\",\n\"lima-city.rocks\",\n\"webspace.rocks\",\n\"lima.zone\",\n\"*.transurl.be\",\n\"*.transurl.eu\",\n\"*.transurl.nl\",\n\"tuxfamily.org\",\n\"dd-dns.de\",\n\"diskstation.eu\",\n\"diskstation.org\",\n\"dray-dns.de\",\n\"draydns.de\",\n\"dyn-vpn.de\",\n\"dynvpn.de\",\n\"mein-vigor.de\",\n\"my-vigor.de\",\n\"my-wan.de\",\n\"syno-ds.de\",\n\"synology-diskstation.de\",\n\"synology-ds.de\",\n\"uber.space\",\n\"*.uberspace.de\",\n\"hk.com\",\n\"hk.org\",\n\"ltd.hk\",\n\"inc.hk\",\n\"virtualuser.de\",\n\"virtual-user.de\",\n\"urown.cloud\",\n\"dnsupdate.info\",\n\"lib.de.us\",\n\"2038.io\",\n\"router.management\",\n\"v-info.info\",\n\"voorloper.cloud\",\n\"v.ua\",\n\"wafflecell.com\",\n\"*.webhare.dev\",\n\"wedeploy.io\",\n\"wedeploy.me\",\n\"wedeploy.sh\",\n\"remotewd.com\",\n\"wmflabs.org\",\n\"myforum.community\",\n\"community-pro.de\",\n\"diskussionsbereich.de\",\n\"community-pro.net\",\n\"meinforum.net\",\n\"half.host\",\n\"xnbay.com\",\n\"u2.xnbay.com\",\n\"u2-local.xnbay.com\",\n\"cistron.nl\",\n\"demon.nl\",\n\"xs4all.space\",\n\"yandexcloud.net\",\n\"storage.yandexcloud.net\",\n\"website.yandexcloud.net\",\n\"official.academy\",\n\"yolasite.com\",\n\"ybo.faith\",\n\"yombo.me\",\n\"homelink.one\",\n\"ybo.party\",\n\"ybo.review\",\n\"ybo.science\",\n\"ybo.trade\",\n\"nohost.me\",\n\"noho.st\",\n\"za.net\",\n\"za.org\",\n\"now.sh\",\n\"bss.design\",\n\"basicserver.io\",\n\"virtualserver.io\",\n\"enterprisecloud.nu\"\n]","/*!\n * Copyright (c) 2015, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\n/*jshint unused:false */\n\nclass Store {\n constructor() {\n this.synchronous = false;\n }\n\n findCookie(domain, path, key, cb) {\n throw new Error(\"findCookie is not implemented\");\n }\n\n findCookies(domain, path, allowSpecialUseDomain, cb) {\n throw new Error(\"findCookies is not implemented\");\n }\n\n putCookie(cookie, cb) {\n throw new Error(\"putCookie is not implemented\");\n }\n\n updateCookie(oldCookie, newCookie, cb) {\n // recommended default implementation:\n // return this.putCookie(newCookie, cb);\n throw new Error(\"updateCookie is not implemented\");\n }\n\n removeCookie(domain, path, key, cb) {\n throw new Error(\"removeCookie is not implemented\");\n }\n\n removeCookies(domain, path, cb) {\n throw new Error(\"removeCookies is not implemented\");\n }\n\n removeAllCookies(cb) {\n throw new Error(\"removeAllCookies is not implemented\");\n }\n\n getAllCookies(cb) {\n throw new Error(\n \"getAllCookies is not implemented (therefore jar cannot be serialized)\"\n );\n }\n}\n\nexports.Store = Store;\n","/*!\n * Copyright (c) 2015, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\nconst { fromCallback } = require(\"universalify\");\nconst Store = require(\"./store\").Store;\nconst permuteDomain = require(\"./permuteDomain\").permuteDomain;\nconst pathMatch = require(\"./pathMatch\").pathMatch;\nconst util = require(\"util\");\n\nclass MemoryCookieStore extends Store {\n constructor() {\n super();\n this.synchronous = true;\n this.idx = {};\n if (util.inspect.custom) {\n this[util.inspect.custom] = this.inspect;\n }\n }\n\n inspect() {\n return `{ idx: ${util.inspect(this.idx, false, 2)} }`;\n }\n\n findCookie(domain, path, key, cb) {\n if (!this.idx[domain]) {\n return cb(null, undefined);\n }\n if (!this.idx[domain][path]) {\n return cb(null, undefined);\n }\n return cb(null, this.idx[domain][path][key] || null);\n }\n findCookies(domain, path, allowSpecialUseDomain, cb) {\n const results = [];\n if (typeof allowSpecialUseDomain === \"function\") {\n cb = allowSpecialUseDomain;\n allowSpecialUseDomain = false;\n }\n if (!domain) {\n return cb(null, []);\n }\n\n let pathMatcher;\n if (!path) {\n // null means \"all paths\"\n pathMatcher = function matchAll(domainIndex) {\n for (const curPath in domainIndex) {\n const pathIndex = domainIndex[curPath];\n for (const key in pathIndex) {\n results.push(pathIndex[key]);\n }\n }\n };\n } else {\n pathMatcher = function matchRFC(domainIndex) {\n //NOTE: we should use path-match algorithm from S5.1.4 here\n //(see : https://github.com/ChromiumWebApps/chromium/blob/b3d3b4da8bb94c1b2e061600df106d590fda3620/net/cookies/canonical_cookie.cc#L299)\n Object.keys(domainIndex).forEach(cookiePath => {\n if (pathMatch(path, cookiePath)) {\n const pathIndex = domainIndex[cookiePath];\n for (const key in pathIndex) {\n results.push(pathIndex[key]);\n }\n }\n });\n };\n }\n\n const domains = permuteDomain(domain, allowSpecialUseDomain) || [domain];\n const idx = this.idx;\n domains.forEach(curDomain => {\n const domainIndex = idx[curDomain];\n if (!domainIndex) {\n return;\n }\n pathMatcher(domainIndex);\n });\n\n cb(null, results);\n }\n\n putCookie(cookie, cb) {\n if (!this.idx[cookie.domain]) {\n this.idx[cookie.domain] = {};\n }\n if (!this.idx[cookie.domain][cookie.path]) {\n this.idx[cookie.domain][cookie.path] = {};\n }\n this.idx[cookie.domain][cookie.path][cookie.key] = cookie;\n cb(null);\n }\n updateCookie(oldCookie, newCookie, cb) {\n // updateCookie() may avoid updating cookies that are identical. For example,\n // lastAccessed may not be important to some stores and an equality\n // comparison could exclude that field.\n this.putCookie(newCookie, cb);\n }\n removeCookie(domain, path, key, cb) {\n if (\n this.idx[domain] &&\n this.idx[domain][path] &&\n this.idx[domain][path][key]\n ) {\n delete this.idx[domain][path][key];\n }\n cb(null);\n }\n removeCookies(domain, path, cb) {\n if (this.idx[domain]) {\n if (path) {\n delete this.idx[domain][path];\n } else {\n delete this.idx[domain];\n }\n }\n return cb(null);\n }\n removeAllCookies(cb) {\n this.idx = {};\n return cb(null);\n }\n getAllCookies(cb) {\n const cookies = [];\n const idx = this.idx;\n\n const domains = Object.keys(idx);\n domains.forEach(domain => {\n const paths = Object.keys(idx[domain]);\n paths.forEach(path => {\n const keys = Object.keys(idx[domain][path]);\n keys.forEach(key => {\n if (key !== null) {\n cookies.push(idx[domain][path][key]);\n }\n });\n });\n });\n\n // Sort by creationIndex so deserializing retains the creation order.\n // When implementing your own store, this SHOULD retain the order too\n cookies.sort((a, b) => {\n return (a.creationIndex || 0) - (b.creationIndex || 0);\n });\n\n cb(null, cookies);\n }\n}\n\n[\n \"findCookie\",\n \"findCookies\",\n \"putCookie\",\n \"updateCookie\",\n \"removeCookie\",\n \"removeCookies\",\n \"removeAllCookies\",\n \"getAllCookies\"\n].forEach(name => {\n MemoryCookieStore[name] = fromCallback(MemoryCookieStore.prototype[name]);\n});\n\nexports.MemoryCookieStore = MemoryCookieStore;\n","'use strict'\n\nexports.fromCallback = function (fn) {\n return Object.defineProperty(function () {\n if (typeof arguments[arguments.length - 1] === 'function') fn.apply(this, arguments)\n else {\n return new Promise((resolve, reject) => {\n arguments[arguments.length] = (err, res) => {\n if (err) return reject(err)\n resolve(res)\n }\n arguments.length++\n fn.apply(this, arguments)\n })\n }\n }, 'name', { value: fn.name })\n}\n\nexports.fromPromise = function (fn) {\n return Object.defineProperty(function () {\n const cb = arguments[arguments.length - 1]\n if (typeof cb !== 'function') return fn.apply(this, arguments)\n else fn.apply(this, arguments).then(r => cb(null, r), cb)\n }, 'name', { value: fn.name })\n}\n","/*!\n * Copyright (c) 2015, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\nconst pubsuffix = require(\"./pubsuffix-psl\");\n\n// Gives the permutation of all possible domainMatch()es of a given domain. The\n// array is in shortest-to-longest order. Handy for indexing.\nconst SPECIAL_USE_DOMAINS = [\"local\"]; // RFC 6761\nfunction permuteDomain(domain, allowSpecialUseDomain) {\n let pubSuf = null;\n if (allowSpecialUseDomain) {\n const domainParts = domain.split(\".\");\n if (SPECIAL_USE_DOMAINS.includes(domainParts[domainParts.length - 1])) {\n pubSuf = `${domainParts[domainParts.length - 2]}.${\n domainParts[domainParts.length - 1]\n }`;\n } else {\n pubSuf = pubsuffix.getPublicSuffix(domain);\n }\n } else {\n pubSuf = pubsuffix.getPublicSuffix(domain);\n }\n\n if (!pubSuf) {\n return null;\n }\n if (pubSuf == domain) {\n return [domain];\n }\n\n const prefix = domain.slice(0, -(pubSuf.length + 1)); // \".example.com\"\n const parts = prefix.split(\".\").reverse();\n let cur = pubSuf;\n const permutations = [cur];\n while (parts.length) {\n cur = `${parts.shift()}.${cur}`;\n permutations.push(cur);\n }\n return permutations;\n}\n\nexports.permuteDomain = permuteDomain;\n","/*!\n * Copyright (c) 2015, Salesforce.com, Inc.\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. Neither the name of Salesforce.com nor the names of its contributors may\n * be used to endorse or promote products derived from this software without\n * specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE\n * POSSIBILITY OF SUCH DAMAGE.\n */\n\"use strict\";\n/*\n * \"A request-path path-matches a given cookie-path if at least one of the\n * following conditions holds:\"\n */\nfunction pathMatch(reqPath, cookiePath) {\n // \"o The cookie-path and the request-path are identical.\"\n if (cookiePath === reqPath) {\n return true;\n }\n\n const idx = reqPath.indexOf(cookiePath);\n if (idx === 0) {\n // \"o The cookie-path is a prefix of the request-path, and the last\n // character of the cookie-path is %x2F (\"/\").\"\n if (cookiePath.substr(-1) === \"/\") {\n return true;\n }\n\n // \" o The cookie-path is a prefix of the request-path, and the first\n // character of the request-path that is not included in the cookie- path\n // is a %x2F (\"/\") character.\"\n if (reqPath.substr(cookiePath.length, 1) === \"/\") {\n return true;\n }\n }\n\n return false;\n}\n\nexports.pathMatch = pathMatch;\n","// generated by genversion\nmodule.exports = '4.0.0'\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignal, abortSignal, AbortSignalLike } from \"./AbortSignal\";\n\n/**\n * This error is thrown when an asynchronous operation has been aborted.\n * Check for this error by testing the `name` that the name property of the\n * error matches `\"AbortError\"`.\n *\n * @example\n * ```ts\n * const controller = new AbortController();\n * controller.abort();\n * try {\n * doAsyncWork(controller.signal)\n * } catch (e) {\n * if (e.name === 'AbortError') {\n * // handle abort error here.\n * }\n * }\n * ```\n */\nexport class AbortError extends Error {\n constructor(message?: string) {\n super(message);\n this.name = \"AbortError\";\n }\n}\n\n/**\n * An AbortController provides an AbortSignal and the associated controls to signal\n * that an asynchronous operation should be aborted.\n *\n * @example\n * Abort an operation when another event fires\n * ```ts\n * const controller = new AbortController();\n * const signal = controller.signal;\n * doAsyncWork(signal);\n * button.addEventListener('click', () => controller.abort());\n * ```\n *\n * @example\n * Share aborter cross multiple operations in 30s\n * ```ts\n * // Upload the same data to 2 different data centers at the same time,\n * // abort another when any of them is finished\n * const controller = AbortController.withTimeout(30 * 1000);\n * doAsyncWork(controller.signal).then(controller.abort);\n * doAsyncWork(controller.signal).then(controller.abort);\n *```\n *\n * @example\n * Cascaded aborting\n * ```ts\n * // All operations can't take more than 30 seconds\n * const aborter = Aborter.timeout(30 * 1000);\n *\n * // Following 2 operations can't take more than 25 seconds\n * await doAsyncWork(aborter.withTimeout(25 * 1000));\n * await doAsyncWork(aborter.withTimeout(25 * 1000));\n * ```\n */\nexport class AbortController {\n private _signal: AbortSignal;\n\n /**\n * @param parentSignals - The AbortSignals that will signal aborted on the AbortSignal associated with this controller.\n */\n constructor(parentSignals?: AbortSignalLike[]);\n /**\n * @param parentSignals - The AbortSignals that will signal aborted on the AbortSignal associated with this controller.\n */\n constructor(...parentSignals: AbortSignalLike[]);\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n constructor(parentSignals?: any) {\n this._signal = new AbortSignal();\n\n if (!parentSignals) {\n return;\n }\n // coerce parentSignals into an array\n if (!Array.isArray(parentSignals)) {\n // eslint-disable-next-line prefer-rest-params\n parentSignals = arguments;\n }\n for (const parentSignal of parentSignals) {\n // if the parent signal has already had abort() called,\n // then call abort on this signal as well.\n if (parentSignal.aborted) {\n this.abort();\n } else {\n // when the parent signal aborts, this signal should as well.\n parentSignal.addEventListener(\"abort\", () => {\n this.abort();\n });\n }\n }\n }\n\n /**\n * The AbortSignal associated with this controller that will signal aborted\n * when the abort method is called on this controller.\n *\n * @readonly\n */\n public get signal(): AbortSignal {\n return this._signal;\n }\n\n /**\n * Signal that any operations passed this controller's associated abort signal\n * to cancel any remaining work and throw an `AbortError`.\n */\n abort(): void {\n abortSignal(this._signal);\n }\n\n /**\n * Creates a new AbortSignal instance that will abort after the provided ms.\n * @param ms - Elapsed time in milliseconds to trigger an abort.\n */\n public static timeout(ms: number): AbortSignal {\n const signal = new AbortSignal();\n const timer = setTimeout(abortSignal, ms, signal);\n // Prevent the active Timer from keeping the Node.js event loop active.\n if (typeof timer.unref === \"function\") {\n timer.unref();\n }\n return signal;\n }\n}\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// \n\ntype AbortEventListener = (this: AbortSignalLike, ev?: any) => any;\n\nconst listenersMap = new WeakMap();\nconst abortedMap = new WeakMap();\n\n/**\n * Allows the request to be aborted upon firing of the \"abort\" event.\n * Compatible with the browser built-in AbortSignal and common polyfills.\n */\nexport interface AbortSignalLike {\n /**\n * Indicates if the signal has already been aborted.\n */\n readonly aborted: boolean;\n /**\n * Add new \"abort\" event listener, only support \"abort\" event.\n */\n addEventListener(\n type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any,\n options?: any\n ): void;\n /**\n * Remove \"abort\" event listener, only support \"abort\" event.\n */\n removeEventListener(\n type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any,\n options?: any\n ): void;\n}\n\n/**\n * An aborter instance implements AbortSignal interface, can abort HTTP requests.\n *\n * - Call AbortSignal.none to create a new AbortSignal instance that cannot be cancelled.\n * Use `AbortSignal.none` when you are required to pass a cancellation token but the operation\n * cannot or will not ever be cancelled.\n *\n * @example\n * Abort without timeout\n * ```ts\n * await doAsyncWork(AbortSignal.none);\n * ```\n */\nexport class AbortSignal implements AbortSignalLike {\n constructor() {\n listenersMap.set(this, []);\n abortedMap.set(this, false);\n }\n\n /**\n * Status of whether aborted or not.\n *\n * @readonly\n */\n public get aborted(): boolean {\n if (!abortedMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n return abortedMap.get(this)!;\n }\n\n /**\n * Creates a new AbortSignal instance that will never be aborted.\n *\n * @readonly\n */\n public static get none(): AbortSignal {\n return new AbortSignal();\n }\n\n /**\n * onabort event listener.\n */\n public onabort: ((ev?: Event) => any) | null = null;\n\n /**\n * Added new \"abort\" event listener, only support \"abort\" event.\n *\n * @param _type - Only support \"abort\" event\n * @param listener - The listener to be added\n */\n public addEventListener(\n // tslint:disable-next-line:variable-name\n _type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any\n ): void {\n if (!listenersMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n const listeners = listenersMap.get(this)!;\n listeners.push(listener);\n }\n\n /**\n * Remove \"abort\" event listener, only support \"abort\" event.\n *\n * @param _type - Only support \"abort\" event\n * @param listener - The listener to be removed\n */\n public removeEventListener(\n // tslint:disable-next-line:variable-name\n _type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any\n ): void {\n if (!listenersMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n const listeners = listenersMap.get(this)!;\n\n const index = listeners.indexOf(listener);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n }\n\n /**\n * Dispatches a synthetic event to the AbortSignal.\n */\n dispatchEvent(_event: Event): boolean {\n throw new Error(\n \"This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.\"\n );\n }\n}\n\n/**\n * Helper to trigger an abort event immediately, the onabort and all abort event listeners will be triggered.\n * Will try to trigger abort event for all linked AbortSignal nodes.\n *\n * - If there is a timeout, the timer will be cancelled.\n * - If aborted is true, nothing will happen.\n *\n * @internal\n */\n// eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters\nexport function abortSignal(signal: AbortSignal): void {\n if (signal.aborted) {\n return;\n }\n\n if (signal.onabort) {\n signal.onabort.call(signal);\n }\n\n const listeners = listenersMap.get(signal)!;\n if (listeners) {\n // Create a copy of listeners so mutations to the array\n // (e.g. via removeListener calls) don't affect the listeners\n // we invoke.\n listeners.slice().forEach((listener) => {\n listener.call(signal, { type: \"abort\" });\n });\n }\n\n abortedMap.set(signal, true);\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * A collection of HttpHeaders that can be sent with a HTTP request.\n */\nfunction getHeaderKey(headerName: string): string {\n return headerName.toLowerCase();\n}\n\n/**\n * An individual header within a HttpHeaders collection.\n */\nexport interface HttpHeader {\n /**\n * The name of the header.\n */\n name: string;\n\n /**\n * The value of the header.\n */\n value: string;\n}\n\n/**\n * A HttpHeaders collection represented as a simple JSON object.\n */\nexport type RawHttpHeaders = { [headerName: string]: string };\n\n/**\n * A collection of HTTP header key/value pairs.\n */\nexport interface HttpHeadersLike {\n /**\n * Set a header in this collection with the provided name and value. The name is\n * case-insensitive.\n * @param headerName - The name of the header to set. This value is case-insensitive.\n * @param headerValue - The value of the header to set.\n */\n set(headerName: string, headerValue: string | number): void;\n /**\n * Get the header value for the provided header name, or undefined if no header exists in this\n * collection with the provided name.\n * @param headerName - The name of the header.\n */\n get(headerName: string): string | undefined;\n /**\n * Get whether or not this header collection contains a header entry for the provided header name.\n */\n contains(headerName: string): boolean;\n /**\n * Remove the header with the provided headerName. Return whether or not the header existed and\n * was removed.\n * @param headerName - The name of the header to remove.\n */\n remove(headerName: string): boolean;\n /**\n * Get the headers that are contained this collection as an object.\n */\n rawHeaders(): RawHttpHeaders;\n /**\n * Get the headers that are contained in this collection as an array.\n */\n headersArray(): HttpHeader[];\n /**\n * Get the header names that are contained in this collection.\n */\n headerNames(): string[];\n /**\n * Get the header values that are contained in this collection.\n */\n headerValues(): string[];\n /**\n * Create a deep clone/copy of this HttpHeaders collection.\n */\n clone(): HttpHeadersLike;\n /**\n * Get the JSON object representation of this HTTP header collection.\n * The result is the same as `rawHeaders()`.\n */\n toJson(options?: { preserveCase?: boolean }): RawHttpHeaders;\n}\n\nexport function isHttpHeadersLike(object?: unknown): object is HttpHeadersLike {\n if (object && typeof object === \"object\") {\n const castObject = object as {\n rawHeaders: unknown;\n clone: unknown;\n get: unknown;\n set: unknown;\n contains: unknown;\n remove: unknown;\n headersArray: unknown;\n headerValues: unknown;\n headerNames: unknown;\n toJson: unknown;\n };\n if (\n typeof castObject.rawHeaders === \"function\" &&\n typeof castObject.clone === \"function\" &&\n typeof castObject.get === \"function\" &&\n typeof castObject.set === \"function\" &&\n typeof castObject.contains === \"function\" &&\n typeof castObject.remove === \"function\" &&\n typeof castObject.headersArray === \"function\" &&\n typeof castObject.headerValues === \"function\" &&\n typeof castObject.headerNames === \"function\" &&\n typeof castObject.toJson === \"function\"\n ) {\n return true;\n }\n }\n\n return false;\n}\n\n/**\n * A collection of HTTP header key/value pairs.\n */\nexport class HttpHeaders implements HttpHeadersLike {\n private readonly _headersMap: { [headerKey: string]: HttpHeader };\n\n constructor(rawHeaders?: RawHttpHeaders) {\n this._headersMap = {};\n if (rawHeaders) {\n for (const headerName in rawHeaders) {\n this.set(headerName, rawHeaders[headerName]);\n }\n }\n }\n\n /**\n * Set a header in this collection with the provided name and value. The name is\n * case-insensitive.\n * @param headerName - The name of the header to set. This value is case-insensitive.\n * @param headerValue - The value of the header to set.\n */\n public set(headerName: string, headerValue: string | number): void {\n this._headersMap[getHeaderKey(headerName)] = {\n name: headerName,\n value: headerValue.toString(),\n };\n }\n\n /**\n * Get the header value for the provided header name, or undefined if no header exists in this\n * collection with the provided name.\n * @param headerName - The name of the header.\n */\n public get(headerName: string): string | undefined {\n const header: HttpHeader = this._headersMap[getHeaderKey(headerName)];\n return !header ? undefined : header.value;\n }\n\n /**\n * Get whether or not this header collection contains a header entry for the provided header name.\n */\n public contains(headerName: string): boolean {\n return !!this._headersMap[getHeaderKey(headerName)];\n }\n\n /**\n * Remove the header with the provided headerName. Return whether or not the header existed and\n * was removed.\n * @param headerName - The name of the header to remove.\n */\n public remove(headerName: string): boolean {\n const result: boolean = this.contains(headerName);\n delete this._headersMap[getHeaderKey(headerName)];\n return result;\n }\n\n /**\n * Get the headers that are contained this collection as an object.\n */\n public rawHeaders(): RawHttpHeaders {\n return this.toJson({ preserveCase: true });\n }\n\n /**\n * Get the headers that are contained in this collection as an array.\n */\n public headersArray(): HttpHeader[] {\n const headers: HttpHeader[] = [];\n for (const headerKey in this._headersMap) {\n headers.push(this._headersMap[headerKey]);\n }\n return headers;\n }\n\n /**\n * Get the header names that are contained in this collection.\n */\n public headerNames(): string[] {\n const headerNames: string[] = [];\n const headers: HttpHeader[] = this.headersArray();\n for (let i = 0; i < headers.length; ++i) {\n headerNames.push(headers[i].name);\n }\n return headerNames;\n }\n\n /**\n * Get the header values that are contained in this collection.\n */\n public headerValues(): string[] {\n const headerValues: string[] = [];\n const headers: HttpHeader[] = this.headersArray();\n for (let i = 0; i < headers.length; ++i) {\n headerValues.push(headers[i].value);\n }\n return headerValues;\n }\n\n /**\n * Get the JSON object representation of this HTTP header collection.\n */\n public toJson(options: { preserveCase?: boolean } = {}): RawHttpHeaders {\n const result: RawHttpHeaders = {};\n if (options.preserveCase) {\n for (const headerKey in this._headersMap) {\n const header: HttpHeader = this._headersMap[headerKey];\n result[header.name] = header.value;\n }\n } else {\n for (const headerKey in this._headersMap) {\n const header: HttpHeader = this._headersMap[headerKey];\n result[getHeaderKey(header.name)] = header.value;\n }\n }\n return result;\n }\n\n /**\n * Get the string representation of this HTTP header collection.\n */\n public toString(): string {\n return JSON.stringify(this.toJson({ preserveCase: true }));\n }\n\n /**\n * Create a deep clone/copy of this HttpHeaders collection.\n */\n public clone(): HttpHeaders {\n const resultPreservingCasing: RawHttpHeaders = {};\n for (const headerKey in this._headersMap) {\n const header: HttpHeader = this._headersMap[headerKey];\n resultPreservingCasing[header.name] = header.value;\n }\n return new HttpHeaders(resultPreservingCasing);\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as http from \"http\";\nimport * as https from \"https\";\nimport * as tunnel from \"tunnel\";\nimport { HttpHeadersLike } from \"./httpHeaders\";\nimport { ProxySettings } from \"./serviceClient\";\nimport { URLBuilder } from \"./url\";\n\nexport type ProxyAgent = { isHttps: boolean; agent: http.Agent | https.Agent };\nexport function createProxyAgent(\n requestUrl: string,\n proxySettings: ProxySettings,\n headers?: HttpHeadersLike\n): ProxyAgent {\n const host = URLBuilder.parse(proxySettings.host).getHost() as string;\n if (!host) {\n throw new Error(\"Expecting a non-empty host in proxy settings.\");\n }\n if (!isValidPort(proxySettings.port)) {\n throw new Error(\"Expecting a valid port number in the range of [0, 65535] in proxy settings.\");\n }\n const tunnelOptions: tunnel.HttpsOverHttpsOptions = {\n proxy: {\n host: host,\n port: proxySettings.port,\n headers: (headers && headers.rawHeaders()) || {},\n },\n };\n\n if (proxySettings.username && proxySettings.password) {\n tunnelOptions.proxy!.proxyAuth = `${proxySettings.username}:${proxySettings.password}`;\n } else if (proxySettings.username) {\n tunnelOptions.proxy!.proxyAuth = `${proxySettings.username}`;\n }\n\n const isRequestHttps = isUrlHttps(requestUrl);\n const isProxyHttps = isUrlHttps(proxySettings.host);\n\n const proxyAgent = {\n isHttps: isRequestHttps,\n agent: createTunnel(isRequestHttps, isProxyHttps, tunnelOptions),\n };\n\n return proxyAgent;\n}\n\nexport function isUrlHttps(url: string): boolean {\n const urlScheme = URLBuilder.parse(url).getScheme() || \"\";\n return urlScheme.toLowerCase() === \"https\";\n}\n\nexport function createTunnel(\n isRequestHttps: boolean,\n isProxyHttps: boolean,\n tunnelOptions: tunnel.HttpsOverHttpsOptions\n): http.Agent | https.Agent {\n if (isRequestHttps && isProxyHttps) {\n return tunnel.httpsOverHttps(tunnelOptions);\n } else if (isRequestHttps && !isProxyHttps) {\n return tunnel.httpsOverHttp(tunnelOptions);\n } else if (!isRequestHttps && isProxyHttps) {\n return tunnel.httpOverHttps(tunnelOptions);\n } else {\n return tunnel.httpOverHttp(tunnelOptions);\n }\n}\n\nfunction isValidPort(port: number): boolean {\n // any port in 0-65535 range is valid (RFC 793) even though almost all implementations\n // will reserve 0 for a specific purpose, and a range of numbers for ephemeral ports\n return 0 <= port && port <= 65535;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { replaceAll } from \"./util/utils\";\n\nexport { URL } from \"./util/url\";\n\ntype URLQueryParseState = \"ParameterName\" | \"ParameterValue\";\n\n/**\n * A class that handles the query portion of a URLBuilder.\n */\nexport class URLQuery {\n private readonly _rawQuery: { [queryParameterName: string]: string | string[] } = {};\n\n /**\n * Get whether or not there any query parameters in this URLQuery.\n */\n public any(): boolean {\n return Object.keys(this._rawQuery).length > 0;\n }\n\n /**\n * Get the keys of the query string.\n */\n public keys(): string[] {\n return Object.keys(this._rawQuery);\n }\n\n /**\n * Set a query parameter with the provided name and value. If the parameterValue is undefined or\n * empty, then this will attempt to remove an existing query parameter with the provided\n * parameterName.\n */\n public set(parameterName: string, parameterValue: unknown): void {\n const caseParameterValue = parameterValue as {\n toString: () => string;\n };\n if (parameterName) {\n if (caseParameterValue !== undefined && caseParameterValue !== null) {\n const newValue = Array.isArray(caseParameterValue)\n ? caseParameterValue\n : caseParameterValue.toString();\n this._rawQuery[parameterName] = newValue;\n } else {\n delete this._rawQuery[parameterName];\n }\n }\n }\n\n /**\n * Get the value of the query parameter with the provided name. If no parameter exists with the\n * provided parameter name, then undefined will be returned.\n */\n public get(parameterName: string): string | string[] | undefined {\n return parameterName ? this._rawQuery[parameterName] : undefined;\n }\n\n /**\n * Get the string representation of this query. The return value will not start with a \"?\".\n */\n public toString(): string {\n let result = \"\";\n for (const parameterName in this._rawQuery) {\n if (result) {\n result += \"&\";\n }\n const parameterValue = this._rawQuery[parameterName];\n if (Array.isArray(parameterValue)) {\n const parameterStrings = [];\n for (const parameterValueElement of parameterValue) {\n parameterStrings.push(`${parameterName}=${parameterValueElement}`);\n }\n result += parameterStrings.join(\"&\");\n } else {\n result += `${parameterName}=${parameterValue}`;\n }\n }\n return result;\n }\n\n /**\n * Parse a URLQuery from the provided text.\n */\n public static parse(text: string): URLQuery {\n const result = new URLQuery();\n\n if (text) {\n if (text.startsWith(\"?\")) {\n text = text.substring(1);\n }\n\n let currentState: URLQueryParseState = \"ParameterName\";\n\n let parameterName = \"\";\n let parameterValue = \"\";\n for (let i = 0; i < text.length; ++i) {\n const currentCharacter: string = text[i];\n switch (currentState) {\n case \"ParameterName\":\n switch (currentCharacter) {\n case \"=\":\n currentState = \"ParameterValue\";\n break;\n\n case \"&\":\n parameterName = \"\";\n parameterValue = \"\";\n break;\n\n default:\n parameterName += currentCharacter;\n break;\n }\n break;\n\n case \"ParameterValue\":\n switch (currentCharacter) {\n case \"&\":\n result.set(parameterName, parameterValue);\n parameterName = \"\";\n parameterValue = \"\";\n currentState = \"ParameterName\";\n break;\n\n default:\n parameterValue += currentCharacter;\n break;\n }\n break;\n\n default:\n throw new Error(\"Unrecognized URLQuery parse state: \" + currentState);\n }\n }\n if (currentState === \"ParameterValue\") {\n result.set(parameterName, parameterValue);\n }\n }\n\n return result;\n }\n}\n\n/**\n * A class that handles creating, modifying, and parsing URLs.\n */\nexport class URLBuilder {\n private _scheme: string | undefined;\n private _host: string | undefined;\n private _port: string | undefined;\n private _path: string | undefined;\n private _query: URLQuery | undefined;\n\n /**\n * Set the scheme/protocol for this URL. If the provided scheme contains other parts of a URL\n * (such as a host, port, path, or query), those parts will be added to this URL as well.\n */\n public setScheme(scheme: string | undefined): void {\n if (!scheme) {\n this._scheme = undefined;\n } else {\n this.set(scheme, \"SCHEME\");\n }\n }\n\n /**\n * Get the scheme that has been set in this URL.\n */\n public getScheme(): string | undefined {\n return this._scheme;\n }\n\n /**\n * Set the host for this URL. If the provided host contains other parts of a URL (such as a\n * port, path, or query), those parts will be added to this URL as well.\n */\n public setHost(host: string | undefined): void {\n if (!host) {\n this._host = undefined;\n } else {\n this.set(host, \"SCHEME_OR_HOST\");\n }\n }\n\n /**\n * Get the host that has been set in this URL.\n */\n public getHost(): string | undefined {\n return this._host;\n }\n\n /**\n * Set the port for this URL. If the provided port contains other parts of a URL (such as a\n * path or query), those parts will be added to this URL as well.\n */\n public setPort(port: number | string | undefined): void {\n if (port === undefined || port === null || port === \"\") {\n this._port = undefined;\n } else {\n this.set(port.toString(), \"PORT\");\n }\n }\n\n /**\n * Get the port that has been set in this URL.\n */\n public getPort(): string | undefined {\n return this._port;\n }\n\n /**\n * Set the path for this URL. If the provided path contains a query, then it will be added to\n * this URL as well.\n */\n public setPath(path: string | undefined): void {\n if (!path) {\n this._path = undefined;\n } else {\n const schemeIndex = path.indexOf(\"://\");\n if (schemeIndex !== -1) {\n const schemeStart = path.lastIndexOf(\"/\", schemeIndex);\n // Make sure to only grab the URL part of the path before setting the state back to SCHEME\n // this will handle cases such as \"/a/b/c/https://microsoft.com\" => \"https://microsoft.com\"\n this.set(schemeStart === -1 ? path : path.substr(schemeStart + 1), \"SCHEME\");\n } else {\n this.set(path, \"PATH\");\n }\n }\n }\n\n /**\n * Append the provided path to this URL's existing path. If the provided path contains a query,\n * then it will be added to this URL as well.\n */\n public appendPath(path: string | undefined): void {\n if (path) {\n let currentPath: string | undefined = this.getPath();\n if (currentPath) {\n if (!currentPath.endsWith(\"/\")) {\n currentPath += \"/\";\n }\n\n if (path.startsWith(\"/\")) {\n path = path.substring(1);\n }\n\n path = currentPath + path;\n }\n this.set(path, \"PATH\");\n }\n }\n\n /**\n * Get the path that has been set in this URL.\n */\n public getPath(): string | undefined {\n return this._path;\n }\n\n /**\n * Set the query in this URL.\n */\n public setQuery(query: string | undefined): void {\n if (!query) {\n this._query = undefined;\n } else {\n this._query = URLQuery.parse(query);\n }\n }\n\n /**\n * Set a query parameter with the provided name and value in this URL's query. If the provided\n * query parameter value is undefined or empty, then the query parameter will be removed if it\n * existed.\n */\n public setQueryParameter(queryParameterName: string, queryParameterValue: unknown): void {\n if (queryParameterName) {\n if (!this._query) {\n this._query = new URLQuery();\n }\n this._query.set(queryParameterName, queryParameterValue);\n }\n }\n\n /**\n * Get the value of the query parameter with the provided query parameter name. If no query\n * parameter exists with the provided name, then undefined will be returned.\n */\n public getQueryParameterValue(queryParameterName: string): string | string[] | undefined {\n return this._query ? this._query.get(queryParameterName) : undefined;\n }\n\n /**\n * Get the query in this URL.\n */\n public getQuery(): string | undefined {\n return this._query ? this._query.toString() : undefined;\n }\n\n /**\n * Set the parts of this URL by parsing the provided text using the provided startState.\n */\n private set(text: string, startState: URLTokenizerState): void {\n const tokenizer = new URLTokenizer(text, startState);\n\n while (tokenizer.next()) {\n const token: URLToken | undefined = tokenizer.current();\n let tokenPath: string | undefined;\n if (token) {\n switch (token.type) {\n case \"SCHEME\":\n this._scheme = token.text || undefined;\n break;\n\n case \"HOST\":\n this._host = token.text || undefined;\n break;\n\n case \"PORT\":\n this._port = token.text || undefined;\n break;\n\n case \"PATH\":\n tokenPath = token.text || undefined;\n if (!this._path || this._path === \"/\" || tokenPath !== \"/\") {\n this._path = tokenPath;\n }\n break;\n\n case \"QUERY\":\n this._query = URLQuery.parse(token.text);\n break;\n\n default:\n throw new Error(`Unrecognized URLTokenType: ${token.type}`);\n }\n }\n }\n }\n\n /**\n * Serializes the URL as a string.\n * @returns the URL as a string.\n */\n public toString(): string {\n let result = \"\";\n\n if (this._scheme) {\n result += `${this._scheme}://`;\n }\n\n if (this._host) {\n result += this._host;\n }\n\n if (this._port) {\n result += `:${this._port}`;\n }\n\n if (this._path) {\n if (!this._path.startsWith(\"/\")) {\n result += \"/\";\n }\n result += this._path;\n }\n\n if (this._query && this._query.any()) {\n result += `?${this._query.toString()}`;\n }\n\n return result;\n }\n\n /**\n * If the provided searchValue is found in this URLBuilder, then replace it with the provided\n * replaceValue.\n */\n public replaceAll(searchValue: string, replaceValue: string): void {\n if (searchValue) {\n this.setScheme(replaceAll(this.getScheme(), searchValue, replaceValue));\n this.setHost(replaceAll(this.getHost(), searchValue, replaceValue));\n this.setPort(replaceAll(this.getPort(), searchValue, replaceValue));\n this.setPath(replaceAll(this.getPath(), searchValue, replaceValue));\n this.setQuery(replaceAll(this.getQuery(), searchValue, replaceValue));\n }\n }\n\n /**\n * Parses a given string URL into a new {@link URLBuilder}.\n */\n public static parse(text: string): URLBuilder {\n const result = new URLBuilder();\n result.set(text, \"SCHEME_OR_HOST\");\n return result;\n }\n}\n\ntype URLTokenizerState = \"SCHEME\" | \"SCHEME_OR_HOST\" | \"HOST\" | \"PORT\" | \"PATH\" | \"QUERY\" | \"DONE\";\n\ntype URLTokenType = \"SCHEME\" | \"HOST\" | \"PORT\" | \"PATH\" | \"QUERY\";\n\nexport class URLToken {\n public constructor(public readonly text: string, public readonly type: URLTokenType) {}\n\n public static scheme(text: string): URLToken {\n return new URLToken(text, \"SCHEME\");\n }\n\n public static host(text: string): URLToken {\n return new URLToken(text, \"HOST\");\n }\n\n public static port(text: string): URLToken {\n return new URLToken(text, \"PORT\");\n }\n\n public static path(text: string): URLToken {\n return new URLToken(text, \"PATH\");\n }\n\n public static query(text: string): URLToken {\n return new URLToken(text, \"QUERY\");\n }\n}\n\n/**\n * Get whether or not the provided character (single character string) is an alphanumeric (letter or\n * digit) character.\n */\nexport function isAlphaNumericCharacter(character: string): boolean {\n const characterCode: number = character.charCodeAt(0);\n return (\n (48 /* '0' */ <= characterCode && characterCode <= 57) /* '9' */ ||\n (65 /* 'A' */ <= characterCode && characterCode <= 90) /* 'Z' */ ||\n (97 /* 'a' */ <= characterCode && characterCode <= 122) /* 'z' */\n );\n}\n\n/**\n * A class that tokenizes URL strings.\n */\nexport class URLTokenizer {\n readonly _textLength: number;\n _currentState: URLTokenizerState;\n _currentIndex: number;\n _currentToken: URLToken | undefined;\n\n public constructor(readonly _text: string, state?: URLTokenizerState) {\n this._textLength = _text ? _text.length : 0;\n this._currentState = state !== undefined && state !== null ? state : \"SCHEME_OR_HOST\";\n this._currentIndex = 0;\n }\n\n /**\n * Get the current URLToken this URLTokenizer is pointing at, or undefined if the URLTokenizer\n * hasn't started or has finished tokenizing.\n */\n public current(): URLToken | undefined {\n return this._currentToken;\n }\n\n /**\n * Advance to the next URLToken and return whether or not a URLToken was found.\n */\n public next(): boolean {\n if (!hasCurrentCharacter(this)) {\n this._currentToken = undefined;\n } else {\n switch (this._currentState) {\n case \"SCHEME\":\n nextScheme(this);\n break;\n\n case \"SCHEME_OR_HOST\":\n nextSchemeOrHost(this);\n break;\n\n case \"HOST\":\n nextHost(this);\n break;\n\n case \"PORT\":\n nextPort(this);\n break;\n\n case \"PATH\":\n nextPath(this);\n break;\n\n case \"QUERY\":\n nextQuery(this);\n break;\n\n default:\n throw new Error(`Unrecognized URLTokenizerState: ${this._currentState}`);\n }\n }\n return !!this._currentToken;\n }\n}\n\n/**\n * Read the remaining characters from this Tokenizer's character stream.\n */\nfunction readRemaining(tokenizer: URLTokenizer): string {\n let result = \"\";\n if (tokenizer._currentIndex < tokenizer._textLength) {\n result = tokenizer._text.substring(tokenizer._currentIndex);\n tokenizer._currentIndex = tokenizer._textLength;\n }\n return result;\n}\n\n/**\n * Whether or not this URLTokenizer has a current character.\n */\nfunction hasCurrentCharacter(tokenizer: URLTokenizer): boolean {\n return tokenizer._currentIndex < tokenizer._textLength;\n}\n\n/**\n * Get the character in the text string at the current index.\n */\nfunction getCurrentCharacter(tokenizer: URLTokenizer): string {\n return tokenizer._text[tokenizer._currentIndex];\n}\n\n/**\n * Advance to the character in text that is \"step\" characters ahead. If no step value is provided,\n * then step will default to 1.\n */\nfunction nextCharacter(tokenizer: URLTokenizer, step?: number): void {\n if (hasCurrentCharacter(tokenizer)) {\n if (!step) {\n step = 1;\n }\n tokenizer._currentIndex += step;\n }\n}\n\n/**\n * Starting with the current character, peek \"charactersToPeek\" number of characters ahead in this\n * Tokenizer's stream of characters.\n */\nfunction peekCharacters(tokenizer: URLTokenizer, charactersToPeek: number): string {\n let endIndex: number = tokenizer._currentIndex + charactersToPeek;\n if (tokenizer._textLength < endIndex) {\n endIndex = tokenizer._textLength;\n }\n return tokenizer._text.substring(tokenizer._currentIndex, endIndex);\n}\n\n/**\n * Read characters from this Tokenizer until the end of the stream or until the provided condition\n * is false when provided the current character.\n */\nfunction readWhile(tokenizer: URLTokenizer, condition: (character: string) => boolean): string {\n let result = \"\";\n\n while (hasCurrentCharacter(tokenizer)) {\n const currentCharacter: string = getCurrentCharacter(tokenizer);\n if (!condition(currentCharacter)) {\n break;\n } else {\n result += currentCharacter;\n nextCharacter(tokenizer);\n }\n }\n\n return result;\n}\n\n/**\n * Read characters from this Tokenizer until a non-alphanumeric character or the end of the\n * character stream is reached.\n */\nfunction readWhileLetterOrDigit(tokenizer: URLTokenizer): string {\n return readWhile(tokenizer, (character: string) => isAlphaNumericCharacter(character));\n}\n\n/**\n * Read characters from this Tokenizer until one of the provided terminating characters is read or\n * the end of the character stream is reached.\n */\nfunction readUntilCharacter(tokenizer: URLTokenizer, ...terminatingCharacters: string[]): string {\n return readWhile(\n tokenizer,\n (character: string) => terminatingCharacters.indexOf(character) === -1\n );\n}\n\nfunction nextScheme(tokenizer: URLTokenizer): void {\n const scheme: string = readWhileLetterOrDigit(tokenizer);\n tokenizer._currentToken = URLToken.scheme(scheme);\n if (!hasCurrentCharacter(tokenizer)) {\n tokenizer._currentState = \"DONE\";\n } else {\n tokenizer._currentState = \"HOST\";\n }\n}\n\nfunction nextSchemeOrHost(tokenizer: URLTokenizer): void {\n const schemeOrHost: string = readUntilCharacter(tokenizer, \":\", \"/\", \"?\");\n if (!hasCurrentCharacter(tokenizer)) {\n tokenizer._currentToken = URLToken.host(schemeOrHost);\n tokenizer._currentState = \"DONE\";\n } else if (getCurrentCharacter(tokenizer) === \":\") {\n if (peekCharacters(tokenizer, 3) === \"://\") {\n tokenizer._currentToken = URLToken.scheme(schemeOrHost);\n tokenizer._currentState = \"HOST\";\n } else {\n tokenizer._currentToken = URLToken.host(schemeOrHost);\n tokenizer._currentState = \"PORT\";\n }\n } else {\n tokenizer._currentToken = URLToken.host(schemeOrHost);\n if (getCurrentCharacter(tokenizer) === \"/\") {\n tokenizer._currentState = \"PATH\";\n } else {\n tokenizer._currentState = \"QUERY\";\n }\n }\n}\n\nfunction nextHost(tokenizer: URLTokenizer): void {\n if (peekCharacters(tokenizer, 3) === \"://\") {\n nextCharacter(tokenizer, 3);\n }\n\n const host: string = readUntilCharacter(tokenizer, \":\", \"/\", \"?\");\n tokenizer._currentToken = URLToken.host(host);\n\n if (!hasCurrentCharacter(tokenizer)) {\n tokenizer._currentState = \"DONE\";\n } else if (getCurrentCharacter(tokenizer) === \":\") {\n tokenizer._currentState = \"PORT\";\n } else if (getCurrentCharacter(tokenizer) === \"/\") {\n tokenizer._currentState = \"PATH\";\n } else {\n tokenizer._currentState = \"QUERY\";\n }\n}\n\nfunction nextPort(tokenizer: URLTokenizer): void {\n if (getCurrentCharacter(tokenizer) === \":\") {\n nextCharacter(tokenizer);\n }\n\n const port: string = readUntilCharacter(tokenizer, \"/\", \"?\");\n tokenizer._currentToken = URLToken.port(port);\n\n if (!hasCurrentCharacter(tokenizer)) {\n tokenizer._currentState = \"DONE\";\n } else if (getCurrentCharacter(tokenizer) === \"/\") {\n tokenizer._currentState = \"PATH\";\n } else {\n tokenizer._currentState = \"QUERY\";\n }\n}\n\nfunction nextPath(tokenizer: URLTokenizer): void {\n const path: string = readUntilCharacter(tokenizer, \"?\");\n tokenizer._currentToken = URLToken.path(path);\n\n if (!hasCurrentCharacter(tokenizer)) {\n tokenizer._currentState = \"DONE\";\n } else {\n tokenizer._currentState = \"QUERY\";\n }\n}\n\nfunction nextQuery(tokenizer: URLTokenizer): void {\n if (getCurrentCharacter(tokenizer) === \"?\") {\n nextCharacter(tokenizer);\n }\n\n const query: string = readRemaining(tokenizer);\n tokenizer._currentToken = URLToken.query(query);\n tokenizer._currentState = \"DONE\";\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { Constants } from \"./constants\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\nimport { RestError } from \"../restError\";\nimport { WebResourceLike } from \"../webResource\";\nimport { XML_ATTRKEY } from \"./serializer.common\";\nimport { v4 as uuidv4 } from \"uuid\";\n\nconst validUuidRegex =\n /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/i;\n\n/**\n * A constant that indicates whether the environment is node.js or browser based.\n */\nexport const isNode =\n typeof process !== \"undefined\" &&\n !!process.version &&\n !!process.versions &&\n !!process.versions.node;\n\n/**\n * Checks if a parsed URL is HTTPS\n *\n * @param urlToCheck - The url to check\n * @returns True if the URL is HTTPS; false otherwise.\n */\nexport function urlIsHTTPS(urlToCheck: { protocol: string }): boolean {\n return urlToCheck.protocol.toLowerCase() === Constants.HTTPS;\n}\n\n/**\n * Encodes an URI.\n *\n * @param uri - The URI to be encoded.\n * @returns The encoded URI.\n */\nexport function encodeUri(uri: string): string {\n return encodeURIComponent(uri)\n .replace(/!/g, \"%21\")\n .replace(/\"/g, \"%27\")\n .replace(/\\(/g, \"%28\")\n .replace(/\\)/g, \"%29\")\n .replace(/\\*/g, \"%2A\");\n}\n\n/**\n * Returns a stripped version of the Http Response which only contains body,\n * headers and the status.\n *\n * @param response - The Http Response\n * @returns The stripped version of Http Response.\n */\nexport function stripResponse(response: HttpOperationResponse): any {\n const strippedResponse: any = {};\n strippedResponse.body = response.bodyAsText;\n strippedResponse.headers = response.headers;\n strippedResponse.status = response.status;\n return strippedResponse;\n}\n\n/**\n * Returns a stripped version of the Http Request that does not contain the\n * Authorization header.\n *\n * @param request - The Http Request object\n * @returns The stripped version of Http Request.\n */\nexport function stripRequest(request: WebResourceLike): WebResourceLike {\n const strippedRequest = request.clone();\n if (strippedRequest.headers) {\n strippedRequest.headers.remove(\"authorization\");\n }\n return strippedRequest;\n}\n\n/**\n * Validates the given uuid as a string\n *\n * @param uuid - The uuid as a string that needs to be validated\n * @returns True if the uuid is valid; false otherwise.\n */\nexport function isValidUuid(uuid: string): boolean {\n return validUuidRegex.test(uuid);\n}\n\n/**\n * Generated UUID\n *\n * @returns RFC4122 v4 UUID.\n */\nexport function generateUuid(): string {\n return uuidv4();\n}\n\n/**\n * Executes an array of promises sequentially. Inspiration of this method is here:\n * https://pouchdb.com/2015/05/18/we-have-a-problem-with-promises.html. An awesome blog on promises!\n *\n * @param promiseFactories - An array of promise factories(A function that return a promise)\n * @param kickstart - Input to the first promise that is used to kickstart the promise chain.\n * If not provided then the promise chain starts with undefined.\n * @returns A chain of resolved or rejected promises\n */\nexport function executePromisesSequentially(\n promiseFactories: Array,\n kickstart: unknown\n): Promise {\n let result = Promise.resolve(kickstart);\n promiseFactories.forEach((promiseFactory) => {\n result = result.then(promiseFactory);\n });\n return result;\n}\n\n/**\n * Service callback that is returned for REST requests initiated by the service client.\n */\nexport interface ServiceCallback {\n /**\n * A method that will be invoked as a callback to a service function.\n * @param err - The error occurred if any, while executing the request; otherwise null.\n * @param result - The deserialized response body if an error did not occur.\n * @param request - The raw/actual request sent to the server if an error did not occur.\n * @param response - The raw/actual response from the server if an error did not occur.\n */\n (\n err: Error | RestError | null,\n result?: TResult,\n request?: WebResourceLike,\n response?: HttpOperationResponse\n ): void;\n}\n\n/**\n * Converts a Promise to a callback.\n * @param promise - The Promise to be converted to a callback\n * @returns A function that takes the callback `(cb: Function) => void`\n * @deprecated generated code should instead depend on responseToBody\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function promiseToCallback(promise: Promise): (cb: Function) => void {\n if (typeof promise.then !== \"function\") {\n throw new Error(\"The provided input is not a Promise.\");\n }\n // eslint-disable-next-line @typescript-eslint/ban-types\n return (cb: Function): void => {\n promise\n .then((data: any) => {\n // eslint-disable-next-line promise/no-callback-in-promise\n return cb(undefined, data);\n })\n .catch((err: Error) => {\n // eslint-disable-next-line promise/no-callback-in-promise\n cb(err);\n });\n };\n}\n\n/**\n * Converts a Promise to a service callback.\n * @param promise - The Promise of HttpOperationResponse to be converted to a service callback\n * @returns A function that takes the service callback (cb: ServiceCallback): void\n */\nexport function promiseToServiceCallback(\n promise: Promise\n): (cb: ServiceCallback) => void {\n if (typeof promise.then !== \"function\") {\n throw new Error(\"The provided input is not a Promise.\");\n }\n return (cb: ServiceCallback): void => {\n promise\n .then((data: HttpOperationResponse) => {\n return process.nextTick(cb, undefined, data.parsedBody as T, data.request, data);\n })\n .catch((err: Error) => {\n process.nextTick(cb, err);\n });\n };\n}\n\nexport function prepareXMLRootList(\n obj: unknown,\n elementName: string,\n xmlNamespaceKey?: string,\n xmlNamespace?: string\n): { [s: string]: any } {\n if (!Array.isArray(obj)) {\n obj = [obj];\n }\n\n if (!xmlNamespaceKey || !xmlNamespace) {\n return { [elementName]: obj };\n }\n\n const result = { [elementName]: obj };\n result[XML_ATTRKEY] = { [xmlNamespaceKey]: xmlNamespace };\n return result;\n}\n\n/**\n * Applies the properties on the prototype of sourceCtors to the prototype of targetCtor\n * @param targetCtor - The target object on which the properties need to be applied.\n * @param sourceCtors - An array of source objects from which the properties need to be taken.\n */\nexport function applyMixins(targetCtorParam: unknown, sourceCtors: any[]): void {\n const castTargetCtorParam = targetCtorParam as {\n prototype: Record;\n };\n sourceCtors.forEach((sourceCtor) => {\n Object.getOwnPropertyNames(sourceCtor.prototype).forEach((name) => {\n castTargetCtorParam.prototype[name] = sourceCtor.prototype[name];\n });\n });\n}\n\nconst validateISODuration =\n /^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;\n\n/**\n * Indicates whether the given string is in ISO 8601 format.\n * @param value - The value to be validated for ISO 8601 duration format.\n * @returns `true` if valid, `false` otherwise.\n */\nexport function isDuration(value: string): boolean {\n return validateISODuration.test(value);\n}\n\n/**\n * Replace all of the instances of searchValue in value with the provided replaceValue.\n * @param value - The value to search and replace in.\n * @param searchValue - The value to search for in the value argument.\n * @param replaceValue - The value to replace searchValue with in the value argument.\n * @returns The value where each instance of searchValue was replaced with replacedValue.\n */\nexport function replaceAll(\n value: string | undefined,\n searchValue: string,\n replaceValue: string\n): string | undefined {\n return !value || !searchValue ? value : value.split(searchValue).join(replaceValue || \"\");\n}\n\n/**\n * Determines whether the given entity is a basic/primitive type\n * (string, number, boolean, null, undefined).\n * @param value - Any entity\n * @returns true is it is primitive type, false otherwise.\n */\nexport function isPrimitiveType(value: unknown): boolean {\n return (typeof value !== \"object\" && typeof value !== \"function\") || value === null;\n}\n\nexport function getEnvironmentValue(name: string): string | undefined {\n if (process.env[name]) {\n return process.env[name];\n } else if (process.env[name.toLowerCase()]) {\n return process.env[name.toLowerCase()];\n }\n return undefined;\n}\n\n/**\n * @internal\n */\nexport type UnknownObject = { [s: string]: unknown };\n\n/**\n * @internal\n * @returns true when input is an object type that is not null, Array, RegExp, or Date.\n */\nexport function isObject(input: unknown): input is UnknownObject {\n return (\n typeof input === \"object\" &&\n input !== null &&\n !Array.isArray(input) &&\n !(input instanceof RegExp) &&\n !(input instanceof Date)\n );\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/**\n * A set of constants used internally when processing requests.\n */\nexport const Constants = {\n /**\n * The core-http version\n */\n coreHttpVersion: \"2.2.4\",\n\n /**\n * Specifies HTTP.\n */\n HTTP: \"http:\",\n\n /**\n * Specifies HTTPS.\n */\n HTTPS: \"https:\",\n\n /**\n * Specifies HTTP Proxy.\n */\n HTTP_PROXY: \"HTTP_PROXY\",\n\n /**\n * Specifies HTTPS Proxy.\n */\n HTTPS_PROXY: \"HTTPS_PROXY\",\n\n /**\n * Specifies NO Proxy.\n */\n NO_PROXY: \"NO_PROXY\",\n\n /**\n * Specifies ALL Proxy.\n */\n ALL_PROXY: \"ALL_PROXY\",\n\n HttpConstants: {\n /**\n * Http Verbs\n */\n HttpVerbs: {\n PUT: \"PUT\",\n GET: \"GET\",\n DELETE: \"DELETE\",\n POST: \"POST\",\n MERGE: \"MERGE\",\n HEAD: \"HEAD\",\n PATCH: \"PATCH\",\n },\n\n StatusCodes: {\n TooManyRequests: 429,\n ServiceUnavailable: 503,\n },\n },\n\n /**\n * Defines constants for use with HTTP headers.\n */\n HeaderConstants: {\n /**\n * The Authorization header.\n */\n AUTHORIZATION: \"authorization\",\n\n AUTHORIZATION_SCHEME: \"Bearer\",\n\n /**\n * The Retry-After response-header field can be used with a 503 (Service\n * Unavailable) or 349 (Too Many Requests) responses to indicate how long\n * the service is expected to be unavailable to the requesting client.\n */\n RETRY_AFTER: \"Retry-After\",\n\n /**\n * The UserAgent header.\n */\n USER_AGENT: \"User-Agent\",\n },\n};\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Default key used to access the XML attributes.\n */\nexport const XML_ATTRKEY = \"$\";\n/**\n * Default key used to access the XML value content.\n */\nexport const XML_CHARKEY = \"_\";\n\n/**\n * Options to govern behavior of xml parser and builder.\n */\nexport interface SerializerOptions {\n /**\n * indicates the name of the root element in the resulting XML when building XML.\n */\n rootName?: string;\n /**\n * indicates whether the root element is to be included or not in the output when parsing XML.\n */\n includeRoot?: boolean;\n /**\n * key used to access the XML value content when parsing XML.\n */\n xmlCharKey?: string;\n}\n","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return stringify(rnds);\n}\n\nexport default v4;","import crypto from 'crypto';\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\nexport default function rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n crypto.randomFillSync(rnds8Pool);\n poolPtr = 0;\n }\n\n return rnds8Pool.slice(poolPtr, poolPtr += 16);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction stringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n const uuid = (byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]]).toLowerCase(); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","import REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","var CombinedStream = require('combined-stream');\nvar util = require('util');\nvar path = require('path');\nvar http = require('http');\nvar https = require('https');\nvar parseUrl = require('url').parse;\nvar fs = require('fs');\nvar Stream = require('stream').Stream;\nvar mime = require('mime-types');\nvar asynckit = require('asynckit');\nvar populate = require('./populate.js');\n\n// Public API\nmodule.exports = FormData;\n\n// make it a Stream\nutil.inherits(FormData, CombinedStream);\n\n/**\n * Create readable \"multipart/form-data\" streams.\n * Can be used to submit forms\n * and file uploads to other web applications.\n *\n * @constructor\n * @param {Object} options - Properties to be added/overriden for FormData and CombinedStream\n */\nfunction FormData(options) {\n if (!(this instanceof FormData)) {\n return new FormData(options);\n }\n\n this._overheadLength = 0;\n this._valueLength = 0;\n this._valuesToMeasure = [];\n\n CombinedStream.call(this);\n\n options = options || {};\n for (var option in options) {\n this[option] = options[option];\n }\n}\n\nFormData.LINE_BREAK = '\\r\\n';\nFormData.DEFAULT_CONTENT_TYPE = 'application/octet-stream';\n\nFormData.prototype.append = function(field, value, options) {\n\n options = options || {};\n\n // allow filename as single option\n if (typeof options == 'string') {\n options = {filename: options};\n }\n\n var append = CombinedStream.prototype.append.bind(this);\n\n // all that streamy business can't handle numbers\n if (typeof value == 'number') {\n value = '' + value;\n }\n\n // https://github.com/felixge/node-form-data/issues/38\n if (util.isArray(value)) {\n // Please convert your array into string\n // the way web server expects it\n this._error(new Error('Arrays are not supported.'));\n return;\n }\n\n var header = this._multiPartHeader(field, value, options);\n var footer = this._multiPartFooter();\n\n append(header);\n append(value);\n append(footer);\n\n // pass along options.knownLength\n this._trackLength(header, value, options);\n};\n\nFormData.prototype._trackLength = function(header, value, options) {\n var valueLength = 0;\n\n // used w/ getLengthSync(), when length is known.\n // e.g. for streaming directly from a remote server,\n // w/ a known file a size, and not wanting to wait for\n // incoming file to finish to get its size.\n if (options.knownLength != null) {\n valueLength += +options.knownLength;\n } else if (Buffer.isBuffer(value)) {\n valueLength = value.length;\n } else if (typeof value === 'string') {\n valueLength = Buffer.byteLength(value);\n }\n\n this._valueLength += valueLength;\n\n // @check why add CRLF? does this account for custom/multiple CRLFs?\n this._overheadLength +=\n Buffer.byteLength(header) +\n FormData.LINE_BREAK.length;\n\n // empty or either doesn't have path or not an http response or not a stream\n if (!value || ( !value.path && !(value.readable && value.hasOwnProperty('httpVersion')) && !(value instanceof Stream))) {\n return;\n }\n\n // no need to bother with the length\n if (!options.knownLength) {\n this._valuesToMeasure.push(value);\n }\n};\n\nFormData.prototype._lengthRetriever = function(value, callback) {\n\n if (value.hasOwnProperty('fd')) {\n\n // take read range into a account\n // `end` = Infinity –> read file till the end\n //\n // TODO: Looks like there is bug in Node fs.createReadStream\n // it doesn't respect `end` options without `start` options\n // Fix it when node fixes it.\n // https://github.com/joyent/node/issues/7819\n if (value.end != undefined && value.end != Infinity && value.start != undefined) {\n\n // when end specified\n // no need to calculate range\n // inclusive, starts with 0\n callback(null, value.end + 1 - (value.start ? value.start : 0));\n\n // not that fast snoopy\n } else {\n // still need to fetch file size from fs\n fs.stat(value.path, function(err, stat) {\n\n var fileSize;\n\n if (err) {\n callback(err);\n return;\n }\n\n // update final size based on the range options\n fileSize = stat.size - (value.start ? value.start : 0);\n callback(null, fileSize);\n });\n }\n\n // or http response\n } else if (value.hasOwnProperty('httpVersion')) {\n callback(null, +value.headers['content-length']);\n\n // or request stream http://github.com/mikeal/request\n } else if (value.hasOwnProperty('httpModule')) {\n // wait till response come back\n value.on('response', function(response) {\n value.pause();\n callback(null, +response.headers['content-length']);\n });\n value.resume();\n\n // something else\n } else {\n callback('Unknown stream');\n }\n};\n\nFormData.prototype._multiPartHeader = function(field, value, options) {\n // custom header specified (as string)?\n // it becomes responsible for boundary\n // (e.g. to handle extra CRLFs on .NET servers)\n if (typeof options.header == 'string') {\n return options.header;\n }\n\n var contentDisposition = this._getContentDisposition(value, options);\n var contentType = this._getContentType(value, options);\n\n var contents = '';\n var headers = {\n // add custom disposition as third element or keep it two elements if not\n 'Content-Disposition': ['form-data', 'name=\"' + field + '\"'].concat(contentDisposition || []),\n // if no content type. allow it to be empty array\n 'Content-Type': [].concat(contentType || [])\n };\n\n // allow custom headers.\n if (typeof options.header == 'object') {\n populate(headers, options.header);\n }\n\n var header;\n for (var prop in headers) {\n if (!headers.hasOwnProperty(prop)) continue;\n header = headers[prop];\n\n // skip nullish headers.\n if (header == null) {\n continue;\n }\n\n // convert all headers to arrays.\n if (!Array.isArray(header)) {\n header = [header];\n }\n\n // add non-empty headers.\n if (header.length) {\n contents += prop + ': ' + header.join('; ') + FormData.LINE_BREAK;\n }\n }\n\n return '--' + this.getBoundary() + FormData.LINE_BREAK + contents + FormData.LINE_BREAK;\n};\n\nFormData.prototype._getContentDisposition = function(value, options) {\n\n var filename\n , contentDisposition\n ;\n\n if (typeof options.filepath === 'string') {\n // custom filepath for relative paths\n filename = path.normalize(options.filepath).replace(/\\\\/g, '/');\n } else if (options.filename || value.name || value.path) {\n // custom filename take precedence\n // formidable and the browser add a name property\n // fs- and request- streams have path property\n filename = path.basename(options.filename || value.name || value.path);\n } else if (value.readable && value.hasOwnProperty('httpVersion')) {\n // or try http response\n filename = path.basename(value.client._httpMessage.path || '');\n }\n\n if (filename) {\n contentDisposition = 'filename=\"' + filename + '\"';\n }\n\n return contentDisposition;\n};\n\nFormData.prototype._getContentType = function(value, options) {\n\n // use custom content-type above all\n var contentType = options.contentType;\n\n // or try `name` from formidable, browser\n if (!contentType && value.name) {\n contentType = mime.lookup(value.name);\n }\n\n // or try `path` from fs-, request- streams\n if (!contentType && value.path) {\n contentType = mime.lookup(value.path);\n }\n\n // or if it's http-reponse\n if (!contentType && value.readable && value.hasOwnProperty('httpVersion')) {\n contentType = value.headers['content-type'];\n }\n\n // or guess it from the filepath or filename\n if (!contentType && (options.filepath || options.filename)) {\n contentType = mime.lookup(options.filepath || options.filename);\n }\n\n // fallback to the default content type if `value` is not simple value\n if (!contentType && typeof value == 'object') {\n contentType = FormData.DEFAULT_CONTENT_TYPE;\n }\n\n return contentType;\n};\n\nFormData.prototype._multiPartFooter = function() {\n return function(next) {\n var footer = FormData.LINE_BREAK;\n\n var lastPart = (this._streams.length === 0);\n if (lastPart) {\n footer += this._lastBoundary();\n }\n\n next(footer);\n }.bind(this);\n};\n\nFormData.prototype._lastBoundary = function() {\n return '--' + this.getBoundary() + '--' + FormData.LINE_BREAK;\n};\n\nFormData.prototype.getHeaders = function(userHeaders) {\n var header;\n var formHeaders = {\n 'content-type': 'multipart/form-data; boundary=' + this.getBoundary()\n };\n\n for (header in userHeaders) {\n if (userHeaders.hasOwnProperty(header)) {\n formHeaders[header.toLowerCase()] = userHeaders[header];\n }\n }\n\n return formHeaders;\n};\n\nFormData.prototype.setBoundary = function(boundary) {\n this._boundary = boundary;\n};\n\nFormData.prototype.getBoundary = function() {\n if (!this._boundary) {\n this._generateBoundary();\n }\n\n return this._boundary;\n};\n\nFormData.prototype.getBuffer = function() {\n var dataBuffer = new Buffer.alloc( 0 );\n var boundary = this.getBoundary();\n\n // Create the form content. Add Line breaks to the end of data.\n for (var i = 0, len = this._streams.length; i < len; i++) {\n if (typeof this._streams[i] !== 'function') {\n\n // Add content to the buffer.\n if(Buffer.isBuffer(this._streams[i])) {\n dataBuffer = Buffer.concat( [dataBuffer, this._streams[i]]);\n }else {\n dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(this._streams[i])]);\n }\n\n // Add break after content.\n if (typeof this._streams[i] !== 'string' || this._streams[i].substring( 2, boundary.length + 2 ) !== boundary) {\n dataBuffer = Buffer.concat( [dataBuffer, Buffer.from(FormData.LINE_BREAK)] );\n }\n }\n }\n\n // Add the footer and return the Buffer object.\n return Buffer.concat( [dataBuffer, Buffer.from(this._lastBoundary())] );\n};\n\nFormData.prototype._generateBoundary = function() {\n // This generates a 50 character boundary similar to those used by Firefox.\n // They are optimized for boyer-moore parsing.\n var boundary = '--------------------------';\n for (var i = 0; i < 24; i++) {\n boundary += Math.floor(Math.random() * 10).toString(16);\n }\n\n this._boundary = boundary;\n};\n\n// Note: getLengthSync DOESN'T calculate streams length\n// As workaround one can calculate file size manually\n// and add it as knownLength option\nFormData.prototype.getLengthSync = function() {\n var knownLength = this._overheadLength + this._valueLength;\n\n // Don't get confused, there are 3 \"internal\" streams for each keyval pair\n // so it basically checks if there is any value added to the form\n if (this._streams.length) {\n knownLength += this._lastBoundary().length;\n }\n\n // https://github.com/form-data/form-data/issues/40\n if (!this.hasKnownLength()) {\n // Some async length retrievers are present\n // therefore synchronous length calculation is false.\n // Please use getLength(callback) to get proper length\n this._error(new Error('Cannot calculate proper length in synchronous way.'));\n }\n\n return knownLength;\n};\n\n// Public API to check if length of added values is known\n// https://github.com/form-data/form-data/issues/196\n// https://github.com/form-data/form-data/issues/262\nFormData.prototype.hasKnownLength = function() {\n var hasKnownLength = true;\n\n if (this._valuesToMeasure.length) {\n hasKnownLength = false;\n }\n\n return hasKnownLength;\n};\n\nFormData.prototype.getLength = function(cb) {\n var knownLength = this._overheadLength + this._valueLength;\n\n if (this._streams.length) {\n knownLength += this._lastBoundary().length;\n }\n\n if (!this._valuesToMeasure.length) {\n process.nextTick(cb.bind(this, null, knownLength));\n return;\n }\n\n asynckit.parallel(this._valuesToMeasure, this._lengthRetriever, function(err, values) {\n if (err) {\n cb(err);\n return;\n }\n\n values.forEach(function(length) {\n knownLength += length;\n });\n\n cb(null, knownLength);\n });\n};\n\nFormData.prototype.submit = function(params, cb) {\n var request\n , options\n , defaults = {method: 'post'}\n ;\n\n // parse provided url if it's string\n // or treat it as options object\n if (typeof params == 'string') {\n\n params = parseUrl(params);\n options = populate({\n port: params.port,\n path: params.pathname,\n host: params.hostname,\n protocol: params.protocol\n }, defaults);\n\n // use custom params\n } else {\n\n options = populate(params, defaults);\n // if no port provided use default one\n if (!options.port) {\n options.port = options.protocol == 'https:' ? 443 : 80;\n }\n }\n\n // put that good code in getHeaders to some use\n options.headers = this.getHeaders(params.headers);\n\n // https if specified, fallback to http in any other case\n if (options.protocol == 'https:') {\n request = https.request(options);\n } else {\n request = http.request(options);\n }\n\n // get content length and fire away\n this.getLength(function(err, length) {\n if (err && err !== 'Unknown stream') {\n this._error(err);\n return;\n }\n\n // add content length\n if (length) {\n request.setHeader('Content-Length', length);\n }\n\n this.pipe(request);\n if (cb) {\n var onResponse;\n\n var callback = function (error, responce) {\n request.removeListener('error', callback);\n request.removeListener('response', onResponse);\n\n return cb.call(this, error, responce);\n };\n\n onResponse = callback.bind(this, null);\n\n request.on('error', callback);\n request.on('response', onResponse);\n }\n }.bind(this));\n\n return request;\n};\n\nFormData.prototype._error = function(err) {\n if (!this.error) {\n this.error = err;\n this.pause();\n this.emit('error', err);\n }\n};\n\nFormData.prototype.toString = function () {\n return '[object FormData]';\n};\n","var util = require('util');\nvar Stream = require('stream').Stream;\nvar DelayedStream = require('delayed-stream');\n\nmodule.exports = CombinedStream;\nfunction CombinedStream() {\n this.writable = false;\n this.readable = true;\n this.dataSize = 0;\n this.maxDataSize = 2 * 1024 * 1024;\n this.pauseStreams = true;\n\n this._released = false;\n this._streams = [];\n this._currentStream = null;\n this._insideLoop = false;\n this._pendingNext = false;\n}\nutil.inherits(CombinedStream, Stream);\n\nCombinedStream.create = function(options) {\n var combinedStream = new this();\n\n options = options || {};\n for (var option in options) {\n combinedStream[option] = options[option];\n }\n\n return combinedStream;\n};\n\nCombinedStream.isStreamLike = function(stream) {\n return (typeof stream !== 'function')\n && (typeof stream !== 'string')\n && (typeof stream !== 'boolean')\n && (typeof stream !== 'number')\n && (!Buffer.isBuffer(stream));\n};\n\nCombinedStream.prototype.append = function(stream) {\n var isStreamLike = CombinedStream.isStreamLike(stream);\n\n if (isStreamLike) {\n if (!(stream instanceof DelayedStream)) {\n var newStream = DelayedStream.create(stream, {\n maxDataSize: Infinity,\n pauseStream: this.pauseStreams,\n });\n stream.on('data', this._checkDataSize.bind(this));\n stream = newStream;\n }\n\n this._handleErrors(stream);\n\n if (this.pauseStreams) {\n stream.pause();\n }\n }\n\n this._streams.push(stream);\n return this;\n};\n\nCombinedStream.prototype.pipe = function(dest, options) {\n Stream.prototype.pipe.call(this, dest, options);\n this.resume();\n return dest;\n};\n\nCombinedStream.prototype._getNext = function() {\n this._currentStream = null;\n\n if (this._insideLoop) {\n this._pendingNext = true;\n return; // defer call\n }\n\n this._insideLoop = true;\n try {\n do {\n this._pendingNext = false;\n this._realGetNext();\n } while (this._pendingNext);\n } finally {\n this._insideLoop = false;\n }\n};\n\nCombinedStream.prototype._realGetNext = function() {\n var stream = this._streams.shift();\n\n\n if (typeof stream == 'undefined') {\n this.end();\n return;\n }\n\n if (typeof stream !== 'function') {\n this._pipeNext(stream);\n return;\n }\n\n var getStream = stream;\n getStream(function(stream) {\n var isStreamLike = CombinedStream.isStreamLike(stream);\n if (isStreamLike) {\n stream.on('data', this._checkDataSize.bind(this));\n this._handleErrors(stream);\n }\n\n this._pipeNext(stream);\n }.bind(this));\n};\n\nCombinedStream.prototype._pipeNext = function(stream) {\n this._currentStream = stream;\n\n var isStreamLike = CombinedStream.isStreamLike(stream);\n if (isStreamLike) {\n stream.on('end', this._getNext.bind(this));\n stream.pipe(this, {end: false});\n return;\n }\n\n var value = stream;\n this.write(value);\n this._getNext();\n};\n\nCombinedStream.prototype._handleErrors = function(stream) {\n var self = this;\n stream.on('error', function(err) {\n self._emitError(err);\n });\n};\n\nCombinedStream.prototype.write = function(data) {\n this.emit('data', data);\n};\n\nCombinedStream.prototype.pause = function() {\n if (!this.pauseStreams) {\n return;\n }\n\n if(this.pauseStreams && this._currentStream && typeof(this._currentStream.pause) == 'function') this._currentStream.pause();\n this.emit('pause');\n};\n\nCombinedStream.prototype.resume = function() {\n if (!this._released) {\n this._released = true;\n this.writable = true;\n this._getNext();\n }\n\n if(this.pauseStreams && this._currentStream && typeof(this._currentStream.resume) == 'function') this._currentStream.resume();\n this.emit('resume');\n};\n\nCombinedStream.prototype.end = function() {\n this._reset();\n this.emit('end');\n};\n\nCombinedStream.prototype.destroy = function() {\n this._reset();\n this.emit('close');\n};\n\nCombinedStream.prototype._reset = function() {\n this.writable = false;\n this._streams = [];\n this._currentStream = null;\n};\n\nCombinedStream.prototype._checkDataSize = function() {\n this._updateDataSize();\n if (this.dataSize <= this.maxDataSize) {\n return;\n }\n\n var message =\n 'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.';\n this._emitError(new Error(message));\n};\n\nCombinedStream.prototype._updateDataSize = function() {\n this.dataSize = 0;\n\n var self = this;\n this._streams.forEach(function(stream) {\n if (!stream.dataSize) {\n return;\n }\n\n self.dataSize += stream.dataSize;\n });\n\n if (this._currentStream && this._currentStream.dataSize) {\n this.dataSize += this._currentStream.dataSize;\n }\n};\n\nCombinedStream.prototype._emitError = function(err) {\n this._reset();\n this.emit('error', err);\n};\n","var Stream = require('stream').Stream;\nvar util = require('util');\n\nmodule.exports = DelayedStream;\nfunction DelayedStream() {\n this.source = null;\n this.dataSize = 0;\n this.maxDataSize = 1024 * 1024;\n this.pauseStream = true;\n\n this._maxDataSizeExceeded = false;\n this._released = false;\n this._bufferedEvents = [];\n}\nutil.inherits(DelayedStream, Stream);\n\nDelayedStream.create = function(source, options) {\n var delayedStream = new this();\n\n options = options || {};\n for (var option in options) {\n delayedStream[option] = options[option];\n }\n\n delayedStream.source = source;\n\n var realEmit = source.emit;\n source.emit = function() {\n delayedStream._handleEmit(arguments);\n return realEmit.apply(source, arguments);\n };\n\n source.on('error', function() {});\n if (delayedStream.pauseStream) {\n source.pause();\n }\n\n return delayedStream;\n};\n\nObject.defineProperty(DelayedStream.prototype, 'readable', {\n configurable: true,\n enumerable: true,\n get: function() {\n return this.source.readable;\n }\n});\n\nDelayedStream.prototype.setEncoding = function() {\n return this.source.setEncoding.apply(this.source, arguments);\n};\n\nDelayedStream.prototype.resume = function() {\n if (!this._released) {\n this.release();\n }\n\n this.source.resume();\n};\n\nDelayedStream.prototype.pause = function() {\n this.source.pause();\n};\n\nDelayedStream.prototype.release = function() {\n this._released = true;\n\n this._bufferedEvents.forEach(function(args) {\n this.emit.apply(this, args);\n }.bind(this));\n this._bufferedEvents = [];\n};\n\nDelayedStream.prototype.pipe = function() {\n var r = Stream.prototype.pipe.apply(this, arguments);\n this.resume();\n return r;\n};\n\nDelayedStream.prototype._handleEmit = function(args) {\n if (this._released) {\n this.emit.apply(this, args);\n return;\n }\n\n if (args[0] === 'data') {\n this.dataSize += args[1].length;\n this._checkIfMaxDataSizeExceeded();\n }\n\n this._bufferedEvents.push(args);\n};\n\nDelayedStream.prototype._checkIfMaxDataSizeExceeded = function() {\n if (this._maxDataSizeExceeded) {\n return;\n }\n\n if (this.dataSize <= this.maxDataSize) {\n return;\n }\n\n this._maxDataSizeExceeded = true;\n var message =\n 'DelayedStream#maxDataSize of ' + this.maxDataSize + ' bytes exceeded.'\n this.emit('error', new Error(message));\n};\n","/*!\n * mime-types\n * Copyright(c) 2014 Jonathan Ong\n * Copyright(c) 2015 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n'use strict'\n\n/**\n * Module dependencies.\n * @private\n */\n\nvar db = require('mime-db')\nvar extname = require('path').extname\n\n/**\n * Module variables.\n * @private\n */\n\nvar EXTRACT_TYPE_REGEXP = /^\\s*([^;\\s]*)(?:;|\\s|$)/\nvar TEXT_TYPE_REGEXP = /^text\\//i\n\n/**\n * Module exports.\n * @public\n */\n\nexports.charset = charset\nexports.charsets = { lookup: charset }\nexports.contentType = contentType\nexports.extension = extension\nexports.extensions = Object.create(null)\nexports.lookup = lookup\nexports.types = Object.create(null)\n\n// Populate the extensions/types maps\npopulateMaps(exports.extensions, exports.types)\n\n/**\n * Get the default charset for a MIME type.\n *\n * @param {string} type\n * @return {boolean|string}\n */\n\nfunction charset (type) {\n if (!type || typeof type !== 'string') {\n return false\n }\n\n // TODO: use media-typer\n var match = EXTRACT_TYPE_REGEXP.exec(type)\n var mime = match && db[match[1].toLowerCase()]\n\n if (mime && mime.charset) {\n return mime.charset\n }\n\n // default text/* to utf-8\n if (match && TEXT_TYPE_REGEXP.test(match[1])) {\n return 'UTF-8'\n }\n\n return false\n}\n\n/**\n * Create a full Content-Type header given a MIME type or extension.\n *\n * @param {string} str\n * @return {boolean|string}\n */\n\nfunction contentType (str) {\n // TODO: should this even be in this module?\n if (!str || typeof str !== 'string') {\n return false\n }\n\n var mime = str.indexOf('/') === -1\n ? exports.lookup(str)\n : str\n\n if (!mime) {\n return false\n }\n\n // TODO: use content-type or other module\n if (mime.indexOf('charset') === -1) {\n var charset = exports.charset(mime)\n if (charset) mime += '; charset=' + charset.toLowerCase()\n }\n\n return mime\n}\n\n/**\n * Get the default extension for a MIME type.\n *\n * @param {string} type\n * @return {boolean|string}\n */\n\nfunction extension (type) {\n if (!type || typeof type !== 'string') {\n return false\n }\n\n // TODO: use media-typer\n var match = EXTRACT_TYPE_REGEXP.exec(type)\n\n // get extensions\n var exts = match && exports.extensions[match[1].toLowerCase()]\n\n if (!exts || !exts.length) {\n return false\n }\n\n return exts[0]\n}\n\n/**\n * Lookup the MIME type for a file path/extension.\n *\n * @param {string} path\n * @return {boolean|string}\n */\n\nfunction lookup (path) {\n if (!path || typeof path !== 'string') {\n return false\n }\n\n // get the extension (\"ext\" or \".ext\" or full path)\n var extension = extname('x.' + path)\n .toLowerCase()\n .substr(1)\n\n if (!extension) {\n return false\n }\n\n return exports.types[extension] || false\n}\n\n/**\n * Populate the extensions and types maps.\n * @private\n */\n\nfunction populateMaps (extensions, types) {\n // source preference (least -> most)\n var preference = ['nginx', 'apache', undefined, 'iana']\n\n Object.keys(db).forEach(function forEachMimeType (type) {\n var mime = db[type]\n var exts = mime.extensions\n\n if (!exts || !exts.length) {\n return\n }\n\n // mime -> extensions\n extensions[type] = exts\n\n // extension -> mime\n for (var i = 0; i < exts.length; i++) {\n var extension = exts[i]\n\n if (types[extension]) {\n var from = preference.indexOf(db[types[extension]].source)\n var to = preference.indexOf(mime.source)\n\n if (types[extension] !== 'application/octet-stream' &&\n (from > to || (from === to && types[extension].substr(0, 12) === 'application/'))) {\n // skip the remapping\n continue\n }\n }\n\n // set the extension -> mime\n types[extension] = type\n }\n })\n}\n","/*!\n * mime-db\n * Copyright(c) 2014 Jonathan Ong\n * Copyright(c) 2015-2022 Douglas Christopher Wilson\n * MIT Licensed\n */\n\n/**\n * Module exports.\n */\n\nmodule.exports = require('./db.json')\n","{\n \"application/1d-interleaved-parityfec\": {\n \"source\": \"iana\"\n },\n \"application/3gpdash-qoe-report+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/3gpp-ims+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/3gpphal+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/3gpphalforms+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/a2l\": {\n \"source\": \"iana\"\n },\n \"application/ace+cbor\": {\n \"source\": \"iana\"\n },\n \"application/activemessage\": {\n \"source\": \"iana\"\n },\n \"application/activity+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-costmap+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-costmapfilter+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-directory+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-endpointcost+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-endpointcostparams+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-endpointprop+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-endpointpropparams+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-error+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-networkmap+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-networkmapfilter+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-updatestreamcontrol+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/alto-updatestreamparams+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/aml\": {\n \"source\": \"iana\"\n },\n \"application/andrew-inset\": {\n \"source\": \"iana\",\n \"extensions\": [\"ez\"]\n },\n \"application/applefile\": {\n \"source\": \"iana\"\n },\n \"application/applixware\": {\n \"source\": \"apache\",\n \"extensions\": [\"aw\"]\n },\n \"application/at+jwt\": {\n \"source\": \"iana\"\n },\n \"application/atf\": {\n \"source\": \"iana\"\n },\n \"application/atfx\": {\n \"source\": \"iana\"\n },\n \"application/atom+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"atom\"]\n },\n \"application/atomcat+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"atomcat\"]\n },\n \"application/atomdeleted+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"atomdeleted\"]\n },\n \"application/atomicmail\": {\n \"source\": \"iana\"\n },\n \"application/atomsvc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"atomsvc\"]\n },\n \"application/atsc-dwd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"dwd\"]\n },\n \"application/atsc-dynamic-event-message\": {\n \"source\": \"iana\"\n },\n \"application/atsc-held+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"held\"]\n },\n \"application/atsc-rdt+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/atsc-rsat+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rsat\"]\n },\n \"application/atxml\": {\n \"source\": \"iana\"\n },\n \"application/auth-policy+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/bacnet-xdd+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/batch-smtp\": {\n \"source\": \"iana\"\n },\n \"application/bdoc\": {\n \"compressible\": false,\n \"extensions\": [\"bdoc\"]\n },\n \"application/beep+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/calendar+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/calendar+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xcs\"]\n },\n \"application/call-completion\": {\n \"source\": \"iana\"\n },\n \"application/cals-1840\": {\n \"source\": \"iana\"\n },\n \"application/captive+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cbor\": {\n \"source\": \"iana\"\n },\n \"application/cbor-seq\": {\n \"source\": \"iana\"\n },\n \"application/cccex\": {\n \"source\": \"iana\"\n },\n \"application/ccmp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/ccxml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ccxml\"]\n },\n \"application/cdfx+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"cdfx\"]\n },\n \"application/cdmi-capability\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdmia\"]\n },\n \"application/cdmi-container\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdmic\"]\n },\n \"application/cdmi-domain\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdmid\"]\n },\n \"application/cdmi-object\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdmio\"]\n },\n \"application/cdmi-queue\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdmiq\"]\n },\n \"application/cdni\": {\n \"source\": \"iana\"\n },\n \"application/cea\": {\n \"source\": \"iana\"\n },\n \"application/cea-2018+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cellml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cfw\": {\n \"source\": \"iana\"\n },\n \"application/city+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/clr\": {\n \"source\": \"iana\"\n },\n \"application/clue+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/clue_info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cms\": {\n \"source\": \"iana\"\n },\n \"application/cnrp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/coap-group+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/coap-payload\": {\n \"source\": \"iana\"\n },\n \"application/commonground\": {\n \"source\": \"iana\"\n },\n \"application/conference-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cose\": {\n \"source\": \"iana\"\n },\n \"application/cose-key\": {\n \"source\": \"iana\"\n },\n \"application/cose-key-set\": {\n \"source\": \"iana\"\n },\n \"application/cpl+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"cpl\"]\n },\n \"application/csrattrs\": {\n \"source\": \"iana\"\n },\n \"application/csta+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cstadata+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/csvm+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/cu-seeme\": {\n \"source\": \"apache\",\n \"extensions\": [\"cu\"]\n },\n \"application/cwt\": {\n \"source\": \"iana\"\n },\n \"application/cybercash\": {\n \"source\": \"iana\"\n },\n \"application/dart\": {\n \"compressible\": true\n },\n \"application/dash+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mpd\"]\n },\n \"application/dash-patch+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mpp\"]\n },\n \"application/dashdelta\": {\n \"source\": \"iana\"\n },\n \"application/davmount+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"davmount\"]\n },\n \"application/dca-rft\": {\n \"source\": \"iana\"\n },\n \"application/dcd\": {\n \"source\": \"iana\"\n },\n \"application/dec-dx\": {\n \"source\": \"iana\"\n },\n \"application/dialog-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/dicom\": {\n \"source\": \"iana\"\n },\n \"application/dicom+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/dicom+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/dii\": {\n \"source\": \"iana\"\n },\n \"application/dit\": {\n \"source\": \"iana\"\n },\n \"application/dns\": {\n \"source\": \"iana\"\n },\n \"application/dns+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/dns-message\": {\n \"source\": \"iana\"\n },\n \"application/docbook+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"dbk\"]\n },\n \"application/dots+cbor\": {\n \"source\": \"iana\"\n },\n \"application/dskpp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/dssc+der\": {\n \"source\": \"iana\",\n \"extensions\": [\"dssc\"]\n },\n \"application/dssc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xdssc\"]\n },\n \"application/dvcs\": {\n \"source\": \"iana\"\n },\n \"application/ecmascript\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"es\",\"ecma\"]\n },\n \"application/edi-consent\": {\n \"source\": \"iana\"\n },\n \"application/edi-x12\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/edifact\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/efi\": {\n \"source\": \"iana\"\n },\n \"application/elm+json\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/elm+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.cap+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/emergencycalldata.comment+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.control+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.deviceinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.ecall.msd\": {\n \"source\": \"iana\"\n },\n \"application/emergencycalldata.providerinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.serviceinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.subscriberinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emergencycalldata.veds+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/emma+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"emma\"]\n },\n \"application/emotionml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"emotionml\"]\n },\n \"application/encaprtp\": {\n \"source\": \"iana\"\n },\n \"application/epp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/epub+zip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"epub\"]\n },\n \"application/eshop\": {\n \"source\": \"iana\"\n },\n \"application/exi\": {\n \"source\": \"iana\",\n \"extensions\": [\"exi\"]\n },\n \"application/expect-ct-report+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/express\": {\n \"source\": \"iana\",\n \"extensions\": [\"exp\"]\n },\n \"application/fastinfoset\": {\n \"source\": \"iana\"\n },\n \"application/fastsoap\": {\n \"source\": \"iana\"\n },\n \"application/fdt+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"fdt\"]\n },\n \"application/fhir+json\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/fhir+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/fido.trusted-apps+json\": {\n \"compressible\": true\n },\n \"application/fits\": {\n \"source\": \"iana\"\n },\n \"application/flexfec\": {\n \"source\": \"iana\"\n },\n \"application/font-sfnt\": {\n \"source\": \"iana\"\n },\n \"application/font-tdpfr\": {\n \"source\": \"iana\",\n \"extensions\": [\"pfr\"]\n },\n \"application/font-woff\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/framework-attributes+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/geo+json\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"geojson\"]\n },\n \"application/geo+json-seq\": {\n \"source\": \"iana\"\n },\n \"application/geopackage+sqlite3\": {\n \"source\": \"iana\"\n },\n \"application/geoxacml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/gltf-buffer\": {\n \"source\": \"iana\"\n },\n \"application/gml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"gml\"]\n },\n \"application/gpx+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"gpx\"]\n },\n \"application/gxf\": {\n \"source\": \"apache\",\n \"extensions\": [\"gxf\"]\n },\n \"application/gzip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"gz\"]\n },\n \"application/h224\": {\n \"source\": \"iana\"\n },\n \"application/held+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/hjson\": {\n \"extensions\": [\"hjson\"]\n },\n \"application/http\": {\n \"source\": \"iana\"\n },\n \"application/hyperstudio\": {\n \"source\": \"iana\",\n \"extensions\": [\"stk\"]\n },\n \"application/ibe-key-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/ibe-pkg-reply+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/ibe-pp-data\": {\n \"source\": \"iana\"\n },\n \"application/iges\": {\n \"source\": \"iana\"\n },\n \"application/im-iscomposing+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/index\": {\n \"source\": \"iana\"\n },\n \"application/index.cmd\": {\n \"source\": \"iana\"\n },\n \"application/index.obj\": {\n \"source\": \"iana\"\n },\n \"application/index.response\": {\n \"source\": \"iana\"\n },\n \"application/index.vnd\": {\n \"source\": \"iana\"\n },\n \"application/inkml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ink\",\"inkml\"]\n },\n \"application/iotp\": {\n \"source\": \"iana\"\n },\n \"application/ipfix\": {\n \"source\": \"iana\",\n \"extensions\": [\"ipfix\"]\n },\n \"application/ipp\": {\n \"source\": \"iana\"\n },\n \"application/isup\": {\n \"source\": \"iana\"\n },\n \"application/its+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"its\"]\n },\n \"application/java-archive\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"jar\",\"war\",\"ear\"]\n },\n \"application/java-serialized-object\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"ser\"]\n },\n \"application/java-vm\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"class\"]\n },\n \"application/javascript\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"js\",\"mjs\"]\n },\n \"application/jf2feed+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/jose\": {\n \"source\": \"iana\"\n },\n \"application/jose+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/jrd+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/jscalendar+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/json\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"json\",\"map\"]\n },\n \"application/json-patch+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/json-seq\": {\n \"source\": \"iana\"\n },\n \"application/json5\": {\n \"extensions\": [\"json5\"]\n },\n \"application/jsonml+json\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"jsonml\"]\n },\n \"application/jwk+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/jwk-set+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/jwt\": {\n \"source\": \"iana\"\n },\n \"application/kpml-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/kpml-response+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/ld+json\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"jsonld\"]\n },\n \"application/lgr+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"lgr\"]\n },\n \"application/link-format\": {\n \"source\": \"iana\"\n },\n \"application/load-control+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/lost+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"lostxml\"]\n },\n \"application/lostsync+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/lpf+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/lxf\": {\n \"source\": \"iana\"\n },\n \"application/mac-binhex40\": {\n \"source\": \"iana\",\n \"extensions\": [\"hqx\"]\n },\n \"application/mac-compactpro\": {\n \"source\": \"apache\",\n \"extensions\": [\"cpt\"]\n },\n \"application/macwriteii\": {\n \"source\": \"iana\"\n },\n \"application/mads+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mads\"]\n },\n \"application/manifest+json\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"webmanifest\"]\n },\n \"application/marc\": {\n \"source\": \"iana\",\n \"extensions\": [\"mrc\"]\n },\n \"application/marcxml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mrcx\"]\n },\n \"application/mathematica\": {\n \"source\": \"iana\",\n \"extensions\": [\"ma\",\"nb\",\"mb\"]\n },\n \"application/mathml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mathml\"]\n },\n \"application/mathml-content+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mathml-presentation+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-associated-procedure-description+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-deregister+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-envelope+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-msk+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-msk-response+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-protection-description+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-reception-report+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-register+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-register-response+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-schedule+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbms-user-service-description+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mbox\": {\n \"source\": \"iana\",\n \"extensions\": [\"mbox\"]\n },\n \"application/media-policy-dataset+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mpf\"]\n },\n \"application/media_control+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mediaservercontrol+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mscml\"]\n },\n \"application/merge-patch+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/metalink+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"metalink\"]\n },\n \"application/metalink4+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"meta4\"]\n },\n \"application/mets+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mets\"]\n },\n \"application/mf4\": {\n \"source\": \"iana\"\n },\n \"application/mikey\": {\n \"source\": \"iana\"\n },\n \"application/mipc\": {\n \"source\": \"iana\"\n },\n \"application/missing-blocks+cbor-seq\": {\n \"source\": \"iana\"\n },\n \"application/mmt-aei+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"maei\"]\n },\n \"application/mmt-usd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"musd\"]\n },\n \"application/mods+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mods\"]\n },\n \"application/moss-keys\": {\n \"source\": \"iana\"\n },\n \"application/moss-signature\": {\n \"source\": \"iana\"\n },\n \"application/mosskey-data\": {\n \"source\": \"iana\"\n },\n \"application/mosskey-request\": {\n \"source\": \"iana\"\n },\n \"application/mp21\": {\n \"source\": \"iana\",\n \"extensions\": [\"m21\",\"mp21\"]\n },\n \"application/mp4\": {\n \"source\": \"iana\",\n \"extensions\": [\"mp4s\",\"m4p\"]\n },\n \"application/mpeg4-generic\": {\n \"source\": \"iana\"\n },\n \"application/mpeg4-iod\": {\n \"source\": \"iana\"\n },\n \"application/mpeg4-iod-xmt\": {\n \"source\": \"iana\"\n },\n \"application/mrb-consumer+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/mrb-publish+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/msc-ivr+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/msc-mixer+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/msword\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"doc\",\"dot\"]\n },\n \"application/mud+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/multipart-core\": {\n \"source\": \"iana\"\n },\n \"application/mxf\": {\n \"source\": \"iana\",\n \"extensions\": [\"mxf\"]\n },\n \"application/n-quads\": {\n \"source\": \"iana\",\n \"extensions\": [\"nq\"]\n },\n \"application/n-triples\": {\n \"source\": \"iana\",\n \"extensions\": [\"nt\"]\n },\n \"application/nasdata\": {\n \"source\": \"iana\"\n },\n \"application/news-checkgroups\": {\n \"source\": \"iana\",\n \"charset\": \"US-ASCII\"\n },\n \"application/news-groupinfo\": {\n \"source\": \"iana\",\n \"charset\": \"US-ASCII\"\n },\n \"application/news-transmission\": {\n \"source\": \"iana\"\n },\n \"application/nlsml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/node\": {\n \"source\": \"iana\",\n \"extensions\": [\"cjs\"]\n },\n \"application/nss\": {\n \"source\": \"iana\"\n },\n \"application/oauth-authz-req+jwt\": {\n \"source\": \"iana\"\n },\n \"application/oblivious-dns-message\": {\n \"source\": \"iana\"\n },\n \"application/ocsp-request\": {\n \"source\": \"iana\"\n },\n \"application/ocsp-response\": {\n \"source\": \"iana\"\n },\n \"application/octet-stream\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"bin\",\"dms\",\"lrf\",\"mar\",\"so\",\"dist\",\"distz\",\"pkg\",\"bpk\",\"dump\",\"elc\",\"deploy\",\"exe\",\"dll\",\"deb\",\"dmg\",\"iso\",\"img\",\"msi\",\"msp\",\"msm\",\"buffer\"]\n },\n \"application/oda\": {\n \"source\": \"iana\",\n \"extensions\": [\"oda\"]\n },\n \"application/odm+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/odx\": {\n \"source\": \"iana\"\n },\n \"application/oebps-package+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"opf\"]\n },\n \"application/ogg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"ogx\"]\n },\n \"application/omdoc+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"omdoc\"]\n },\n \"application/onenote\": {\n \"source\": \"apache\",\n \"extensions\": [\"onetoc\",\"onetoc2\",\"onetmp\",\"onepkg\"]\n },\n \"application/opc-nodeset+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/oscore\": {\n \"source\": \"iana\"\n },\n \"application/oxps\": {\n \"source\": \"iana\",\n \"extensions\": [\"oxps\"]\n },\n \"application/p21\": {\n \"source\": \"iana\"\n },\n \"application/p21+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/p2p-overlay+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"relo\"]\n },\n \"application/parityfec\": {\n \"source\": \"iana\"\n },\n \"application/passport\": {\n \"source\": \"iana\"\n },\n \"application/patch-ops-error+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xer\"]\n },\n \"application/pdf\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"pdf\"]\n },\n \"application/pdx\": {\n \"source\": \"iana\"\n },\n \"application/pem-certificate-chain\": {\n \"source\": \"iana\"\n },\n \"application/pgp-encrypted\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"pgp\"]\n },\n \"application/pgp-keys\": {\n \"source\": \"iana\",\n \"extensions\": [\"asc\"]\n },\n \"application/pgp-signature\": {\n \"source\": \"iana\",\n \"extensions\": [\"asc\",\"sig\"]\n },\n \"application/pics-rules\": {\n \"source\": \"apache\",\n \"extensions\": [\"prf\"]\n },\n \"application/pidf+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/pidf-diff+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/pkcs10\": {\n \"source\": \"iana\",\n \"extensions\": [\"p10\"]\n },\n \"application/pkcs12\": {\n \"source\": \"iana\"\n },\n \"application/pkcs7-mime\": {\n \"source\": \"iana\",\n \"extensions\": [\"p7m\",\"p7c\"]\n },\n \"application/pkcs7-signature\": {\n \"source\": \"iana\",\n \"extensions\": [\"p7s\"]\n },\n \"application/pkcs8\": {\n \"source\": \"iana\",\n \"extensions\": [\"p8\"]\n },\n \"application/pkcs8-encrypted\": {\n \"source\": \"iana\"\n },\n \"application/pkix-attr-cert\": {\n \"source\": \"iana\",\n \"extensions\": [\"ac\"]\n },\n \"application/pkix-cert\": {\n \"source\": \"iana\",\n \"extensions\": [\"cer\"]\n },\n \"application/pkix-crl\": {\n \"source\": \"iana\",\n \"extensions\": [\"crl\"]\n },\n \"application/pkix-pkipath\": {\n \"source\": \"iana\",\n \"extensions\": [\"pkipath\"]\n },\n \"application/pkixcmp\": {\n \"source\": \"iana\",\n \"extensions\": [\"pki\"]\n },\n \"application/pls+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"pls\"]\n },\n \"application/poc-settings+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/postscript\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ai\",\"eps\",\"ps\"]\n },\n \"application/ppsp-tracker+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/problem+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/problem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/provenance+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"provx\"]\n },\n \"application/prs.alvestrand.titrax-sheet\": {\n \"source\": \"iana\"\n },\n \"application/prs.cww\": {\n \"source\": \"iana\",\n \"extensions\": [\"cww\"]\n },\n \"application/prs.cyn\": {\n \"source\": \"iana\",\n \"charset\": \"7-BIT\"\n },\n \"application/prs.hpub+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/prs.nprend\": {\n \"source\": \"iana\"\n },\n \"application/prs.plucker\": {\n \"source\": \"iana\"\n },\n \"application/prs.rdf-xml-crypt\": {\n \"source\": \"iana\"\n },\n \"application/prs.xsf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/pskc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"pskcxml\"]\n },\n \"application/pvd+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/qsig\": {\n \"source\": \"iana\"\n },\n \"application/raml+yaml\": {\n \"compressible\": true,\n \"extensions\": [\"raml\"]\n },\n \"application/raptorfec\": {\n \"source\": \"iana\"\n },\n \"application/rdap+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/rdf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rdf\",\"owl\"]\n },\n \"application/reginfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rif\"]\n },\n \"application/relax-ng-compact-syntax\": {\n \"source\": \"iana\",\n \"extensions\": [\"rnc\"]\n },\n \"application/remote-printing\": {\n \"source\": \"iana\"\n },\n \"application/reputon+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/resource-lists+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rl\"]\n },\n \"application/resource-lists-diff+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rld\"]\n },\n \"application/rfc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/riscos\": {\n \"source\": \"iana\"\n },\n \"application/rlmi+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/rls-services+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rs\"]\n },\n \"application/route-apd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rapd\"]\n },\n \"application/route-s-tsid+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"sls\"]\n },\n \"application/route-usd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rusd\"]\n },\n \"application/rpki-ghostbusters\": {\n \"source\": \"iana\",\n \"extensions\": [\"gbr\"]\n },\n \"application/rpki-manifest\": {\n \"source\": \"iana\",\n \"extensions\": [\"mft\"]\n },\n \"application/rpki-publication\": {\n \"source\": \"iana\"\n },\n \"application/rpki-roa\": {\n \"source\": \"iana\",\n \"extensions\": [\"roa\"]\n },\n \"application/rpki-updown\": {\n \"source\": \"iana\"\n },\n \"application/rsd+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"rsd\"]\n },\n \"application/rss+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"rss\"]\n },\n \"application/rtf\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rtf\"]\n },\n \"application/rtploopback\": {\n \"source\": \"iana\"\n },\n \"application/rtx\": {\n \"source\": \"iana\"\n },\n \"application/samlassertion+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/samlmetadata+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sarif+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sarif-external-properties+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sbe\": {\n \"source\": \"iana\"\n },\n \"application/sbml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"sbml\"]\n },\n \"application/scaip+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/scim+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/scvp-cv-request\": {\n \"source\": \"iana\",\n \"extensions\": [\"scq\"]\n },\n \"application/scvp-cv-response\": {\n \"source\": \"iana\",\n \"extensions\": [\"scs\"]\n },\n \"application/scvp-vp-request\": {\n \"source\": \"iana\",\n \"extensions\": [\"spq\"]\n },\n \"application/scvp-vp-response\": {\n \"source\": \"iana\",\n \"extensions\": [\"spp\"]\n },\n \"application/sdp\": {\n \"source\": \"iana\",\n \"extensions\": [\"sdp\"]\n },\n \"application/secevent+jwt\": {\n \"source\": \"iana\"\n },\n \"application/senml+cbor\": {\n \"source\": \"iana\"\n },\n \"application/senml+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/senml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"senmlx\"]\n },\n \"application/senml-etch+cbor\": {\n \"source\": \"iana\"\n },\n \"application/senml-etch+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/senml-exi\": {\n \"source\": \"iana\"\n },\n \"application/sensml+cbor\": {\n \"source\": \"iana\"\n },\n \"application/sensml+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sensml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"sensmlx\"]\n },\n \"application/sensml-exi\": {\n \"source\": \"iana\"\n },\n \"application/sep+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sep-exi\": {\n \"source\": \"iana\"\n },\n \"application/session-info\": {\n \"source\": \"iana\"\n },\n \"application/set-payment\": {\n \"source\": \"iana\"\n },\n \"application/set-payment-initiation\": {\n \"source\": \"iana\",\n \"extensions\": [\"setpay\"]\n },\n \"application/set-registration\": {\n \"source\": \"iana\"\n },\n \"application/set-registration-initiation\": {\n \"source\": \"iana\",\n \"extensions\": [\"setreg\"]\n },\n \"application/sgml\": {\n \"source\": \"iana\"\n },\n \"application/sgml-open-catalog\": {\n \"source\": \"iana\"\n },\n \"application/shf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"shf\"]\n },\n \"application/sieve\": {\n \"source\": \"iana\",\n \"extensions\": [\"siv\",\"sieve\"]\n },\n \"application/simple-filter+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/simple-message-summary\": {\n \"source\": \"iana\"\n },\n \"application/simplesymbolcontainer\": {\n \"source\": \"iana\"\n },\n \"application/sipc\": {\n \"source\": \"iana\"\n },\n \"application/slate\": {\n \"source\": \"iana\"\n },\n \"application/smil\": {\n \"source\": \"iana\"\n },\n \"application/smil+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"smi\",\"smil\"]\n },\n \"application/smpte336m\": {\n \"source\": \"iana\"\n },\n \"application/soap+fastinfoset\": {\n \"source\": \"iana\"\n },\n \"application/soap+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sparql-query\": {\n \"source\": \"iana\",\n \"extensions\": [\"rq\"]\n },\n \"application/sparql-results+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"srx\"]\n },\n \"application/spdx+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/spirits-event+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/sql\": {\n \"source\": \"iana\"\n },\n \"application/srgs\": {\n \"source\": \"iana\",\n \"extensions\": [\"gram\"]\n },\n \"application/srgs+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"grxml\"]\n },\n \"application/sru+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"sru\"]\n },\n \"application/ssdl+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"ssdl\"]\n },\n \"application/ssml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ssml\"]\n },\n \"application/stix+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/swid+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"swidtag\"]\n },\n \"application/tamp-apex-update\": {\n \"source\": \"iana\"\n },\n \"application/tamp-apex-update-confirm\": {\n \"source\": \"iana\"\n },\n \"application/tamp-community-update\": {\n \"source\": \"iana\"\n },\n \"application/tamp-community-update-confirm\": {\n \"source\": \"iana\"\n },\n \"application/tamp-error\": {\n \"source\": \"iana\"\n },\n \"application/tamp-sequence-adjust\": {\n \"source\": \"iana\"\n },\n \"application/tamp-sequence-adjust-confirm\": {\n \"source\": \"iana\"\n },\n \"application/tamp-status-query\": {\n \"source\": \"iana\"\n },\n \"application/tamp-status-response\": {\n \"source\": \"iana\"\n },\n \"application/tamp-update\": {\n \"source\": \"iana\"\n },\n \"application/tamp-update-confirm\": {\n \"source\": \"iana\"\n },\n \"application/tar\": {\n \"compressible\": true\n },\n \"application/taxii+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/td+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/tei+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"tei\",\"teicorpus\"]\n },\n \"application/tetra_isi\": {\n \"source\": \"iana\"\n },\n \"application/thraud+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"tfi\"]\n },\n \"application/timestamp-query\": {\n \"source\": \"iana\"\n },\n \"application/timestamp-reply\": {\n \"source\": \"iana\"\n },\n \"application/timestamped-data\": {\n \"source\": \"iana\",\n \"extensions\": [\"tsd\"]\n },\n \"application/tlsrpt+gzip\": {\n \"source\": \"iana\"\n },\n \"application/tlsrpt+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/tnauthlist\": {\n \"source\": \"iana\"\n },\n \"application/token-introspection+jwt\": {\n \"source\": \"iana\"\n },\n \"application/toml\": {\n \"compressible\": true,\n \"extensions\": [\"toml\"]\n },\n \"application/trickle-ice-sdpfrag\": {\n \"source\": \"iana\"\n },\n \"application/trig\": {\n \"source\": \"iana\",\n \"extensions\": [\"trig\"]\n },\n \"application/ttml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ttml\"]\n },\n \"application/tve-trigger\": {\n \"source\": \"iana\"\n },\n \"application/tzif\": {\n \"source\": \"iana\"\n },\n \"application/tzif-leap\": {\n \"source\": \"iana\"\n },\n \"application/ubjson\": {\n \"compressible\": false,\n \"extensions\": [\"ubj\"]\n },\n \"application/ulpfec\": {\n \"source\": \"iana\"\n },\n \"application/urc-grpsheet+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/urc-ressheet+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rsheet\"]\n },\n \"application/urc-targetdesc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"td\"]\n },\n \"application/urc-uisocketdesc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vcard+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vcard+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vemmi\": {\n \"source\": \"iana\"\n },\n \"application/vividence.scriptfile\": {\n \"source\": \"apache\"\n },\n \"application/vnd.1000minds.decision-model+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"1km\"]\n },\n \"application/vnd.3gpp-prose+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp-prose-pc3ch+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp-v2x-local-service-information\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.5gnas\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.access-transfer-events+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.bsf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.gmop+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.gtpc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.interworking-data\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.lpp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.mc-signalling-ear\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.mcdata-affiliation-command+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcdata-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcdata-payload\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.mcdata-service-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcdata-signalling\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.mcdata-ue-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcdata-user-profile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-affiliation-command+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-floor-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-location-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-mbms-usage-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-service-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-signed+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-ue-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-ue-init-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcptt-user-profile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-affiliation-command+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-affiliation-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-location-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-mbms-usage-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-service-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-transmission-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-ue-config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mcvideo-user-profile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.mid-call+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.ngap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.pfcp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.pic-bw-large\": {\n \"source\": \"iana\",\n \"extensions\": [\"plb\"]\n },\n \"application/vnd.3gpp.pic-bw-small\": {\n \"source\": \"iana\",\n \"extensions\": [\"psb\"]\n },\n \"application/vnd.3gpp.pic-bw-var\": {\n \"source\": \"iana\",\n \"extensions\": [\"pvb\"]\n },\n \"application/vnd.3gpp.s1ap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.sms\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp.sms+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.srvcc-ext+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.srvcc-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.state-and-event-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp.ussd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp2.bcmcsinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.3gpp2.sms\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3gpp2.tcap\": {\n \"source\": \"iana\",\n \"extensions\": [\"tcap\"]\n },\n \"application/vnd.3lightssoftware.imagescal\": {\n \"source\": \"iana\"\n },\n \"application/vnd.3m.post-it-notes\": {\n \"source\": \"iana\",\n \"extensions\": [\"pwn\"]\n },\n \"application/vnd.accpac.simply.aso\": {\n \"source\": \"iana\",\n \"extensions\": [\"aso\"]\n },\n \"application/vnd.accpac.simply.imp\": {\n \"source\": \"iana\",\n \"extensions\": [\"imp\"]\n },\n \"application/vnd.acucobol\": {\n \"source\": \"iana\",\n \"extensions\": [\"acu\"]\n },\n \"application/vnd.acucorp\": {\n \"source\": \"iana\",\n \"extensions\": [\"atc\",\"acutc\"]\n },\n \"application/vnd.adobe.air-application-installer-package+zip\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"air\"]\n },\n \"application/vnd.adobe.flash.movie\": {\n \"source\": \"iana\"\n },\n \"application/vnd.adobe.formscentral.fcdt\": {\n \"source\": \"iana\",\n \"extensions\": [\"fcdt\"]\n },\n \"application/vnd.adobe.fxp\": {\n \"source\": \"iana\",\n \"extensions\": [\"fxp\",\"fxpl\"]\n },\n \"application/vnd.adobe.partial-upload\": {\n \"source\": \"iana\"\n },\n \"application/vnd.adobe.xdp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xdp\"]\n },\n \"application/vnd.adobe.xfdf\": {\n \"source\": \"iana\",\n \"extensions\": [\"xfdf\"]\n },\n \"application/vnd.aether.imp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.afplinedata\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.afplinedata-pagedef\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.cmoca-cmresource\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.foca-charset\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.foca-codedfont\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.foca-codepage\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-cmtable\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-formdef\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-mediummap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-objectcontainer\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-overlay\": {\n \"source\": \"iana\"\n },\n \"application/vnd.afpc.modca-pagesegment\": {\n \"source\": \"iana\"\n },\n \"application/vnd.age\": {\n \"source\": \"iana\",\n \"extensions\": [\"age\"]\n },\n \"application/vnd.ah-barcode\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ahead.space\": {\n \"source\": \"iana\",\n \"extensions\": [\"ahead\"]\n },\n \"application/vnd.airzip.filesecure.azf\": {\n \"source\": \"iana\",\n \"extensions\": [\"azf\"]\n },\n \"application/vnd.airzip.filesecure.azs\": {\n \"source\": \"iana\",\n \"extensions\": [\"azs\"]\n },\n \"application/vnd.amadeus+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.amazon.ebook\": {\n \"source\": \"apache\",\n \"extensions\": [\"azw\"]\n },\n \"application/vnd.amazon.mobi8-ebook\": {\n \"source\": \"iana\"\n },\n \"application/vnd.americandynamics.acc\": {\n \"source\": \"iana\",\n \"extensions\": [\"acc\"]\n },\n \"application/vnd.amiga.ami\": {\n \"source\": \"iana\",\n \"extensions\": [\"ami\"]\n },\n \"application/vnd.amundsen.maze+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.android.ota\": {\n \"source\": \"iana\"\n },\n \"application/vnd.android.package-archive\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"apk\"]\n },\n \"application/vnd.anki\": {\n \"source\": \"iana\"\n },\n \"application/vnd.anser-web-certificate-issue-initiation\": {\n \"source\": \"iana\",\n \"extensions\": [\"cii\"]\n },\n \"application/vnd.anser-web-funds-transfer-initiation\": {\n \"source\": \"apache\",\n \"extensions\": [\"fti\"]\n },\n \"application/vnd.antix.game-component\": {\n \"source\": \"iana\",\n \"extensions\": [\"atx\"]\n },\n \"application/vnd.apache.arrow.file\": {\n \"source\": \"iana\"\n },\n \"application/vnd.apache.arrow.stream\": {\n \"source\": \"iana\"\n },\n \"application/vnd.apache.thrift.binary\": {\n \"source\": \"iana\"\n },\n \"application/vnd.apache.thrift.compact\": {\n \"source\": \"iana\"\n },\n \"application/vnd.apache.thrift.json\": {\n \"source\": \"iana\"\n },\n \"application/vnd.api+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.aplextor.warrp+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.apothekende.reservation+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.apple.installer+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mpkg\"]\n },\n \"application/vnd.apple.keynote\": {\n \"source\": \"iana\",\n \"extensions\": [\"key\"]\n },\n \"application/vnd.apple.mpegurl\": {\n \"source\": \"iana\",\n \"extensions\": [\"m3u8\"]\n },\n \"application/vnd.apple.numbers\": {\n \"source\": \"iana\",\n \"extensions\": [\"numbers\"]\n },\n \"application/vnd.apple.pages\": {\n \"source\": \"iana\",\n \"extensions\": [\"pages\"]\n },\n \"application/vnd.apple.pkpass\": {\n \"compressible\": false,\n \"extensions\": [\"pkpass\"]\n },\n \"application/vnd.arastra.swi\": {\n \"source\": \"iana\"\n },\n \"application/vnd.aristanetworks.swi\": {\n \"source\": \"iana\",\n \"extensions\": [\"swi\"]\n },\n \"application/vnd.artisan+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.artsquare\": {\n \"source\": \"iana\"\n },\n \"application/vnd.astraea-software.iota\": {\n \"source\": \"iana\",\n \"extensions\": [\"iota\"]\n },\n \"application/vnd.audiograph\": {\n \"source\": \"iana\",\n \"extensions\": [\"aep\"]\n },\n \"application/vnd.autopackage\": {\n \"source\": \"iana\"\n },\n \"application/vnd.avalon+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.avistar+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.balsamiq.bmml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"bmml\"]\n },\n \"application/vnd.balsamiq.bmpr\": {\n \"source\": \"iana\"\n },\n \"application/vnd.banana-accounting\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bbf.usp.error\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bbf.usp.msg\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bbf.usp.msg+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.bekitzur-stech+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.bint.med-content\": {\n \"source\": \"iana\"\n },\n \"application/vnd.biopax.rdf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.blink-idb-value-wrapper\": {\n \"source\": \"iana\"\n },\n \"application/vnd.blueice.multipass\": {\n \"source\": \"iana\",\n \"extensions\": [\"mpm\"]\n },\n \"application/vnd.bluetooth.ep.oob\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bluetooth.le.oob\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bmi\": {\n \"source\": \"iana\",\n \"extensions\": [\"bmi\"]\n },\n \"application/vnd.bpf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.bpf3\": {\n \"source\": \"iana\"\n },\n \"application/vnd.businessobjects\": {\n \"source\": \"iana\",\n \"extensions\": [\"rep\"]\n },\n \"application/vnd.byu.uapi+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cab-jscript\": {\n \"source\": \"iana\"\n },\n \"application/vnd.canon-cpdl\": {\n \"source\": \"iana\"\n },\n \"application/vnd.canon-lips\": {\n \"source\": \"iana\"\n },\n \"application/vnd.capasystems-pg+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cendio.thinlinc.clientconf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.century-systems.tcp_stream\": {\n \"source\": \"iana\"\n },\n \"application/vnd.chemdraw+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"cdxml\"]\n },\n \"application/vnd.chess-pgn\": {\n \"source\": \"iana\"\n },\n \"application/vnd.chipnuts.karaoke-mmd\": {\n \"source\": \"iana\",\n \"extensions\": [\"mmd\"]\n },\n \"application/vnd.ciedi\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cinderella\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdy\"]\n },\n \"application/vnd.cirpack.isdn-ext\": {\n \"source\": \"iana\"\n },\n \"application/vnd.citationstyles.style+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"csl\"]\n },\n \"application/vnd.claymore\": {\n \"source\": \"iana\",\n \"extensions\": [\"cla\"]\n },\n \"application/vnd.cloanto.rp9\": {\n \"source\": \"iana\",\n \"extensions\": [\"rp9\"]\n },\n \"application/vnd.clonk.c4group\": {\n \"source\": \"iana\",\n \"extensions\": [\"c4g\",\"c4d\",\"c4f\",\"c4p\",\"c4u\"]\n },\n \"application/vnd.cluetrust.cartomobile-config\": {\n \"source\": \"iana\",\n \"extensions\": [\"c11amc\"]\n },\n \"application/vnd.cluetrust.cartomobile-config-pkg\": {\n \"source\": \"iana\",\n \"extensions\": [\"c11amz\"]\n },\n \"application/vnd.coffeescript\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.document\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.document-template\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.presentation\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.presentation-template\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.spreadsheet\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collabio.xodocuments.spreadsheet-template\": {\n \"source\": \"iana\"\n },\n \"application/vnd.collection+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.collection.doc+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.collection.next+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.comicbook+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.comicbook-rar\": {\n \"source\": \"iana\"\n },\n \"application/vnd.commerce-battelle\": {\n \"source\": \"iana\"\n },\n \"application/vnd.commonspace\": {\n \"source\": \"iana\",\n \"extensions\": [\"csp\"]\n },\n \"application/vnd.contact.cmsg\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdbcmsg\"]\n },\n \"application/vnd.coreos.ignition+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cosmocaller\": {\n \"source\": \"iana\",\n \"extensions\": [\"cmc\"]\n },\n \"application/vnd.crick.clicker\": {\n \"source\": \"iana\",\n \"extensions\": [\"clkx\"]\n },\n \"application/vnd.crick.clicker.keyboard\": {\n \"source\": \"iana\",\n \"extensions\": [\"clkk\"]\n },\n \"application/vnd.crick.clicker.palette\": {\n \"source\": \"iana\",\n \"extensions\": [\"clkp\"]\n },\n \"application/vnd.crick.clicker.template\": {\n \"source\": \"iana\",\n \"extensions\": [\"clkt\"]\n },\n \"application/vnd.crick.clicker.wordbank\": {\n \"source\": \"iana\",\n \"extensions\": [\"clkw\"]\n },\n \"application/vnd.criticaltools.wbs+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wbs\"]\n },\n \"application/vnd.cryptii.pipe+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.crypto-shade-file\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cryptomator.encrypted\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cryptomator.vault\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ctc-posml\": {\n \"source\": \"iana\",\n \"extensions\": [\"pml\"]\n },\n \"application/vnd.ctct.ws+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cups-pdf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cups-postscript\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cups-ppd\": {\n \"source\": \"iana\",\n \"extensions\": [\"ppd\"]\n },\n \"application/vnd.cups-raster\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cups-raw\": {\n \"source\": \"iana\"\n },\n \"application/vnd.curl\": {\n \"source\": \"iana\"\n },\n \"application/vnd.curl.car\": {\n \"source\": \"apache\",\n \"extensions\": [\"car\"]\n },\n \"application/vnd.curl.pcurl\": {\n \"source\": \"apache\",\n \"extensions\": [\"pcurl\"]\n },\n \"application/vnd.cyan.dean.root+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cybank\": {\n \"source\": \"iana\"\n },\n \"application/vnd.cyclonedx+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.cyclonedx+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.d2l.coursepackage1p0+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.d3m-dataset\": {\n \"source\": \"iana\"\n },\n \"application/vnd.d3m-problem\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dart\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"dart\"]\n },\n \"application/vnd.data-vision.rdz\": {\n \"source\": \"iana\",\n \"extensions\": [\"rdz\"]\n },\n \"application/vnd.datapackage+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dataresource+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dbf\": {\n \"source\": \"iana\",\n \"extensions\": [\"dbf\"]\n },\n \"application/vnd.debian.binary-package\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dece.data\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvf\",\"uvvf\",\"uvd\",\"uvvd\"]\n },\n \"application/vnd.dece.ttml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"uvt\",\"uvvt\"]\n },\n \"application/vnd.dece.unspecified\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvx\",\"uvvx\"]\n },\n \"application/vnd.dece.zip\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvz\",\"uvvz\"]\n },\n \"application/vnd.denovo.fcselayout-link\": {\n \"source\": \"iana\",\n \"extensions\": [\"fe_launch\"]\n },\n \"application/vnd.desmume.movie\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dir-bi.plate-dl-nosuffix\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dm.delegation+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dna\": {\n \"source\": \"iana\",\n \"extensions\": [\"dna\"]\n },\n \"application/vnd.document+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dolby.mlp\": {\n \"source\": \"apache\",\n \"extensions\": [\"mlp\"]\n },\n \"application/vnd.dolby.mobile.1\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dolby.mobile.2\": {\n \"source\": \"iana\"\n },\n \"application/vnd.doremir.scorecloud-binary-document\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dpgraph\": {\n \"source\": \"iana\",\n \"extensions\": [\"dpg\"]\n },\n \"application/vnd.dreamfactory\": {\n \"source\": \"iana\",\n \"extensions\": [\"dfac\"]\n },\n \"application/vnd.drive+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ds-keypoint\": {\n \"source\": \"apache\",\n \"extensions\": [\"kpxx\"]\n },\n \"application/vnd.dtg.local\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dtg.local.flash\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dtg.local.html\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ait\": {\n \"source\": \"iana\",\n \"extensions\": [\"ait\"]\n },\n \"application/vnd.dvb.dvbisl+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.dvbj\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.esgcontainer\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ipdcdftnotifaccess\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ipdcesgaccess\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ipdcesgaccess2\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ipdcesgpdd\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.ipdcroaming\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.iptv.alfec-base\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.iptv.alfec-enhancement\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.notif-aggregate-root+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-container+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-generic+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-ia-msglist+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-ia-registration-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-ia-registration-response+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.notif-init+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.dvb.pfr\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dvb.service\": {\n \"source\": \"iana\",\n \"extensions\": [\"svc\"]\n },\n \"application/vnd.dxr\": {\n \"source\": \"iana\"\n },\n \"application/vnd.dynageo\": {\n \"source\": \"iana\",\n \"extensions\": [\"geo\"]\n },\n \"application/vnd.dzr\": {\n \"source\": \"iana\"\n },\n \"application/vnd.easykaraoke.cdgdownload\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecdis-update\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecip.rlp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.eclipse.ditto+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ecowin.chart\": {\n \"source\": \"iana\",\n \"extensions\": [\"mag\"]\n },\n \"application/vnd.ecowin.filerequest\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecowin.fileupdate\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecowin.series\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecowin.seriesrequest\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ecowin.seriesupdate\": {\n \"source\": \"iana\"\n },\n \"application/vnd.efi.img\": {\n \"source\": \"iana\"\n },\n \"application/vnd.efi.iso\": {\n \"source\": \"iana\"\n },\n \"application/vnd.emclient.accessrequest+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.enliven\": {\n \"source\": \"iana\",\n \"extensions\": [\"nml\"]\n },\n \"application/vnd.enphase.envoy\": {\n \"source\": \"iana\"\n },\n \"application/vnd.eprints.data+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.epson.esf\": {\n \"source\": \"iana\",\n \"extensions\": [\"esf\"]\n },\n \"application/vnd.epson.msf\": {\n \"source\": \"iana\",\n \"extensions\": [\"msf\"]\n },\n \"application/vnd.epson.quickanime\": {\n \"source\": \"iana\",\n \"extensions\": [\"qam\"]\n },\n \"application/vnd.epson.salt\": {\n \"source\": \"iana\",\n \"extensions\": [\"slt\"]\n },\n \"application/vnd.epson.ssf\": {\n \"source\": \"iana\",\n \"extensions\": [\"ssf\"]\n },\n \"application/vnd.ericsson.quickcall\": {\n \"source\": \"iana\"\n },\n \"application/vnd.espass-espass+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.eszigno3+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"es3\",\"et3\"]\n },\n \"application/vnd.etsi.aoc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.asic-e+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.etsi.asic-s+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.etsi.cug+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvcommand+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvdiscovery+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvprofile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvsad-bc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvsad-cod+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvsad-npvr+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvservice+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvsync+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.iptvueprofile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.mcid+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.mheg5\": {\n \"source\": \"iana\"\n },\n \"application/vnd.etsi.overload-control-policy-dataset+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.pstn+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.sci+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.simservs+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.timestamp-token\": {\n \"source\": \"iana\"\n },\n \"application/vnd.etsi.tsl+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.etsi.tsl.der\": {\n \"source\": \"iana\"\n },\n \"application/vnd.eu.kasparian.car+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.eudora.data\": {\n \"source\": \"iana\"\n },\n \"application/vnd.evolv.ecig.profile\": {\n \"source\": \"iana\"\n },\n \"application/vnd.evolv.ecig.settings\": {\n \"source\": \"iana\"\n },\n \"application/vnd.evolv.ecig.theme\": {\n \"source\": \"iana\"\n },\n \"application/vnd.exstream-empower+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.exstream-package\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ezpix-album\": {\n \"source\": \"iana\",\n \"extensions\": [\"ez2\"]\n },\n \"application/vnd.ezpix-package\": {\n \"source\": \"iana\",\n \"extensions\": [\"ez3\"]\n },\n \"application/vnd.f-secure.mobile\": {\n \"source\": \"iana\"\n },\n \"application/vnd.familysearch.gedcom+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.fastcopy-disk-image\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fdf\": {\n \"source\": \"iana\",\n \"extensions\": [\"fdf\"]\n },\n \"application/vnd.fdsn.mseed\": {\n \"source\": \"iana\",\n \"extensions\": [\"mseed\"]\n },\n \"application/vnd.fdsn.seed\": {\n \"source\": \"iana\",\n \"extensions\": [\"seed\",\"dataless\"]\n },\n \"application/vnd.ffsns\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ficlab.flb+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.filmit.zfc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fints\": {\n \"source\": \"iana\"\n },\n \"application/vnd.firemonkeys.cloudcell\": {\n \"source\": \"iana\"\n },\n \"application/vnd.flographit\": {\n \"source\": \"iana\",\n \"extensions\": [\"gph\"]\n },\n \"application/vnd.fluxtime.clip\": {\n \"source\": \"iana\",\n \"extensions\": [\"ftc\"]\n },\n \"application/vnd.font-fontforge-sfd\": {\n \"source\": \"iana\"\n },\n \"application/vnd.framemaker\": {\n \"source\": \"iana\",\n \"extensions\": [\"fm\",\"frame\",\"maker\",\"book\"]\n },\n \"application/vnd.frogans.fnc\": {\n \"source\": \"iana\",\n \"extensions\": [\"fnc\"]\n },\n \"application/vnd.frogans.ltf\": {\n \"source\": \"iana\",\n \"extensions\": [\"ltf\"]\n },\n \"application/vnd.fsc.weblaunch\": {\n \"source\": \"iana\",\n \"extensions\": [\"fsc\"]\n },\n \"application/vnd.fujifilm.fb.docuworks\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujifilm.fb.docuworks.binder\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujifilm.fb.docuworks.container\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujifilm.fb.jfi+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.fujitsu.oasys\": {\n \"source\": \"iana\",\n \"extensions\": [\"oas\"]\n },\n \"application/vnd.fujitsu.oasys2\": {\n \"source\": \"iana\",\n \"extensions\": [\"oa2\"]\n },\n \"application/vnd.fujitsu.oasys3\": {\n \"source\": \"iana\",\n \"extensions\": [\"oa3\"]\n },\n \"application/vnd.fujitsu.oasysgp\": {\n \"source\": \"iana\",\n \"extensions\": [\"fg5\"]\n },\n \"application/vnd.fujitsu.oasysprs\": {\n \"source\": \"iana\",\n \"extensions\": [\"bh2\"]\n },\n \"application/vnd.fujixerox.art-ex\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujixerox.art4\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujixerox.ddd\": {\n \"source\": \"iana\",\n \"extensions\": [\"ddd\"]\n },\n \"application/vnd.fujixerox.docuworks\": {\n \"source\": \"iana\",\n \"extensions\": [\"xdw\"]\n },\n \"application/vnd.fujixerox.docuworks.binder\": {\n \"source\": \"iana\",\n \"extensions\": [\"xbd\"]\n },\n \"application/vnd.fujixerox.docuworks.container\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fujixerox.hbpl\": {\n \"source\": \"iana\"\n },\n \"application/vnd.fut-misnet\": {\n \"source\": \"iana\"\n },\n \"application/vnd.futoin+cbor\": {\n \"source\": \"iana\"\n },\n \"application/vnd.futoin+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.fuzzysheet\": {\n \"source\": \"iana\",\n \"extensions\": [\"fzs\"]\n },\n \"application/vnd.genomatix.tuxedo\": {\n \"source\": \"iana\",\n \"extensions\": [\"txd\"]\n },\n \"application/vnd.gentics.grd+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.geo+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.geocube+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.geogebra.file\": {\n \"source\": \"iana\",\n \"extensions\": [\"ggb\"]\n },\n \"application/vnd.geogebra.slides\": {\n \"source\": \"iana\"\n },\n \"application/vnd.geogebra.tool\": {\n \"source\": \"iana\",\n \"extensions\": [\"ggt\"]\n },\n \"application/vnd.geometry-explorer\": {\n \"source\": \"iana\",\n \"extensions\": [\"gex\",\"gre\"]\n },\n \"application/vnd.geonext\": {\n \"source\": \"iana\",\n \"extensions\": [\"gxt\"]\n },\n \"application/vnd.geoplan\": {\n \"source\": \"iana\",\n \"extensions\": [\"g2w\"]\n },\n \"application/vnd.geospace\": {\n \"source\": \"iana\",\n \"extensions\": [\"g3w\"]\n },\n \"application/vnd.gerber\": {\n \"source\": \"iana\"\n },\n \"application/vnd.globalplatform.card-content-mgt\": {\n \"source\": \"iana\"\n },\n \"application/vnd.globalplatform.card-content-mgt-response\": {\n \"source\": \"iana\"\n },\n \"application/vnd.gmx\": {\n \"source\": \"iana\",\n \"extensions\": [\"gmx\"]\n },\n \"application/vnd.google-apps.document\": {\n \"compressible\": false,\n \"extensions\": [\"gdoc\"]\n },\n \"application/vnd.google-apps.presentation\": {\n \"compressible\": false,\n \"extensions\": [\"gslides\"]\n },\n \"application/vnd.google-apps.spreadsheet\": {\n \"compressible\": false,\n \"extensions\": [\"gsheet\"]\n },\n \"application/vnd.google-earth.kml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"kml\"]\n },\n \"application/vnd.google-earth.kmz\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"kmz\"]\n },\n \"application/vnd.gov.sk.e-form+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.gov.sk.e-form+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.gov.sk.xmldatacontainer+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.grafeq\": {\n \"source\": \"iana\",\n \"extensions\": [\"gqf\",\"gqs\"]\n },\n \"application/vnd.gridmp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.groove-account\": {\n \"source\": \"iana\",\n \"extensions\": [\"gac\"]\n },\n \"application/vnd.groove-help\": {\n \"source\": \"iana\",\n \"extensions\": [\"ghf\"]\n },\n \"application/vnd.groove-identity-message\": {\n \"source\": \"iana\",\n \"extensions\": [\"gim\"]\n },\n \"application/vnd.groove-injector\": {\n \"source\": \"iana\",\n \"extensions\": [\"grv\"]\n },\n \"application/vnd.groove-tool-message\": {\n \"source\": \"iana\",\n \"extensions\": [\"gtm\"]\n },\n \"application/vnd.groove-tool-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"tpl\"]\n },\n \"application/vnd.groove-vcard\": {\n \"source\": \"iana\",\n \"extensions\": [\"vcg\"]\n },\n \"application/vnd.hal+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hal+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"hal\"]\n },\n \"application/vnd.handheld-entertainment+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"zmm\"]\n },\n \"application/vnd.hbci\": {\n \"source\": \"iana\",\n \"extensions\": [\"hbci\"]\n },\n \"application/vnd.hc+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hcl-bireports\": {\n \"source\": \"iana\"\n },\n \"application/vnd.hdt\": {\n \"source\": \"iana\"\n },\n \"application/vnd.heroku+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hhe.lesson-player\": {\n \"source\": \"iana\",\n \"extensions\": [\"les\"]\n },\n \"application/vnd.hl7cda+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.hl7v2+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.hp-hpgl\": {\n \"source\": \"iana\",\n \"extensions\": [\"hpgl\"]\n },\n \"application/vnd.hp-hpid\": {\n \"source\": \"iana\",\n \"extensions\": [\"hpid\"]\n },\n \"application/vnd.hp-hps\": {\n \"source\": \"iana\",\n \"extensions\": [\"hps\"]\n },\n \"application/vnd.hp-jlyt\": {\n \"source\": \"iana\",\n \"extensions\": [\"jlt\"]\n },\n \"application/vnd.hp-pcl\": {\n \"source\": \"iana\",\n \"extensions\": [\"pcl\"]\n },\n \"application/vnd.hp-pclxl\": {\n \"source\": \"iana\",\n \"extensions\": [\"pclxl\"]\n },\n \"application/vnd.httphone\": {\n \"source\": \"iana\"\n },\n \"application/vnd.hydrostatix.sof-data\": {\n \"source\": \"iana\",\n \"extensions\": [\"sfd-hdstx\"]\n },\n \"application/vnd.hyper+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hyper-item+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hyperdrive+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.hzn-3d-crossword\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ibm.afplinedata\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ibm.electronic-media\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ibm.minipay\": {\n \"source\": \"iana\",\n \"extensions\": [\"mpy\"]\n },\n \"application/vnd.ibm.modcap\": {\n \"source\": \"iana\",\n \"extensions\": [\"afp\",\"listafp\",\"list3820\"]\n },\n \"application/vnd.ibm.rights-management\": {\n \"source\": \"iana\",\n \"extensions\": [\"irm\"]\n },\n \"application/vnd.ibm.secure-container\": {\n \"source\": \"iana\",\n \"extensions\": [\"sc\"]\n },\n \"application/vnd.iccprofile\": {\n \"source\": \"iana\",\n \"extensions\": [\"icc\",\"icm\"]\n },\n \"application/vnd.ieee.1905\": {\n \"source\": \"iana\"\n },\n \"application/vnd.igloader\": {\n \"source\": \"iana\",\n \"extensions\": [\"igl\"]\n },\n \"application/vnd.imagemeter.folder+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.imagemeter.image+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.immervision-ivp\": {\n \"source\": \"iana\",\n \"extensions\": [\"ivp\"]\n },\n \"application/vnd.immervision-ivu\": {\n \"source\": \"iana\",\n \"extensions\": [\"ivu\"]\n },\n \"application/vnd.ims.imsccv1p1\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ims.imsccv1p2\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ims.imsccv1p3\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ims.lis.v2.result+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ims.lti.v2.toolconsumerprofile+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ims.lti.v2.toolproxy+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ims.lti.v2.toolproxy.id+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ims.lti.v2.toolsettings+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ims.lti.v2.toolsettings.simple+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.informedcontrol.rms+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.informix-visionary\": {\n \"source\": \"iana\"\n },\n \"application/vnd.infotech.project\": {\n \"source\": \"iana\"\n },\n \"application/vnd.infotech.project+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.innopath.wamp.notification\": {\n \"source\": \"iana\"\n },\n \"application/vnd.insors.igm\": {\n \"source\": \"iana\",\n \"extensions\": [\"igm\"]\n },\n \"application/vnd.intercon.formnet\": {\n \"source\": \"iana\",\n \"extensions\": [\"xpw\",\"xpx\"]\n },\n \"application/vnd.intergeo\": {\n \"source\": \"iana\",\n \"extensions\": [\"i2g\"]\n },\n \"application/vnd.intertrust.digibox\": {\n \"source\": \"iana\"\n },\n \"application/vnd.intertrust.nncp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.intu.qbo\": {\n \"source\": \"iana\",\n \"extensions\": [\"qbo\"]\n },\n \"application/vnd.intu.qfx\": {\n \"source\": \"iana\",\n \"extensions\": [\"qfx\"]\n },\n \"application/vnd.iptc.g2.catalogitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.conceptitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.knowledgeitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.newsitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.newsmessage+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.packageitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.iptc.g2.planningitem+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ipunplugged.rcprofile\": {\n \"source\": \"iana\",\n \"extensions\": [\"rcprofile\"]\n },\n \"application/vnd.irepository.package+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"irp\"]\n },\n \"application/vnd.is-xpr\": {\n \"source\": \"iana\",\n \"extensions\": [\"xpr\"]\n },\n \"application/vnd.isac.fcs\": {\n \"source\": \"iana\",\n \"extensions\": [\"fcs\"]\n },\n \"application/vnd.iso11783-10+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.jam\": {\n \"source\": \"iana\",\n \"extensions\": [\"jam\"]\n },\n \"application/vnd.japannet-directory-service\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-jpnstore-wakeup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-payment-wakeup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-registration\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-registration-wakeup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-setstore-wakeup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-verification\": {\n \"source\": \"iana\"\n },\n \"application/vnd.japannet-verification-wakeup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.jcp.javame.midlet-rms\": {\n \"source\": \"iana\",\n \"extensions\": [\"rms\"]\n },\n \"application/vnd.jisp\": {\n \"source\": \"iana\",\n \"extensions\": [\"jisp\"]\n },\n \"application/vnd.joost.joda-archive\": {\n \"source\": \"iana\",\n \"extensions\": [\"joda\"]\n },\n \"application/vnd.jsk.isdn-ngn\": {\n \"source\": \"iana\"\n },\n \"application/vnd.kahootz\": {\n \"source\": \"iana\",\n \"extensions\": [\"ktz\",\"ktr\"]\n },\n \"application/vnd.kde.karbon\": {\n \"source\": \"iana\",\n \"extensions\": [\"karbon\"]\n },\n \"application/vnd.kde.kchart\": {\n \"source\": \"iana\",\n \"extensions\": [\"chrt\"]\n },\n \"application/vnd.kde.kformula\": {\n \"source\": \"iana\",\n \"extensions\": [\"kfo\"]\n },\n \"application/vnd.kde.kivio\": {\n \"source\": \"iana\",\n \"extensions\": [\"flw\"]\n },\n \"application/vnd.kde.kontour\": {\n \"source\": \"iana\",\n \"extensions\": [\"kon\"]\n },\n \"application/vnd.kde.kpresenter\": {\n \"source\": \"iana\",\n \"extensions\": [\"kpr\",\"kpt\"]\n },\n \"application/vnd.kde.kspread\": {\n \"source\": \"iana\",\n \"extensions\": [\"ksp\"]\n },\n \"application/vnd.kde.kword\": {\n \"source\": \"iana\",\n \"extensions\": [\"kwd\",\"kwt\"]\n },\n \"application/vnd.kenameaapp\": {\n \"source\": \"iana\",\n \"extensions\": [\"htke\"]\n },\n \"application/vnd.kidspiration\": {\n \"source\": \"iana\",\n \"extensions\": [\"kia\"]\n },\n \"application/vnd.kinar\": {\n \"source\": \"iana\",\n \"extensions\": [\"kne\",\"knp\"]\n },\n \"application/vnd.koan\": {\n \"source\": \"iana\",\n \"extensions\": [\"skp\",\"skd\",\"skt\",\"skm\"]\n },\n \"application/vnd.kodak-descriptor\": {\n \"source\": \"iana\",\n \"extensions\": [\"sse\"]\n },\n \"application/vnd.las\": {\n \"source\": \"iana\"\n },\n \"application/vnd.las.las+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.las.las+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"lasxml\"]\n },\n \"application/vnd.laszip\": {\n \"source\": \"iana\"\n },\n \"application/vnd.leap+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.liberty-request+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.llamagraphics.life-balance.desktop\": {\n \"source\": \"iana\",\n \"extensions\": [\"lbd\"]\n },\n \"application/vnd.llamagraphics.life-balance.exchange+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"lbe\"]\n },\n \"application/vnd.logipipe.circuit+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.loom\": {\n \"source\": \"iana\"\n },\n \"application/vnd.lotus-1-2-3\": {\n \"source\": \"iana\",\n \"extensions\": [\"123\"]\n },\n \"application/vnd.lotus-approach\": {\n \"source\": \"iana\",\n \"extensions\": [\"apr\"]\n },\n \"application/vnd.lotus-freelance\": {\n \"source\": \"iana\",\n \"extensions\": [\"pre\"]\n },\n \"application/vnd.lotus-notes\": {\n \"source\": \"iana\",\n \"extensions\": [\"nsf\"]\n },\n \"application/vnd.lotus-organizer\": {\n \"source\": \"iana\",\n \"extensions\": [\"org\"]\n },\n \"application/vnd.lotus-screencam\": {\n \"source\": \"iana\",\n \"extensions\": [\"scm\"]\n },\n \"application/vnd.lotus-wordpro\": {\n \"source\": \"iana\",\n \"extensions\": [\"lwp\"]\n },\n \"application/vnd.macports.portpkg\": {\n \"source\": \"iana\",\n \"extensions\": [\"portpkg\"]\n },\n \"application/vnd.mapbox-vector-tile\": {\n \"source\": \"iana\",\n \"extensions\": [\"mvt\"]\n },\n \"application/vnd.marlin.drm.actiontoken+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.marlin.drm.conftoken+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.marlin.drm.license+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.marlin.drm.mdcf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mason+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.maxar.archive.3tz+zip\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"application/vnd.maxmind.maxmind-db\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mcd\": {\n \"source\": \"iana\",\n \"extensions\": [\"mcd\"]\n },\n \"application/vnd.medcalcdata\": {\n \"source\": \"iana\",\n \"extensions\": [\"mc1\"]\n },\n \"application/vnd.mediastation.cdkey\": {\n \"source\": \"iana\",\n \"extensions\": [\"cdkey\"]\n },\n \"application/vnd.meridian-slingshot\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mfer\": {\n \"source\": \"iana\",\n \"extensions\": [\"mwf\"]\n },\n \"application/vnd.mfmp\": {\n \"source\": \"iana\",\n \"extensions\": [\"mfm\"]\n },\n \"application/vnd.micro+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.micrografx.flo\": {\n \"source\": \"iana\",\n \"extensions\": [\"flo\"]\n },\n \"application/vnd.micrografx.igx\": {\n \"source\": \"iana\",\n \"extensions\": [\"igx\"]\n },\n \"application/vnd.microsoft.portable-executable\": {\n \"source\": \"iana\"\n },\n \"application/vnd.microsoft.windows.thumbnail-cache\": {\n \"source\": \"iana\"\n },\n \"application/vnd.miele+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.mif\": {\n \"source\": \"iana\",\n \"extensions\": [\"mif\"]\n },\n \"application/vnd.minisoft-hp3000-save\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mitsubishi.misty-guard.trustweb\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mobius.daf\": {\n \"source\": \"iana\",\n \"extensions\": [\"daf\"]\n },\n \"application/vnd.mobius.dis\": {\n \"source\": \"iana\",\n \"extensions\": [\"dis\"]\n },\n \"application/vnd.mobius.mbk\": {\n \"source\": \"iana\",\n \"extensions\": [\"mbk\"]\n },\n \"application/vnd.mobius.mqy\": {\n \"source\": \"iana\",\n \"extensions\": [\"mqy\"]\n },\n \"application/vnd.mobius.msl\": {\n \"source\": \"iana\",\n \"extensions\": [\"msl\"]\n },\n \"application/vnd.mobius.plc\": {\n \"source\": \"iana\",\n \"extensions\": [\"plc\"]\n },\n \"application/vnd.mobius.txf\": {\n \"source\": \"iana\",\n \"extensions\": [\"txf\"]\n },\n \"application/vnd.mophun.application\": {\n \"source\": \"iana\",\n \"extensions\": [\"mpn\"]\n },\n \"application/vnd.mophun.certificate\": {\n \"source\": \"iana\",\n \"extensions\": [\"mpc\"]\n },\n \"application/vnd.motorola.flexsuite\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.adsi\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.fis\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.gotap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.kmr\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.ttc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.flexsuite.wem\": {\n \"source\": \"iana\"\n },\n \"application/vnd.motorola.iprm\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mozilla.xul+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xul\"]\n },\n \"application/vnd.ms-3mfdocument\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-artgalry\": {\n \"source\": \"iana\",\n \"extensions\": [\"cil\"]\n },\n \"application/vnd.ms-asf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-cab-compressed\": {\n \"source\": \"iana\",\n \"extensions\": [\"cab\"]\n },\n \"application/vnd.ms-color.iccprofile\": {\n \"source\": \"apache\"\n },\n \"application/vnd.ms-excel\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"xls\",\"xlm\",\"xla\",\"xlc\",\"xlt\",\"xlw\"]\n },\n \"application/vnd.ms-excel.addin.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"xlam\"]\n },\n \"application/vnd.ms-excel.sheet.binary.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"xlsb\"]\n },\n \"application/vnd.ms-excel.sheet.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"xlsm\"]\n },\n \"application/vnd.ms-excel.template.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"xltm\"]\n },\n \"application/vnd.ms-fontobject\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"eot\"]\n },\n \"application/vnd.ms-htmlhelp\": {\n \"source\": \"iana\",\n \"extensions\": [\"chm\"]\n },\n \"application/vnd.ms-ims\": {\n \"source\": \"iana\",\n \"extensions\": [\"ims\"]\n },\n \"application/vnd.ms-lrm\": {\n \"source\": \"iana\",\n \"extensions\": [\"lrm\"]\n },\n \"application/vnd.ms-office.activex+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ms-officetheme\": {\n \"source\": \"iana\",\n \"extensions\": [\"thmx\"]\n },\n \"application/vnd.ms-opentype\": {\n \"source\": \"apache\",\n \"compressible\": true\n },\n \"application/vnd.ms-outlook\": {\n \"compressible\": false,\n \"extensions\": [\"msg\"]\n },\n \"application/vnd.ms-package.obfuscated-opentype\": {\n \"source\": \"apache\"\n },\n \"application/vnd.ms-pki.seccat\": {\n \"source\": \"apache\",\n \"extensions\": [\"cat\"]\n },\n \"application/vnd.ms-pki.stl\": {\n \"source\": \"apache\",\n \"extensions\": [\"stl\"]\n },\n \"application/vnd.ms-playready.initiator+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ms-powerpoint\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"ppt\",\"pps\",\"pot\"]\n },\n \"application/vnd.ms-powerpoint.addin.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"ppam\"]\n },\n \"application/vnd.ms-powerpoint.presentation.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"pptm\"]\n },\n \"application/vnd.ms-powerpoint.slide.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"sldm\"]\n },\n \"application/vnd.ms-powerpoint.slideshow.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"ppsm\"]\n },\n \"application/vnd.ms-powerpoint.template.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"potm\"]\n },\n \"application/vnd.ms-printdevicecapabilities+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ms-printing.printticket+xml\": {\n \"source\": \"apache\",\n \"compressible\": true\n },\n \"application/vnd.ms-printschematicket+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ms-project\": {\n \"source\": \"iana\",\n \"extensions\": [\"mpp\",\"mpt\"]\n },\n \"application/vnd.ms-tnef\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-windows.devicepairing\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-windows.nwprinting.oob\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-windows.printerpairing\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-windows.wsd.oob\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-wmdrm.lic-chlg-req\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-wmdrm.lic-resp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-wmdrm.meter-chlg-req\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-wmdrm.meter-resp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ms-word.document.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"docm\"]\n },\n \"application/vnd.ms-word.template.macroenabled.12\": {\n \"source\": \"iana\",\n \"extensions\": [\"dotm\"]\n },\n \"application/vnd.ms-works\": {\n \"source\": \"iana\",\n \"extensions\": [\"wps\",\"wks\",\"wcm\",\"wdb\"]\n },\n \"application/vnd.ms-wpl\": {\n \"source\": \"iana\",\n \"extensions\": [\"wpl\"]\n },\n \"application/vnd.ms-xpsdocument\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"xps\"]\n },\n \"application/vnd.msa-disk-image\": {\n \"source\": \"iana\"\n },\n \"application/vnd.mseq\": {\n \"source\": \"iana\",\n \"extensions\": [\"mseq\"]\n },\n \"application/vnd.msign\": {\n \"source\": \"iana\"\n },\n \"application/vnd.multiad.creator\": {\n \"source\": \"iana\"\n },\n \"application/vnd.multiad.creator.cif\": {\n \"source\": \"iana\"\n },\n \"application/vnd.music-niff\": {\n \"source\": \"iana\"\n },\n \"application/vnd.musician\": {\n \"source\": \"iana\",\n \"extensions\": [\"mus\"]\n },\n \"application/vnd.muvee.style\": {\n \"source\": \"iana\",\n \"extensions\": [\"msty\"]\n },\n \"application/vnd.mynfc\": {\n \"source\": \"iana\",\n \"extensions\": [\"taglet\"]\n },\n \"application/vnd.nacamar.ybrid+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.ncd.control\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ncd.reference\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nearst.inv+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nebumind.line\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nervana\": {\n \"source\": \"iana\"\n },\n \"application/vnd.netfpx\": {\n \"source\": \"iana\"\n },\n \"application/vnd.neurolanguage.nlu\": {\n \"source\": \"iana\",\n \"extensions\": [\"nlu\"]\n },\n \"application/vnd.nimn\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nintendo.nitro.rom\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nintendo.snes.rom\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nitf\": {\n \"source\": \"iana\",\n \"extensions\": [\"ntf\",\"nitf\"]\n },\n \"application/vnd.noblenet-directory\": {\n \"source\": \"iana\",\n \"extensions\": [\"nnd\"]\n },\n \"application/vnd.noblenet-sealer\": {\n \"source\": \"iana\",\n \"extensions\": [\"nns\"]\n },\n \"application/vnd.noblenet-web\": {\n \"source\": \"iana\",\n \"extensions\": [\"nnw\"]\n },\n \"application/vnd.nokia.catalogs\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.conml+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.conml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nokia.iptv.config+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nokia.isds-radio-presets\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.landmark+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.landmark+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nokia.landmarkcollection+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nokia.n-gage.ac+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ac\"]\n },\n \"application/vnd.nokia.n-gage.data\": {\n \"source\": \"iana\",\n \"extensions\": [\"ngdat\"]\n },\n \"application/vnd.nokia.n-gage.symbian.install\": {\n \"source\": \"iana\",\n \"extensions\": [\"n-gage\"]\n },\n \"application/vnd.nokia.ncd\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.pcd+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.nokia.pcd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.nokia.radio-preset\": {\n \"source\": \"iana\",\n \"extensions\": [\"rpst\"]\n },\n \"application/vnd.nokia.radio-presets\": {\n \"source\": \"iana\",\n \"extensions\": [\"rpss\"]\n },\n \"application/vnd.novadigm.edm\": {\n \"source\": \"iana\",\n \"extensions\": [\"edm\"]\n },\n \"application/vnd.novadigm.edx\": {\n \"source\": \"iana\",\n \"extensions\": [\"edx\"]\n },\n \"application/vnd.novadigm.ext\": {\n \"source\": \"iana\",\n \"extensions\": [\"ext\"]\n },\n \"application/vnd.ntt-local.content-share\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ntt-local.file-transfer\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ntt-local.ogw_remote-access\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ntt-local.sip-ta_remote\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ntt-local.sip-ta_tcp_stream\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oasis.opendocument.chart\": {\n \"source\": \"iana\",\n \"extensions\": [\"odc\"]\n },\n \"application/vnd.oasis.opendocument.chart-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"otc\"]\n },\n \"application/vnd.oasis.opendocument.database\": {\n \"source\": \"iana\",\n \"extensions\": [\"odb\"]\n },\n \"application/vnd.oasis.opendocument.formula\": {\n \"source\": \"iana\",\n \"extensions\": [\"odf\"]\n },\n \"application/vnd.oasis.opendocument.formula-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"odft\"]\n },\n \"application/vnd.oasis.opendocument.graphics\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"odg\"]\n },\n \"application/vnd.oasis.opendocument.graphics-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"otg\"]\n },\n \"application/vnd.oasis.opendocument.image\": {\n \"source\": \"iana\",\n \"extensions\": [\"odi\"]\n },\n \"application/vnd.oasis.opendocument.image-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"oti\"]\n },\n \"application/vnd.oasis.opendocument.presentation\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"odp\"]\n },\n \"application/vnd.oasis.opendocument.presentation-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"otp\"]\n },\n \"application/vnd.oasis.opendocument.spreadsheet\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"ods\"]\n },\n \"application/vnd.oasis.opendocument.spreadsheet-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"ots\"]\n },\n \"application/vnd.oasis.opendocument.text\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"odt\"]\n },\n \"application/vnd.oasis.opendocument.text-master\": {\n \"source\": \"iana\",\n \"extensions\": [\"odm\"]\n },\n \"application/vnd.oasis.opendocument.text-template\": {\n \"source\": \"iana\",\n \"extensions\": [\"ott\"]\n },\n \"application/vnd.oasis.opendocument.text-web\": {\n \"source\": \"iana\",\n \"extensions\": [\"oth\"]\n },\n \"application/vnd.obn\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ocf+cbor\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oci.image.manifest.v1+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oftn.l10n+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.contentaccessdownload+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.contentaccessstreaming+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.cspg-hexbinary\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oipf.dae.svg+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.dae.xhtml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.mippvcontrolmessage+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.pae.gem\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oipf.spdiscovery+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.spdlist+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.ueprofile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oipf.userprofile+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.olpc-sugar\": {\n \"source\": \"iana\",\n \"extensions\": [\"xo\"]\n },\n \"application/vnd.oma-scws-config\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma-scws-http-request\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma-scws-http-response\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.associated-procedure-parameter+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.drm-trigger+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.imd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.ltkm\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.notification+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.provisioningtrigger\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.sgboot\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.sgdd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.sgdu\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.simple-symbol-container\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.bcast.smartcard-trigger+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.sprov+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.bcast.stkm\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.cab-address-book+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.cab-feature-handler+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.cab-pcc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.cab-subs-invite+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.cab-user-prefs+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.dcd\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.dcdc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.dd2+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"dd2\"]\n },\n \"application/vnd.oma.drm.risd+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.group-usage-list+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.lwm2m+cbor\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.lwm2m+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.lwm2m+tlv\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.pal+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.poc.detailed-progress-report+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.poc.final-report+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.poc.groups+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.poc.invocation-descriptor+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.poc.optimized-progress-report+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.push\": {\n \"source\": \"iana\"\n },\n \"application/vnd.oma.scidm.messages+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oma.xcap-directory+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.omads-email+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.omads-file+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.omads-folder+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.omaloc-supl-init\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepager\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepagertamp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepagertamx\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepagertat\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepagertatp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.onepagertatx\": {\n \"source\": \"iana\"\n },\n \"application/vnd.openblox.game+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"obgx\"]\n },\n \"application/vnd.openblox.game-binary\": {\n \"source\": \"iana\"\n },\n \"application/vnd.openeye.oeb\": {\n \"source\": \"iana\"\n },\n \"application/vnd.openofficeorg.extension\": {\n \"source\": \"apache\",\n \"extensions\": [\"oxt\"]\n },\n \"application/vnd.openstreetmap.data+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"osm\"]\n },\n \"application/vnd.opentimestamps.ots\": {\n \"source\": \"iana\"\n },\n \"application/vnd.openxmlformats-officedocument.custom-properties+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.customxmlproperties+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawing+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.chart+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.extended-properties+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.comments+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"pptx\"]\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slide\": {\n \"source\": \"iana\",\n \"extensions\": [\"sldx\"]\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slide+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slideshow\": {\n \"source\": \"iana\",\n \"extensions\": [\"ppsx\"]\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.tags+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.template\": {\n \"source\": \"iana\",\n \"extensions\": [\"potx\"]\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"xlsx\"]\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.template\": {\n \"source\": \"iana\",\n \"extensions\": [\"xltx\"]\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.theme+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.themeoverride+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.vmldrawing\": {\n \"source\": \"iana\"\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"docx\"]\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.template\": {\n \"source\": \"iana\",\n \"extensions\": [\"dotx\"]\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-package.core-properties+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.openxmlformats-package.relationships+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oracle.resource+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.orange.indata\": {\n \"source\": \"iana\"\n },\n \"application/vnd.osa.netdeploy\": {\n \"source\": \"iana\"\n },\n \"application/vnd.osgeo.mapguide.package\": {\n \"source\": \"iana\",\n \"extensions\": [\"mgp\"]\n },\n \"application/vnd.osgi.bundle\": {\n \"source\": \"iana\"\n },\n \"application/vnd.osgi.dp\": {\n \"source\": \"iana\",\n \"extensions\": [\"dp\"]\n },\n \"application/vnd.osgi.subsystem\": {\n \"source\": \"iana\",\n \"extensions\": [\"esa\"]\n },\n \"application/vnd.otps.ct-kip+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.oxli.countgraph\": {\n \"source\": \"iana\"\n },\n \"application/vnd.pagerduty+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.palm\": {\n \"source\": \"iana\",\n \"extensions\": [\"pdb\",\"pqa\",\"oprc\"]\n },\n \"application/vnd.panoply\": {\n \"source\": \"iana\"\n },\n \"application/vnd.paos.xml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.patentdive\": {\n \"source\": \"iana\"\n },\n \"application/vnd.patientecommsdoc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.pawaafile\": {\n \"source\": \"iana\",\n \"extensions\": [\"paw\"]\n },\n \"application/vnd.pcos\": {\n \"source\": \"iana\"\n },\n \"application/vnd.pg.format\": {\n \"source\": \"iana\",\n \"extensions\": [\"str\"]\n },\n \"application/vnd.pg.osasli\": {\n \"source\": \"iana\",\n \"extensions\": [\"ei6\"]\n },\n \"application/vnd.piaccess.application-licence\": {\n \"source\": \"iana\"\n },\n \"application/vnd.picsel\": {\n \"source\": \"iana\",\n \"extensions\": [\"efif\"]\n },\n \"application/vnd.pmi.widget\": {\n \"source\": \"iana\",\n \"extensions\": [\"wg\"]\n },\n \"application/vnd.poc.group-advertisement+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.pocketlearn\": {\n \"source\": \"iana\",\n \"extensions\": [\"plf\"]\n },\n \"application/vnd.powerbuilder6\": {\n \"source\": \"iana\",\n \"extensions\": [\"pbd\"]\n },\n \"application/vnd.powerbuilder6-s\": {\n \"source\": \"iana\"\n },\n \"application/vnd.powerbuilder7\": {\n \"source\": \"iana\"\n },\n \"application/vnd.powerbuilder7-s\": {\n \"source\": \"iana\"\n },\n \"application/vnd.powerbuilder75\": {\n \"source\": \"iana\"\n },\n \"application/vnd.powerbuilder75-s\": {\n \"source\": \"iana\"\n },\n \"application/vnd.preminet\": {\n \"source\": \"iana\"\n },\n \"application/vnd.previewsystems.box\": {\n \"source\": \"iana\",\n \"extensions\": [\"box\"]\n },\n \"application/vnd.proteus.magazine\": {\n \"source\": \"iana\",\n \"extensions\": [\"mgz\"]\n },\n \"application/vnd.psfs\": {\n \"source\": \"iana\"\n },\n \"application/vnd.publishare-delta-tree\": {\n \"source\": \"iana\",\n \"extensions\": [\"qps\"]\n },\n \"application/vnd.pvi.ptid1\": {\n \"source\": \"iana\",\n \"extensions\": [\"ptid\"]\n },\n \"application/vnd.pwg-multiplexed\": {\n \"source\": \"iana\"\n },\n \"application/vnd.pwg-xhtml-print+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.qualcomm.brew-app-res\": {\n \"source\": \"iana\"\n },\n \"application/vnd.quarantainenet\": {\n \"source\": \"iana\"\n },\n \"application/vnd.quark.quarkxpress\": {\n \"source\": \"iana\",\n \"extensions\": [\"qxd\",\"qxt\",\"qwd\",\"qwt\",\"qxl\",\"qxb\"]\n },\n \"application/vnd.quobject-quoxdocument\": {\n \"source\": \"iana\"\n },\n \"application/vnd.radisys.moml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-audit+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-audit-conf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-audit-conn+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-audit-dialog+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-audit-stream+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-conf+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-base+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-fax-detect+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-fax-sendrecv+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-group+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-speech+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.radisys.msml-dialog-transform+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.rainstor.data\": {\n \"source\": \"iana\"\n },\n \"application/vnd.rapid\": {\n \"source\": \"iana\"\n },\n \"application/vnd.rar\": {\n \"source\": \"iana\",\n \"extensions\": [\"rar\"]\n },\n \"application/vnd.realvnc.bed\": {\n \"source\": \"iana\",\n \"extensions\": [\"bed\"]\n },\n \"application/vnd.recordare.musicxml\": {\n \"source\": \"iana\",\n \"extensions\": [\"mxl\"]\n },\n \"application/vnd.recordare.musicxml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"musicxml\"]\n },\n \"application/vnd.renlearn.rlprint\": {\n \"source\": \"iana\"\n },\n \"application/vnd.resilient.logic\": {\n \"source\": \"iana\"\n },\n \"application/vnd.restful+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.rig.cryptonote\": {\n \"source\": \"iana\",\n \"extensions\": [\"cryptonote\"]\n },\n \"application/vnd.rim.cod\": {\n \"source\": \"apache\",\n \"extensions\": [\"cod\"]\n },\n \"application/vnd.rn-realmedia\": {\n \"source\": \"apache\",\n \"extensions\": [\"rm\"]\n },\n \"application/vnd.rn-realmedia-vbr\": {\n \"source\": \"apache\",\n \"extensions\": [\"rmvb\"]\n },\n \"application/vnd.route66.link66+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"link66\"]\n },\n \"application/vnd.rs-274x\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ruckus.download\": {\n \"source\": \"iana\"\n },\n \"application/vnd.s3sms\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sailingtracker.track\": {\n \"source\": \"iana\",\n \"extensions\": [\"st\"]\n },\n \"application/vnd.sar\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sbm.cid\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sbm.mid2\": {\n \"source\": \"iana\"\n },\n \"application/vnd.scribus\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.3df\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.csf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.doc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.eml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.mht\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.net\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.ppt\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.tiff\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealed.xls\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealedmedia.softseal.html\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sealedmedia.softseal.pdf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.seemail\": {\n \"source\": \"iana\",\n \"extensions\": [\"see\"]\n },\n \"application/vnd.seis+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.sema\": {\n \"source\": \"iana\",\n \"extensions\": [\"sema\"]\n },\n \"application/vnd.semd\": {\n \"source\": \"iana\",\n \"extensions\": [\"semd\"]\n },\n \"application/vnd.semf\": {\n \"source\": \"iana\",\n \"extensions\": [\"semf\"]\n },\n \"application/vnd.shade-save-file\": {\n \"source\": \"iana\"\n },\n \"application/vnd.shana.informed.formdata\": {\n \"source\": \"iana\",\n \"extensions\": [\"ifm\"]\n },\n \"application/vnd.shana.informed.formtemplate\": {\n \"source\": \"iana\",\n \"extensions\": [\"itp\"]\n },\n \"application/vnd.shana.informed.interchange\": {\n \"source\": \"iana\",\n \"extensions\": [\"iif\"]\n },\n \"application/vnd.shana.informed.package\": {\n \"source\": \"iana\",\n \"extensions\": [\"ipk\"]\n },\n \"application/vnd.shootproof+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.shopkick+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.shp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.shx\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sigrok.session\": {\n \"source\": \"iana\"\n },\n \"application/vnd.simtech-mindmapper\": {\n \"source\": \"iana\",\n \"extensions\": [\"twd\",\"twds\"]\n },\n \"application/vnd.siren+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.smaf\": {\n \"source\": \"iana\",\n \"extensions\": [\"mmf\"]\n },\n \"application/vnd.smart.notebook\": {\n \"source\": \"iana\"\n },\n \"application/vnd.smart.teacher\": {\n \"source\": \"iana\",\n \"extensions\": [\"teacher\"]\n },\n \"application/vnd.snesdev-page-table\": {\n \"source\": \"iana\"\n },\n \"application/vnd.software602.filler.form+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"fo\"]\n },\n \"application/vnd.software602.filler.form-xml-zip\": {\n \"source\": \"iana\"\n },\n \"application/vnd.solent.sdkm+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"sdkm\",\"sdkd\"]\n },\n \"application/vnd.spotfire.dxp\": {\n \"source\": \"iana\",\n \"extensions\": [\"dxp\"]\n },\n \"application/vnd.spotfire.sfs\": {\n \"source\": \"iana\",\n \"extensions\": [\"sfs\"]\n },\n \"application/vnd.sqlite3\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sss-cod\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sss-dtf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sss-ntf\": {\n \"source\": \"iana\"\n },\n \"application/vnd.stardivision.calc\": {\n \"source\": \"apache\",\n \"extensions\": [\"sdc\"]\n },\n \"application/vnd.stardivision.draw\": {\n \"source\": \"apache\",\n \"extensions\": [\"sda\"]\n },\n \"application/vnd.stardivision.impress\": {\n \"source\": \"apache\",\n \"extensions\": [\"sdd\"]\n },\n \"application/vnd.stardivision.math\": {\n \"source\": \"apache\",\n \"extensions\": [\"smf\"]\n },\n \"application/vnd.stardivision.writer\": {\n \"source\": \"apache\",\n \"extensions\": [\"sdw\",\"vor\"]\n },\n \"application/vnd.stardivision.writer-global\": {\n \"source\": \"apache\",\n \"extensions\": [\"sgl\"]\n },\n \"application/vnd.stepmania.package\": {\n \"source\": \"iana\",\n \"extensions\": [\"smzip\"]\n },\n \"application/vnd.stepmania.stepchart\": {\n \"source\": \"iana\",\n \"extensions\": [\"sm\"]\n },\n \"application/vnd.street-stream\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sun.wadl+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wadl\"]\n },\n \"application/vnd.sun.xml.calc\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxc\"]\n },\n \"application/vnd.sun.xml.calc.template\": {\n \"source\": \"apache\",\n \"extensions\": [\"stc\"]\n },\n \"application/vnd.sun.xml.draw\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxd\"]\n },\n \"application/vnd.sun.xml.draw.template\": {\n \"source\": \"apache\",\n \"extensions\": [\"std\"]\n },\n \"application/vnd.sun.xml.impress\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxi\"]\n },\n \"application/vnd.sun.xml.impress.template\": {\n \"source\": \"apache\",\n \"extensions\": [\"sti\"]\n },\n \"application/vnd.sun.xml.math\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxm\"]\n },\n \"application/vnd.sun.xml.writer\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxw\"]\n },\n \"application/vnd.sun.xml.writer.global\": {\n \"source\": \"apache\",\n \"extensions\": [\"sxg\"]\n },\n \"application/vnd.sun.xml.writer.template\": {\n \"source\": \"apache\",\n \"extensions\": [\"stw\"]\n },\n \"application/vnd.sus-calendar\": {\n \"source\": \"iana\",\n \"extensions\": [\"sus\",\"susp\"]\n },\n \"application/vnd.svd\": {\n \"source\": \"iana\",\n \"extensions\": [\"svd\"]\n },\n \"application/vnd.swiftview-ics\": {\n \"source\": \"iana\"\n },\n \"application/vnd.sycle+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.syft+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.symbian.install\": {\n \"source\": \"apache\",\n \"extensions\": [\"sis\",\"sisx\"]\n },\n \"application/vnd.syncml+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"xsm\"]\n },\n \"application/vnd.syncml.dm+wbxml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"extensions\": [\"bdm\"]\n },\n \"application/vnd.syncml.dm+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"xdm\"]\n },\n \"application/vnd.syncml.dm.notification\": {\n \"source\": \"iana\"\n },\n \"application/vnd.syncml.dmddf+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.syncml.dmddf+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"ddf\"]\n },\n \"application/vnd.syncml.dmtnds+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.syncml.dmtnds+xml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true\n },\n \"application/vnd.syncml.ds.notification\": {\n \"source\": \"iana\"\n },\n \"application/vnd.tableschema+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.tao.intent-module-archive\": {\n \"source\": \"iana\",\n \"extensions\": [\"tao\"]\n },\n \"application/vnd.tcpdump.pcap\": {\n \"source\": \"iana\",\n \"extensions\": [\"pcap\",\"cap\",\"dmp\"]\n },\n \"application/vnd.think-cell.ppttc+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.tmd.mediaflex.api+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.tml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.tmobile-livetv\": {\n \"source\": \"iana\",\n \"extensions\": [\"tmo\"]\n },\n \"application/vnd.tri.onesource\": {\n \"source\": \"iana\"\n },\n \"application/vnd.trid.tpt\": {\n \"source\": \"iana\",\n \"extensions\": [\"tpt\"]\n },\n \"application/vnd.triscape.mxs\": {\n \"source\": \"iana\",\n \"extensions\": [\"mxs\"]\n },\n \"application/vnd.trueapp\": {\n \"source\": \"iana\",\n \"extensions\": [\"tra\"]\n },\n \"application/vnd.truedoc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ubisoft.webplayer\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ufdl\": {\n \"source\": \"iana\",\n \"extensions\": [\"ufd\",\"ufdl\"]\n },\n \"application/vnd.uiq.theme\": {\n \"source\": \"iana\",\n \"extensions\": [\"utz\"]\n },\n \"application/vnd.umajin\": {\n \"source\": \"iana\",\n \"extensions\": [\"umj\"]\n },\n \"application/vnd.unity\": {\n \"source\": \"iana\",\n \"extensions\": [\"unityweb\"]\n },\n \"application/vnd.uoml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"uoml\"]\n },\n \"application/vnd.uplanet.alert\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.alert-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.bearer-choice\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.bearer-choice-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.cacheop\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.cacheop-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.channel\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.channel-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.list\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.list-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.listcmd\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.listcmd-wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uplanet.signal\": {\n \"source\": \"iana\"\n },\n \"application/vnd.uri-map\": {\n \"source\": \"iana\"\n },\n \"application/vnd.valve.source.material\": {\n \"source\": \"iana\"\n },\n \"application/vnd.vcx\": {\n \"source\": \"iana\",\n \"extensions\": [\"vcx\"]\n },\n \"application/vnd.vd-study\": {\n \"source\": \"iana\"\n },\n \"application/vnd.vectorworks\": {\n \"source\": \"iana\"\n },\n \"application/vnd.vel+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.verimatrix.vcas\": {\n \"source\": \"iana\"\n },\n \"application/vnd.veritone.aion+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.veryant.thin\": {\n \"source\": \"iana\"\n },\n \"application/vnd.ves.encrypted\": {\n \"source\": \"iana\"\n },\n \"application/vnd.vidsoft.vidconference\": {\n \"source\": \"iana\"\n },\n \"application/vnd.visio\": {\n \"source\": \"iana\",\n \"extensions\": [\"vsd\",\"vst\",\"vss\",\"vsw\"]\n },\n \"application/vnd.visionary\": {\n \"source\": \"iana\",\n \"extensions\": [\"vis\"]\n },\n \"application/vnd.vividence.scriptfile\": {\n \"source\": \"iana\"\n },\n \"application/vnd.vsf\": {\n \"source\": \"iana\",\n \"extensions\": [\"vsf\"]\n },\n \"application/vnd.wap.sic\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wap.slc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wap.wbxml\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"extensions\": [\"wbxml\"]\n },\n \"application/vnd.wap.wmlc\": {\n \"source\": \"iana\",\n \"extensions\": [\"wmlc\"]\n },\n \"application/vnd.wap.wmlscriptc\": {\n \"source\": \"iana\",\n \"extensions\": [\"wmlsc\"]\n },\n \"application/vnd.webturbo\": {\n \"source\": \"iana\",\n \"extensions\": [\"wtb\"]\n },\n \"application/vnd.wfa.dpp\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wfa.p2p\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wfa.wsc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.windows.devicepairing\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wmc\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wmf.bootstrap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wolfram.mathematica\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wolfram.mathematica.package\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wolfram.player\": {\n \"source\": \"iana\",\n \"extensions\": [\"nbp\"]\n },\n \"application/vnd.wordperfect\": {\n \"source\": \"iana\",\n \"extensions\": [\"wpd\"]\n },\n \"application/vnd.wqd\": {\n \"source\": \"iana\",\n \"extensions\": [\"wqd\"]\n },\n \"application/vnd.wrq-hp3000-labelled\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wt.stf\": {\n \"source\": \"iana\",\n \"extensions\": [\"stf\"]\n },\n \"application/vnd.wv.csp+wbxml\": {\n \"source\": \"iana\"\n },\n \"application/vnd.wv.csp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.wv.ssp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.xacml+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.xara\": {\n \"source\": \"iana\",\n \"extensions\": [\"xar\"]\n },\n \"application/vnd.xfdl\": {\n \"source\": \"iana\",\n \"extensions\": [\"xfdl\"]\n },\n \"application/vnd.xfdl.webform\": {\n \"source\": \"iana\"\n },\n \"application/vnd.xmi+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vnd.xmpie.cpkg\": {\n \"source\": \"iana\"\n },\n \"application/vnd.xmpie.dpkg\": {\n \"source\": \"iana\"\n },\n \"application/vnd.xmpie.plan\": {\n \"source\": \"iana\"\n },\n \"application/vnd.xmpie.ppkg\": {\n \"source\": \"iana\"\n },\n \"application/vnd.xmpie.xlim\": {\n \"source\": \"iana\"\n },\n \"application/vnd.yamaha.hv-dic\": {\n \"source\": \"iana\",\n \"extensions\": [\"hvd\"]\n },\n \"application/vnd.yamaha.hv-script\": {\n \"source\": \"iana\",\n \"extensions\": [\"hvs\"]\n },\n \"application/vnd.yamaha.hv-voice\": {\n \"source\": \"iana\",\n \"extensions\": [\"hvp\"]\n },\n \"application/vnd.yamaha.openscoreformat\": {\n \"source\": \"iana\",\n \"extensions\": [\"osf\"]\n },\n \"application/vnd.yamaha.openscoreformat.osfpvg+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"osfpvg\"]\n },\n \"application/vnd.yamaha.remote-setup\": {\n \"source\": \"iana\"\n },\n \"application/vnd.yamaha.smaf-audio\": {\n \"source\": \"iana\",\n \"extensions\": [\"saf\"]\n },\n \"application/vnd.yamaha.smaf-phrase\": {\n \"source\": \"iana\",\n \"extensions\": [\"spf\"]\n },\n \"application/vnd.yamaha.through-ngn\": {\n \"source\": \"iana\"\n },\n \"application/vnd.yamaha.tunnel-udpencap\": {\n \"source\": \"iana\"\n },\n \"application/vnd.yaoweme\": {\n \"source\": \"iana\"\n },\n \"application/vnd.yellowriver-custom-menu\": {\n \"source\": \"iana\",\n \"extensions\": [\"cmp\"]\n },\n \"application/vnd.youtube.yt\": {\n \"source\": \"iana\"\n },\n \"application/vnd.zul\": {\n \"source\": \"iana\",\n \"extensions\": [\"zir\",\"zirz\"]\n },\n \"application/vnd.zzazz.deck+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"zaz\"]\n },\n \"application/voicexml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"vxml\"]\n },\n \"application/voucher-cms+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/vq-rtcpxr\": {\n \"source\": \"iana\"\n },\n \"application/wasm\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wasm\"]\n },\n \"application/watcherinfo+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wif\"]\n },\n \"application/webpush-options+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/whoispp-query\": {\n \"source\": \"iana\"\n },\n \"application/whoispp-response\": {\n \"source\": \"iana\"\n },\n \"application/widget\": {\n \"source\": \"iana\",\n \"extensions\": [\"wgt\"]\n },\n \"application/winhlp\": {\n \"source\": \"apache\",\n \"extensions\": [\"hlp\"]\n },\n \"application/wita\": {\n \"source\": \"iana\"\n },\n \"application/wordperfect5.1\": {\n \"source\": \"iana\"\n },\n \"application/wsdl+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wsdl\"]\n },\n \"application/wspolicy+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"wspolicy\"]\n },\n \"application/x-7z-compressed\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"7z\"]\n },\n \"application/x-abiword\": {\n \"source\": \"apache\",\n \"extensions\": [\"abw\"]\n },\n \"application/x-ace-compressed\": {\n \"source\": \"apache\",\n \"extensions\": [\"ace\"]\n },\n \"application/x-amf\": {\n \"source\": \"apache\"\n },\n \"application/x-apple-diskimage\": {\n \"source\": \"apache\",\n \"extensions\": [\"dmg\"]\n },\n \"application/x-arj\": {\n \"compressible\": false,\n \"extensions\": [\"arj\"]\n },\n \"application/x-authorware-bin\": {\n \"source\": \"apache\",\n \"extensions\": [\"aab\",\"x32\",\"u32\",\"vox\"]\n },\n \"application/x-authorware-map\": {\n \"source\": \"apache\",\n \"extensions\": [\"aam\"]\n },\n \"application/x-authorware-seg\": {\n \"source\": \"apache\",\n \"extensions\": [\"aas\"]\n },\n \"application/x-bcpio\": {\n \"source\": \"apache\",\n \"extensions\": [\"bcpio\"]\n },\n \"application/x-bdoc\": {\n \"compressible\": false,\n \"extensions\": [\"bdoc\"]\n },\n \"application/x-bittorrent\": {\n \"source\": \"apache\",\n \"extensions\": [\"torrent\"]\n },\n \"application/x-blorb\": {\n \"source\": \"apache\",\n \"extensions\": [\"blb\",\"blorb\"]\n },\n \"application/x-bzip\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"bz\"]\n },\n \"application/x-bzip2\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"bz2\",\"boz\"]\n },\n \"application/x-cbr\": {\n \"source\": \"apache\",\n \"extensions\": [\"cbr\",\"cba\",\"cbt\",\"cbz\",\"cb7\"]\n },\n \"application/x-cdlink\": {\n \"source\": \"apache\",\n \"extensions\": [\"vcd\"]\n },\n \"application/x-cfs-compressed\": {\n \"source\": \"apache\",\n \"extensions\": [\"cfs\"]\n },\n \"application/x-chat\": {\n \"source\": \"apache\",\n \"extensions\": [\"chat\"]\n },\n \"application/x-chess-pgn\": {\n \"source\": \"apache\",\n \"extensions\": [\"pgn\"]\n },\n \"application/x-chrome-extension\": {\n \"extensions\": [\"crx\"]\n },\n \"application/x-cocoa\": {\n \"source\": \"nginx\",\n \"extensions\": [\"cco\"]\n },\n \"application/x-compress\": {\n \"source\": \"apache\"\n },\n \"application/x-conference\": {\n \"source\": \"apache\",\n \"extensions\": [\"nsc\"]\n },\n \"application/x-cpio\": {\n \"source\": \"apache\",\n \"extensions\": [\"cpio\"]\n },\n \"application/x-csh\": {\n \"source\": \"apache\",\n \"extensions\": [\"csh\"]\n },\n \"application/x-deb\": {\n \"compressible\": false\n },\n \"application/x-debian-package\": {\n \"source\": \"apache\",\n \"extensions\": [\"deb\",\"udeb\"]\n },\n \"application/x-dgc-compressed\": {\n \"source\": \"apache\",\n \"extensions\": [\"dgc\"]\n },\n \"application/x-director\": {\n \"source\": \"apache\",\n \"extensions\": [\"dir\",\"dcr\",\"dxr\",\"cst\",\"cct\",\"cxt\",\"w3d\",\"fgd\",\"swa\"]\n },\n \"application/x-doom\": {\n \"source\": \"apache\",\n \"extensions\": [\"wad\"]\n },\n \"application/x-dtbncx+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"ncx\"]\n },\n \"application/x-dtbook+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"dtb\"]\n },\n \"application/x-dtbresource+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"res\"]\n },\n \"application/x-dvi\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"dvi\"]\n },\n \"application/x-envoy\": {\n \"source\": \"apache\",\n \"extensions\": [\"evy\"]\n },\n \"application/x-eva\": {\n \"source\": \"apache\",\n \"extensions\": [\"eva\"]\n },\n \"application/x-font-bdf\": {\n \"source\": \"apache\",\n \"extensions\": [\"bdf\"]\n },\n \"application/x-font-dos\": {\n \"source\": \"apache\"\n },\n \"application/x-font-framemaker\": {\n \"source\": \"apache\"\n },\n \"application/x-font-ghostscript\": {\n \"source\": \"apache\",\n \"extensions\": [\"gsf\"]\n },\n \"application/x-font-libgrx\": {\n \"source\": \"apache\"\n },\n \"application/x-font-linux-psf\": {\n \"source\": \"apache\",\n \"extensions\": [\"psf\"]\n },\n \"application/x-font-pcf\": {\n \"source\": \"apache\",\n \"extensions\": [\"pcf\"]\n },\n \"application/x-font-snf\": {\n \"source\": \"apache\",\n \"extensions\": [\"snf\"]\n },\n \"application/x-font-speedo\": {\n \"source\": \"apache\"\n },\n \"application/x-font-sunos-news\": {\n \"source\": \"apache\"\n },\n \"application/x-font-type1\": {\n \"source\": \"apache\",\n \"extensions\": [\"pfa\",\"pfb\",\"pfm\",\"afm\"]\n },\n \"application/x-font-vfont\": {\n \"source\": \"apache\"\n },\n \"application/x-freearc\": {\n \"source\": \"apache\",\n \"extensions\": [\"arc\"]\n },\n \"application/x-futuresplash\": {\n \"source\": \"apache\",\n \"extensions\": [\"spl\"]\n },\n \"application/x-gca-compressed\": {\n \"source\": \"apache\",\n \"extensions\": [\"gca\"]\n },\n \"application/x-glulx\": {\n \"source\": \"apache\",\n \"extensions\": [\"ulx\"]\n },\n \"application/x-gnumeric\": {\n \"source\": \"apache\",\n \"extensions\": [\"gnumeric\"]\n },\n \"application/x-gramps-xml\": {\n \"source\": \"apache\",\n \"extensions\": [\"gramps\"]\n },\n \"application/x-gtar\": {\n \"source\": \"apache\",\n \"extensions\": [\"gtar\"]\n },\n \"application/x-gzip\": {\n \"source\": \"apache\"\n },\n \"application/x-hdf\": {\n \"source\": \"apache\",\n \"extensions\": [\"hdf\"]\n },\n \"application/x-httpd-php\": {\n \"compressible\": true,\n \"extensions\": [\"php\"]\n },\n \"application/x-install-instructions\": {\n \"source\": \"apache\",\n \"extensions\": [\"install\"]\n },\n \"application/x-iso9660-image\": {\n \"source\": \"apache\",\n \"extensions\": [\"iso\"]\n },\n \"application/x-iwork-keynote-sffkey\": {\n \"extensions\": [\"key\"]\n },\n \"application/x-iwork-numbers-sffnumbers\": {\n \"extensions\": [\"numbers\"]\n },\n \"application/x-iwork-pages-sffpages\": {\n \"extensions\": [\"pages\"]\n },\n \"application/x-java-archive-diff\": {\n \"source\": \"nginx\",\n \"extensions\": [\"jardiff\"]\n },\n \"application/x-java-jnlp-file\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"jnlp\"]\n },\n \"application/x-javascript\": {\n \"compressible\": true\n },\n \"application/x-keepass2\": {\n \"extensions\": [\"kdbx\"]\n },\n \"application/x-latex\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"latex\"]\n },\n \"application/x-lua-bytecode\": {\n \"extensions\": [\"luac\"]\n },\n \"application/x-lzh-compressed\": {\n \"source\": \"apache\",\n \"extensions\": [\"lzh\",\"lha\"]\n },\n \"application/x-makeself\": {\n \"source\": \"nginx\",\n \"extensions\": [\"run\"]\n },\n \"application/x-mie\": {\n \"source\": \"apache\",\n \"extensions\": [\"mie\"]\n },\n \"application/x-mobipocket-ebook\": {\n \"source\": \"apache\",\n \"extensions\": [\"prc\",\"mobi\"]\n },\n \"application/x-mpegurl\": {\n \"compressible\": false\n },\n \"application/x-ms-application\": {\n \"source\": \"apache\",\n \"extensions\": [\"application\"]\n },\n \"application/x-ms-shortcut\": {\n \"source\": \"apache\",\n \"extensions\": [\"lnk\"]\n },\n \"application/x-ms-wmd\": {\n \"source\": \"apache\",\n \"extensions\": [\"wmd\"]\n },\n \"application/x-ms-wmz\": {\n \"source\": \"apache\",\n \"extensions\": [\"wmz\"]\n },\n \"application/x-ms-xbap\": {\n \"source\": \"apache\",\n \"extensions\": [\"xbap\"]\n },\n \"application/x-msaccess\": {\n \"source\": \"apache\",\n \"extensions\": [\"mdb\"]\n },\n \"application/x-msbinder\": {\n \"source\": \"apache\",\n \"extensions\": [\"obd\"]\n },\n \"application/x-mscardfile\": {\n \"source\": \"apache\",\n \"extensions\": [\"crd\"]\n },\n \"application/x-msclip\": {\n \"source\": \"apache\",\n \"extensions\": [\"clp\"]\n },\n \"application/x-msdos-program\": {\n \"extensions\": [\"exe\"]\n },\n \"application/x-msdownload\": {\n \"source\": \"apache\",\n \"extensions\": [\"exe\",\"dll\",\"com\",\"bat\",\"msi\"]\n },\n \"application/x-msmediaview\": {\n \"source\": \"apache\",\n \"extensions\": [\"mvb\",\"m13\",\"m14\"]\n },\n \"application/x-msmetafile\": {\n \"source\": \"apache\",\n \"extensions\": [\"wmf\",\"wmz\",\"emf\",\"emz\"]\n },\n \"application/x-msmoney\": {\n \"source\": \"apache\",\n \"extensions\": [\"mny\"]\n },\n \"application/x-mspublisher\": {\n \"source\": \"apache\",\n \"extensions\": [\"pub\"]\n },\n \"application/x-msschedule\": {\n \"source\": \"apache\",\n \"extensions\": [\"scd\"]\n },\n \"application/x-msterminal\": {\n \"source\": \"apache\",\n \"extensions\": [\"trm\"]\n },\n \"application/x-mswrite\": {\n \"source\": \"apache\",\n \"extensions\": [\"wri\"]\n },\n \"application/x-netcdf\": {\n \"source\": \"apache\",\n \"extensions\": [\"nc\",\"cdf\"]\n },\n \"application/x-ns-proxy-autoconfig\": {\n \"compressible\": true,\n \"extensions\": [\"pac\"]\n },\n \"application/x-nzb\": {\n \"source\": \"apache\",\n \"extensions\": [\"nzb\"]\n },\n \"application/x-perl\": {\n \"source\": \"nginx\",\n \"extensions\": [\"pl\",\"pm\"]\n },\n \"application/x-pilot\": {\n \"source\": \"nginx\",\n \"extensions\": [\"prc\",\"pdb\"]\n },\n \"application/x-pkcs12\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"p12\",\"pfx\"]\n },\n \"application/x-pkcs7-certificates\": {\n \"source\": \"apache\",\n \"extensions\": [\"p7b\",\"spc\"]\n },\n \"application/x-pkcs7-certreqresp\": {\n \"source\": \"apache\",\n \"extensions\": [\"p7r\"]\n },\n \"application/x-pki-message\": {\n \"source\": \"iana\"\n },\n \"application/x-rar-compressed\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"rar\"]\n },\n \"application/x-redhat-package-manager\": {\n \"source\": \"nginx\",\n \"extensions\": [\"rpm\"]\n },\n \"application/x-research-info-systems\": {\n \"source\": \"apache\",\n \"extensions\": [\"ris\"]\n },\n \"application/x-sea\": {\n \"source\": \"nginx\",\n \"extensions\": [\"sea\"]\n },\n \"application/x-sh\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"sh\"]\n },\n \"application/x-shar\": {\n \"source\": \"apache\",\n \"extensions\": [\"shar\"]\n },\n \"application/x-shockwave-flash\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"swf\"]\n },\n \"application/x-silverlight-app\": {\n \"source\": \"apache\",\n \"extensions\": [\"xap\"]\n },\n \"application/x-sql\": {\n \"source\": \"apache\",\n \"extensions\": [\"sql\"]\n },\n \"application/x-stuffit\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"sit\"]\n },\n \"application/x-stuffitx\": {\n \"source\": \"apache\",\n \"extensions\": [\"sitx\"]\n },\n \"application/x-subrip\": {\n \"source\": \"apache\",\n \"extensions\": [\"srt\"]\n },\n \"application/x-sv4cpio\": {\n \"source\": \"apache\",\n \"extensions\": [\"sv4cpio\"]\n },\n \"application/x-sv4crc\": {\n \"source\": \"apache\",\n \"extensions\": [\"sv4crc\"]\n },\n \"application/x-t3vm-image\": {\n \"source\": \"apache\",\n \"extensions\": [\"t3\"]\n },\n \"application/x-tads\": {\n \"source\": \"apache\",\n \"extensions\": [\"gam\"]\n },\n \"application/x-tar\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"tar\"]\n },\n \"application/x-tcl\": {\n \"source\": \"apache\",\n \"extensions\": [\"tcl\",\"tk\"]\n },\n \"application/x-tex\": {\n \"source\": \"apache\",\n \"extensions\": [\"tex\"]\n },\n \"application/x-tex-tfm\": {\n \"source\": \"apache\",\n \"extensions\": [\"tfm\"]\n },\n \"application/x-texinfo\": {\n \"source\": \"apache\",\n \"extensions\": [\"texinfo\",\"texi\"]\n },\n \"application/x-tgif\": {\n \"source\": \"apache\",\n \"extensions\": [\"obj\"]\n },\n \"application/x-ustar\": {\n \"source\": \"apache\",\n \"extensions\": [\"ustar\"]\n },\n \"application/x-virtualbox-hdd\": {\n \"compressible\": true,\n \"extensions\": [\"hdd\"]\n },\n \"application/x-virtualbox-ova\": {\n \"compressible\": true,\n \"extensions\": [\"ova\"]\n },\n \"application/x-virtualbox-ovf\": {\n \"compressible\": true,\n \"extensions\": [\"ovf\"]\n },\n \"application/x-virtualbox-vbox\": {\n \"compressible\": true,\n \"extensions\": [\"vbox\"]\n },\n \"application/x-virtualbox-vbox-extpack\": {\n \"compressible\": false,\n \"extensions\": [\"vbox-extpack\"]\n },\n \"application/x-virtualbox-vdi\": {\n \"compressible\": true,\n \"extensions\": [\"vdi\"]\n },\n \"application/x-virtualbox-vhd\": {\n \"compressible\": true,\n \"extensions\": [\"vhd\"]\n },\n \"application/x-virtualbox-vmdk\": {\n \"compressible\": true,\n \"extensions\": [\"vmdk\"]\n },\n \"application/x-wais-source\": {\n \"source\": \"apache\",\n \"extensions\": [\"src\"]\n },\n \"application/x-web-app-manifest+json\": {\n \"compressible\": true,\n \"extensions\": [\"webapp\"]\n },\n \"application/x-www-form-urlencoded\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/x-x509-ca-cert\": {\n \"source\": \"iana\",\n \"extensions\": [\"der\",\"crt\",\"pem\"]\n },\n \"application/x-x509-ca-ra-cert\": {\n \"source\": \"iana\"\n },\n \"application/x-x509-next-ca-cert\": {\n \"source\": \"iana\"\n },\n \"application/x-xfig\": {\n \"source\": \"apache\",\n \"extensions\": [\"fig\"]\n },\n \"application/x-xliff+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"xlf\"]\n },\n \"application/x-xpinstall\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"xpi\"]\n },\n \"application/x-xz\": {\n \"source\": \"apache\",\n \"extensions\": [\"xz\"]\n },\n \"application/x-zmachine\": {\n \"source\": \"apache\",\n \"extensions\": [\"z1\",\"z2\",\"z3\",\"z4\",\"z5\",\"z6\",\"z7\",\"z8\"]\n },\n \"application/x400-bp\": {\n \"source\": \"iana\"\n },\n \"application/xacml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xaml+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"xaml\"]\n },\n \"application/xcap-att+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xav\"]\n },\n \"application/xcap-caps+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xca\"]\n },\n \"application/xcap-diff+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xdf\"]\n },\n \"application/xcap-el+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xel\"]\n },\n \"application/xcap-error+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xcap-ns+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xns\"]\n },\n \"application/xcon-conference-info+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xcon-conference-info-diff+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xenc+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xenc\"]\n },\n \"application/xhtml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xhtml\",\"xht\"]\n },\n \"application/xhtml-voice+xml\": {\n \"source\": \"apache\",\n \"compressible\": true\n },\n \"application/xliff+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xlf\"]\n },\n \"application/xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xml\",\"xsl\",\"xsd\",\"rng\"]\n },\n \"application/xml-dtd\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"dtd\"]\n },\n \"application/xml-external-parsed-entity\": {\n \"source\": \"iana\"\n },\n \"application/xml-patch+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xmpp+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/xop+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xop\"]\n },\n \"application/xproc+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"xpl\"]\n },\n \"application/xslt+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xsl\",\"xslt\"]\n },\n \"application/xspf+xml\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"xspf\"]\n },\n \"application/xv+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"mxml\",\"xhvml\",\"xvml\",\"xvm\"]\n },\n \"application/yang\": {\n \"source\": \"iana\",\n \"extensions\": [\"yang\"]\n },\n \"application/yang-data+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/yang-data+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/yang-patch+json\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/yang-patch+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"application/yin+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"yin\"]\n },\n \"application/zip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"zip\"]\n },\n \"application/zlib\": {\n \"source\": \"iana\"\n },\n \"application/zstd\": {\n \"source\": \"iana\"\n },\n \"audio/1d-interleaved-parityfec\": {\n \"source\": \"iana\"\n },\n \"audio/32kadpcm\": {\n \"source\": \"iana\"\n },\n \"audio/3gpp\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"3gpp\"]\n },\n \"audio/3gpp2\": {\n \"source\": \"iana\"\n },\n \"audio/aac\": {\n \"source\": \"iana\"\n },\n \"audio/ac3\": {\n \"source\": \"iana\"\n },\n \"audio/adpcm\": {\n \"source\": \"apache\",\n \"extensions\": [\"adp\"]\n },\n \"audio/amr\": {\n \"source\": \"iana\",\n \"extensions\": [\"amr\"]\n },\n \"audio/amr-wb\": {\n \"source\": \"iana\"\n },\n \"audio/amr-wb+\": {\n \"source\": \"iana\"\n },\n \"audio/aptx\": {\n \"source\": \"iana\"\n },\n \"audio/asc\": {\n \"source\": \"iana\"\n },\n \"audio/atrac-advanced-lossless\": {\n \"source\": \"iana\"\n },\n \"audio/atrac-x\": {\n \"source\": \"iana\"\n },\n \"audio/atrac3\": {\n \"source\": \"iana\"\n },\n \"audio/basic\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"au\",\"snd\"]\n },\n \"audio/bv16\": {\n \"source\": \"iana\"\n },\n \"audio/bv32\": {\n \"source\": \"iana\"\n },\n \"audio/clearmode\": {\n \"source\": \"iana\"\n },\n \"audio/cn\": {\n \"source\": \"iana\"\n },\n \"audio/dat12\": {\n \"source\": \"iana\"\n },\n \"audio/dls\": {\n \"source\": \"iana\"\n },\n \"audio/dsr-es201108\": {\n \"source\": \"iana\"\n },\n \"audio/dsr-es202050\": {\n \"source\": \"iana\"\n },\n \"audio/dsr-es202211\": {\n \"source\": \"iana\"\n },\n \"audio/dsr-es202212\": {\n \"source\": \"iana\"\n },\n \"audio/dv\": {\n \"source\": \"iana\"\n },\n \"audio/dvi4\": {\n \"source\": \"iana\"\n },\n \"audio/eac3\": {\n \"source\": \"iana\"\n },\n \"audio/encaprtp\": {\n \"source\": \"iana\"\n },\n \"audio/evrc\": {\n \"source\": \"iana\"\n },\n \"audio/evrc-qcp\": {\n \"source\": \"iana\"\n },\n \"audio/evrc0\": {\n \"source\": \"iana\"\n },\n \"audio/evrc1\": {\n \"source\": \"iana\"\n },\n \"audio/evrcb\": {\n \"source\": \"iana\"\n },\n \"audio/evrcb0\": {\n \"source\": \"iana\"\n },\n \"audio/evrcb1\": {\n \"source\": \"iana\"\n },\n \"audio/evrcnw\": {\n \"source\": \"iana\"\n },\n \"audio/evrcnw0\": {\n \"source\": \"iana\"\n },\n \"audio/evrcnw1\": {\n \"source\": \"iana\"\n },\n \"audio/evrcwb\": {\n \"source\": \"iana\"\n },\n \"audio/evrcwb0\": {\n \"source\": \"iana\"\n },\n \"audio/evrcwb1\": {\n \"source\": \"iana\"\n },\n \"audio/evs\": {\n \"source\": \"iana\"\n },\n \"audio/flexfec\": {\n \"source\": \"iana\"\n },\n \"audio/fwdred\": {\n \"source\": \"iana\"\n },\n \"audio/g711-0\": {\n \"source\": \"iana\"\n },\n \"audio/g719\": {\n \"source\": \"iana\"\n },\n \"audio/g722\": {\n \"source\": \"iana\"\n },\n \"audio/g7221\": {\n \"source\": \"iana\"\n },\n \"audio/g723\": {\n \"source\": \"iana\"\n },\n \"audio/g726-16\": {\n \"source\": \"iana\"\n },\n \"audio/g726-24\": {\n \"source\": \"iana\"\n },\n \"audio/g726-32\": {\n \"source\": \"iana\"\n },\n \"audio/g726-40\": {\n \"source\": \"iana\"\n },\n \"audio/g728\": {\n \"source\": \"iana\"\n },\n \"audio/g729\": {\n \"source\": \"iana\"\n },\n \"audio/g7291\": {\n \"source\": \"iana\"\n },\n \"audio/g729d\": {\n \"source\": \"iana\"\n },\n \"audio/g729e\": {\n \"source\": \"iana\"\n },\n \"audio/gsm\": {\n \"source\": \"iana\"\n },\n \"audio/gsm-efr\": {\n \"source\": \"iana\"\n },\n \"audio/gsm-hr-08\": {\n \"source\": \"iana\"\n },\n \"audio/ilbc\": {\n \"source\": \"iana\"\n },\n \"audio/ip-mr_v2.5\": {\n \"source\": \"iana\"\n },\n \"audio/isac\": {\n \"source\": \"apache\"\n },\n \"audio/l16\": {\n \"source\": \"iana\"\n },\n \"audio/l20\": {\n \"source\": \"iana\"\n },\n \"audio/l24\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"audio/l8\": {\n \"source\": \"iana\"\n },\n \"audio/lpc\": {\n \"source\": \"iana\"\n },\n \"audio/melp\": {\n \"source\": \"iana\"\n },\n \"audio/melp1200\": {\n \"source\": \"iana\"\n },\n \"audio/melp2400\": {\n \"source\": \"iana\"\n },\n \"audio/melp600\": {\n \"source\": \"iana\"\n },\n \"audio/mhas\": {\n \"source\": \"iana\"\n },\n \"audio/midi\": {\n \"source\": \"apache\",\n \"extensions\": [\"mid\",\"midi\",\"kar\",\"rmi\"]\n },\n \"audio/mobile-xmf\": {\n \"source\": \"iana\",\n \"extensions\": [\"mxmf\"]\n },\n \"audio/mp3\": {\n \"compressible\": false,\n \"extensions\": [\"mp3\"]\n },\n \"audio/mp4\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"m4a\",\"mp4a\"]\n },\n \"audio/mp4a-latm\": {\n \"source\": \"iana\"\n },\n \"audio/mpa\": {\n \"source\": \"iana\"\n },\n \"audio/mpa-robust\": {\n \"source\": \"iana\"\n },\n \"audio/mpeg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"mpga\",\"mp2\",\"mp2a\",\"mp3\",\"m2a\",\"m3a\"]\n },\n \"audio/mpeg4-generic\": {\n \"source\": \"iana\"\n },\n \"audio/musepack\": {\n \"source\": \"apache\"\n },\n \"audio/ogg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"oga\",\"ogg\",\"spx\",\"opus\"]\n },\n \"audio/opus\": {\n \"source\": \"iana\"\n },\n \"audio/parityfec\": {\n \"source\": \"iana\"\n },\n \"audio/pcma\": {\n \"source\": \"iana\"\n },\n \"audio/pcma-wb\": {\n \"source\": \"iana\"\n },\n \"audio/pcmu\": {\n \"source\": \"iana\"\n },\n \"audio/pcmu-wb\": {\n \"source\": \"iana\"\n },\n \"audio/prs.sid\": {\n \"source\": \"iana\"\n },\n \"audio/qcelp\": {\n \"source\": \"iana\"\n },\n \"audio/raptorfec\": {\n \"source\": \"iana\"\n },\n \"audio/red\": {\n \"source\": \"iana\"\n },\n \"audio/rtp-enc-aescm128\": {\n \"source\": \"iana\"\n },\n \"audio/rtp-midi\": {\n \"source\": \"iana\"\n },\n \"audio/rtploopback\": {\n \"source\": \"iana\"\n },\n \"audio/rtx\": {\n \"source\": \"iana\"\n },\n \"audio/s3m\": {\n \"source\": \"apache\",\n \"extensions\": [\"s3m\"]\n },\n \"audio/scip\": {\n \"source\": \"iana\"\n },\n \"audio/silk\": {\n \"source\": \"apache\",\n \"extensions\": [\"sil\"]\n },\n \"audio/smv\": {\n \"source\": \"iana\"\n },\n \"audio/smv-qcp\": {\n \"source\": \"iana\"\n },\n \"audio/smv0\": {\n \"source\": \"iana\"\n },\n \"audio/sofa\": {\n \"source\": \"iana\"\n },\n \"audio/sp-midi\": {\n \"source\": \"iana\"\n },\n \"audio/speex\": {\n \"source\": \"iana\"\n },\n \"audio/t140c\": {\n \"source\": \"iana\"\n },\n \"audio/t38\": {\n \"source\": \"iana\"\n },\n \"audio/telephone-event\": {\n \"source\": \"iana\"\n },\n \"audio/tetra_acelp\": {\n \"source\": \"iana\"\n },\n \"audio/tetra_acelp_bb\": {\n \"source\": \"iana\"\n },\n \"audio/tone\": {\n \"source\": \"iana\"\n },\n \"audio/tsvcis\": {\n \"source\": \"iana\"\n },\n \"audio/uemclip\": {\n \"source\": \"iana\"\n },\n \"audio/ulpfec\": {\n \"source\": \"iana\"\n },\n \"audio/usac\": {\n \"source\": \"iana\"\n },\n \"audio/vdvi\": {\n \"source\": \"iana\"\n },\n \"audio/vmr-wb\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.3gpp.iufp\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.4sb\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.audiokoz\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.celp\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.cisco.nse\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.cmles.radio-events\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.cns.anp1\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.cns.inf1\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dece.audio\": {\n \"source\": \"iana\",\n \"extensions\": [\"uva\",\"uvva\"]\n },\n \"audio/vnd.digital-winds\": {\n \"source\": \"iana\",\n \"extensions\": [\"eol\"]\n },\n \"audio/vnd.dlna.adts\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.heaac.1\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.heaac.2\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.mlp\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.mps\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.pl2\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.pl2x\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.pl2z\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dolby.pulse.1\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dra\": {\n \"source\": \"iana\",\n \"extensions\": [\"dra\"]\n },\n \"audio/vnd.dts\": {\n \"source\": \"iana\",\n \"extensions\": [\"dts\"]\n },\n \"audio/vnd.dts.hd\": {\n \"source\": \"iana\",\n \"extensions\": [\"dtshd\"]\n },\n \"audio/vnd.dts.uhd\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.dvb.file\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.everad.plj\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.hns.audio\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.lucent.voice\": {\n \"source\": \"iana\",\n \"extensions\": [\"lvp\"]\n },\n \"audio/vnd.ms-playready.media.pya\": {\n \"source\": \"iana\",\n \"extensions\": [\"pya\"]\n },\n \"audio/vnd.nokia.mobile-xmf\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.nortel.vbk\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.nuera.ecelp4800\": {\n \"source\": \"iana\",\n \"extensions\": [\"ecelp4800\"]\n },\n \"audio/vnd.nuera.ecelp7470\": {\n \"source\": \"iana\",\n \"extensions\": [\"ecelp7470\"]\n },\n \"audio/vnd.nuera.ecelp9600\": {\n \"source\": \"iana\",\n \"extensions\": [\"ecelp9600\"]\n },\n \"audio/vnd.octel.sbc\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.presonus.multitrack\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.qcelp\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.rhetorex.32kadpcm\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.rip\": {\n \"source\": \"iana\",\n \"extensions\": [\"rip\"]\n },\n \"audio/vnd.rn-realaudio\": {\n \"compressible\": false\n },\n \"audio/vnd.sealedmedia.softseal.mpeg\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.vmx.cvsd\": {\n \"source\": \"iana\"\n },\n \"audio/vnd.wave\": {\n \"compressible\": false\n },\n \"audio/vorbis\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"audio/vorbis-config\": {\n \"source\": \"iana\"\n },\n \"audio/wav\": {\n \"compressible\": false,\n \"extensions\": [\"wav\"]\n },\n \"audio/wave\": {\n \"compressible\": false,\n \"extensions\": [\"wav\"]\n },\n \"audio/webm\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"weba\"]\n },\n \"audio/x-aac\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"aac\"]\n },\n \"audio/x-aiff\": {\n \"source\": \"apache\",\n \"extensions\": [\"aif\",\"aiff\",\"aifc\"]\n },\n \"audio/x-caf\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"caf\"]\n },\n \"audio/x-flac\": {\n \"source\": \"apache\",\n \"extensions\": [\"flac\"]\n },\n \"audio/x-m4a\": {\n \"source\": \"nginx\",\n \"extensions\": [\"m4a\"]\n },\n \"audio/x-matroska\": {\n \"source\": \"apache\",\n \"extensions\": [\"mka\"]\n },\n \"audio/x-mpegurl\": {\n \"source\": \"apache\",\n \"extensions\": [\"m3u\"]\n },\n \"audio/x-ms-wax\": {\n \"source\": \"apache\",\n \"extensions\": [\"wax\"]\n },\n \"audio/x-ms-wma\": {\n \"source\": \"apache\",\n \"extensions\": [\"wma\"]\n },\n \"audio/x-pn-realaudio\": {\n \"source\": \"apache\",\n \"extensions\": [\"ram\",\"ra\"]\n },\n \"audio/x-pn-realaudio-plugin\": {\n \"source\": \"apache\",\n \"extensions\": [\"rmp\"]\n },\n \"audio/x-realaudio\": {\n \"source\": \"nginx\",\n \"extensions\": [\"ra\"]\n },\n \"audio/x-tta\": {\n \"source\": \"apache\"\n },\n \"audio/x-wav\": {\n \"source\": \"apache\",\n \"extensions\": [\"wav\"]\n },\n \"audio/xm\": {\n \"source\": \"apache\",\n \"extensions\": [\"xm\"]\n },\n \"chemical/x-cdx\": {\n \"source\": \"apache\",\n \"extensions\": [\"cdx\"]\n },\n \"chemical/x-cif\": {\n \"source\": \"apache\",\n \"extensions\": [\"cif\"]\n },\n \"chemical/x-cmdf\": {\n \"source\": \"apache\",\n \"extensions\": [\"cmdf\"]\n },\n \"chemical/x-cml\": {\n \"source\": \"apache\",\n \"extensions\": [\"cml\"]\n },\n \"chemical/x-csml\": {\n \"source\": \"apache\",\n \"extensions\": [\"csml\"]\n },\n \"chemical/x-pdb\": {\n \"source\": \"apache\"\n },\n \"chemical/x-xyz\": {\n \"source\": \"apache\",\n \"extensions\": [\"xyz\"]\n },\n \"font/collection\": {\n \"source\": \"iana\",\n \"extensions\": [\"ttc\"]\n },\n \"font/otf\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"otf\"]\n },\n \"font/sfnt\": {\n \"source\": \"iana\"\n },\n \"font/ttf\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ttf\"]\n },\n \"font/woff\": {\n \"source\": \"iana\",\n \"extensions\": [\"woff\"]\n },\n \"font/woff2\": {\n \"source\": \"iana\",\n \"extensions\": [\"woff2\"]\n },\n \"image/aces\": {\n \"source\": \"iana\",\n \"extensions\": [\"exr\"]\n },\n \"image/apng\": {\n \"compressible\": false,\n \"extensions\": [\"apng\"]\n },\n \"image/avci\": {\n \"source\": \"iana\",\n \"extensions\": [\"avci\"]\n },\n \"image/avcs\": {\n \"source\": \"iana\",\n \"extensions\": [\"avcs\"]\n },\n \"image/avif\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"avif\"]\n },\n \"image/bmp\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"bmp\"]\n },\n \"image/cgm\": {\n \"source\": \"iana\",\n \"extensions\": [\"cgm\"]\n },\n \"image/dicom-rle\": {\n \"source\": \"iana\",\n \"extensions\": [\"drle\"]\n },\n \"image/emf\": {\n \"source\": \"iana\",\n \"extensions\": [\"emf\"]\n },\n \"image/fits\": {\n \"source\": \"iana\",\n \"extensions\": [\"fits\"]\n },\n \"image/g3fax\": {\n \"source\": \"iana\",\n \"extensions\": [\"g3\"]\n },\n \"image/gif\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"gif\"]\n },\n \"image/heic\": {\n \"source\": \"iana\",\n \"extensions\": [\"heic\"]\n },\n \"image/heic-sequence\": {\n \"source\": \"iana\",\n \"extensions\": [\"heics\"]\n },\n \"image/heif\": {\n \"source\": \"iana\",\n \"extensions\": [\"heif\"]\n },\n \"image/heif-sequence\": {\n \"source\": \"iana\",\n \"extensions\": [\"heifs\"]\n },\n \"image/hej2k\": {\n \"source\": \"iana\",\n \"extensions\": [\"hej2\"]\n },\n \"image/hsj2\": {\n \"source\": \"iana\",\n \"extensions\": [\"hsj2\"]\n },\n \"image/ief\": {\n \"source\": \"iana\",\n \"extensions\": [\"ief\"]\n },\n \"image/jls\": {\n \"source\": \"iana\",\n \"extensions\": [\"jls\"]\n },\n \"image/jp2\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"jp2\",\"jpg2\"]\n },\n \"image/jpeg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"jpeg\",\"jpg\",\"jpe\"]\n },\n \"image/jph\": {\n \"source\": \"iana\",\n \"extensions\": [\"jph\"]\n },\n \"image/jphc\": {\n \"source\": \"iana\",\n \"extensions\": [\"jhc\"]\n },\n \"image/jpm\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"jpm\"]\n },\n \"image/jpx\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"jpx\",\"jpf\"]\n },\n \"image/jxr\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxr\"]\n },\n \"image/jxra\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxra\"]\n },\n \"image/jxrs\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxrs\"]\n },\n \"image/jxs\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxs\"]\n },\n \"image/jxsc\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxsc\"]\n },\n \"image/jxsi\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxsi\"]\n },\n \"image/jxss\": {\n \"source\": \"iana\",\n \"extensions\": [\"jxss\"]\n },\n \"image/ktx\": {\n \"source\": \"iana\",\n \"extensions\": [\"ktx\"]\n },\n \"image/ktx2\": {\n \"source\": \"iana\",\n \"extensions\": [\"ktx2\"]\n },\n \"image/naplps\": {\n \"source\": \"iana\"\n },\n \"image/pjpeg\": {\n \"compressible\": false\n },\n \"image/png\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"png\"]\n },\n \"image/prs.btif\": {\n \"source\": \"iana\",\n \"extensions\": [\"btif\"]\n },\n \"image/prs.pti\": {\n \"source\": \"iana\",\n \"extensions\": [\"pti\"]\n },\n \"image/pwg-raster\": {\n \"source\": \"iana\"\n },\n \"image/sgi\": {\n \"source\": \"apache\",\n \"extensions\": [\"sgi\"]\n },\n \"image/svg+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"svg\",\"svgz\"]\n },\n \"image/t38\": {\n \"source\": \"iana\",\n \"extensions\": [\"t38\"]\n },\n \"image/tiff\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"tif\",\"tiff\"]\n },\n \"image/tiff-fx\": {\n \"source\": \"iana\",\n \"extensions\": [\"tfx\"]\n },\n \"image/vnd.adobe.photoshop\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"psd\"]\n },\n \"image/vnd.airzip.accelerator.azv\": {\n \"source\": \"iana\",\n \"extensions\": [\"azv\"]\n },\n \"image/vnd.cns.inf2\": {\n \"source\": \"iana\"\n },\n \"image/vnd.dece.graphic\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvi\",\"uvvi\",\"uvg\",\"uvvg\"]\n },\n \"image/vnd.djvu\": {\n \"source\": \"iana\",\n \"extensions\": [\"djvu\",\"djv\"]\n },\n \"image/vnd.dvb.subtitle\": {\n \"source\": \"iana\",\n \"extensions\": [\"sub\"]\n },\n \"image/vnd.dwg\": {\n \"source\": \"iana\",\n \"extensions\": [\"dwg\"]\n },\n \"image/vnd.dxf\": {\n \"source\": \"iana\",\n \"extensions\": [\"dxf\"]\n },\n \"image/vnd.fastbidsheet\": {\n \"source\": \"iana\",\n \"extensions\": [\"fbs\"]\n },\n \"image/vnd.fpx\": {\n \"source\": \"iana\",\n \"extensions\": [\"fpx\"]\n },\n \"image/vnd.fst\": {\n \"source\": \"iana\",\n \"extensions\": [\"fst\"]\n },\n \"image/vnd.fujixerox.edmics-mmr\": {\n \"source\": \"iana\",\n \"extensions\": [\"mmr\"]\n },\n \"image/vnd.fujixerox.edmics-rlc\": {\n \"source\": \"iana\",\n \"extensions\": [\"rlc\"]\n },\n \"image/vnd.globalgraphics.pgb\": {\n \"source\": \"iana\"\n },\n \"image/vnd.microsoft.icon\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"ico\"]\n },\n \"image/vnd.mix\": {\n \"source\": \"iana\"\n },\n \"image/vnd.mozilla.apng\": {\n \"source\": \"iana\"\n },\n \"image/vnd.ms-dds\": {\n \"compressible\": true,\n \"extensions\": [\"dds\"]\n },\n \"image/vnd.ms-modi\": {\n \"source\": \"iana\",\n \"extensions\": [\"mdi\"]\n },\n \"image/vnd.ms-photo\": {\n \"source\": \"apache\",\n \"extensions\": [\"wdp\"]\n },\n \"image/vnd.net-fpx\": {\n \"source\": \"iana\",\n \"extensions\": [\"npx\"]\n },\n \"image/vnd.pco.b16\": {\n \"source\": \"iana\",\n \"extensions\": [\"b16\"]\n },\n \"image/vnd.radiance\": {\n \"source\": \"iana\"\n },\n \"image/vnd.sealed.png\": {\n \"source\": \"iana\"\n },\n \"image/vnd.sealedmedia.softseal.gif\": {\n \"source\": \"iana\"\n },\n \"image/vnd.sealedmedia.softseal.jpg\": {\n \"source\": \"iana\"\n },\n \"image/vnd.svf\": {\n \"source\": \"iana\"\n },\n \"image/vnd.tencent.tap\": {\n \"source\": \"iana\",\n \"extensions\": [\"tap\"]\n },\n \"image/vnd.valve.source.texture\": {\n \"source\": \"iana\",\n \"extensions\": [\"vtf\"]\n },\n \"image/vnd.wap.wbmp\": {\n \"source\": \"iana\",\n \"extensions\": [\"wbmp\"]\n },\n \"image/vnd.xiff\": {\n \"source\": \"iana\",\n \"extensions\": [\"xif\"]\n },\n \"image/vnd.zbrush.pcx\": {\n \"source\": \"iana\",\n \"extensions\": [\"pcx\"]\n },\n \"image/webp\": {\n \"source\": \"apache\",\n \"extensions\": [\"webp\"]\n },\n \"image/wmf\": {\n \"source\": \"iana\",\n \"extensions\": [\"wmf\"]\n },\n \"image/x-3ds\": {\n \"source\": \"apache\",\n \"extensions\": [\"3ds\"]\n },\n \"image/x-cmu-raster\": {\n \"source\": \"apache\",\n \"extensions\": [\"ras\"]\n },\n \"image/x-cmx\": {\n \"source\": \"apache\",\n \"extensions\": [\"cmx\"]\n },\n \"image/x-freehand\": {\n \"source\": \"apache\",\n \"extensions\": [\"fh\",\"fhc\",\"fh4\",\"fh5\",\"fh7\"]\n },\n \"image/x-icon\": {\n \"source\": \"apache\",\n \"compressible\": true,\n \"extensions\": [\"ico\"]\n },\n \"image/x-jng\": {\n \"source\": \"nginx\",\n \"extensions\": [\"jng\"]\n },\n \"image/x-mrsid-image\": {\n \"source\": \"apache\",\n \"extensions\": [\"sid\"]\n },\n \"image/x-ms-bmp\": {\n \"source\": \"nginx\",\n \"compressible\": true,\n \"extensions\": [\"bmp\"]\n },\n \"image/x-pcx\": {\n \"source\": \"apache\",\n \"extensions\": [\"pcx\"]\n },\n \"image/x-pict\": {\n \"source\": \"apache\",\n \"extensions\": [\"pic\",\"pct\"]\n },\n \"image/x-portable-anymap\": {\n \"source\": \"apache\",\n \"extensions\": [\"pnm\"]\n },\n \"image/x-portable-bitmap\": {\n \"source\": \"apache\",\n \"extensions\": [\"pbm\"]\n },\n \"image/x-portable-graymap\": {\n \"source\": \"apache\",\n \"extensions\": [\"pgm\"]\n },\n \"image/x-portable-pixmap\": {\n \"source\": \"apache\",\n \"extensions\": [\"ppm\"]\n },\n \"image/x-rgb\": {\n \"source\": \"apache\",\n \"extensions\": [\"rgb\"]\n },\n \"image/x-tga\": {\n \"source\": \"apache\",\n \"extensions\": [\"tga\"]\n },\n \"image/x-xbitmap\": {\n \"source\": \"apache\",\n \"extensions\": [\"xbm\"]\n },\n \"image/x-xcf\": {\n \"compressible\": false\n },\n \"image/x-xpixmap\": {\n \"source\": \"apache\",\n \"extensions\": [\"xpm\"]\n },\n \"image/x-xwindowdump\": {\n \"source\": \"apache\",\n \"extensions\": [\"xwd\"]\n },\n \"message/cpim\": {\n \"source\": \"iana\"\n },\n \"message/delivery-status\": {\n \"source\": \"iana\"\n },\n \"message/disposition-notification\": {\n \"source\": \"iana\",\n \"extensions\": [\n \"disposition-notification\"\n ]\n },\n \"message/external-body\": {\n \"source\": \"iana\"\n },\n \"message/feedback-report\": {\n \"source\": \"iana\"\n },\n \"message/global\": {\n \"source\": \"iana\",\n \"extensions\": [\"u8msg\"]\n },\n \"message/global-delivery-status\": {\n \"source\": \"iana\",\n \"extensions\": [\"u8dsn\"]\n },\n \"message/global-disposition-notification\": {\n \"source\": \"iana\",\n \"extensions\": [\"u8mdn\"]\n },\n \"message/global-headers\": {\n \"source\": \"iana\",\n \"extensions\": [\"u8hdr\"]\n },\n \"message/http\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"message/imdn+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"message/news\": {\n \"source\": \"iana\"\n },\n \"message/partial\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"message/rfc822\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"eml\",\"mime\"]\n },\n \"message/s-http\": {\n \"source\": \"iana\"\n },\n \"message/sip\": {\n \"source\": \"iana\"\n },\n \"message/sipfrag\": {\n \"source\": \"iana\"\n },\n \"message/tracking-status\": {\n \"source\": \"iana\"\n },\n \"message/vnd.si.simp\": {\n \"source\": \"iana\"\n },\n \"message/vnd.wfa.wsc\": {\n \"source\": \"iana\",\n \"extensions\": [\"wsc\"]\n },\n \"model/3mf\": {\n \"source\": \"iana\",\n \"extensions\": [\"3mf\"]\n },\n \"model/e57\": {\n \"source\": \"iana\"\n },\n \"model/gltf+json\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"gltf\"]\n },\n \"model/gltf-binary\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"glb\"]\n },\n \"model/iges\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"igs\",\"iges\"]\n },\n \"model/mesh\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"msh\",\"mesh\",\"silo\"]\n },\n \"model/mtl\": {\n \"source\": \"iana\",\n \"extensions\": [\"mtl\"]\n },\n \"model/obj\": {\n \"source\": \"iana\",\n \"extensions\": [\"obj\"]\n },\n \"model/step\": {\n \"source\": \"iana\"\n },\n \"model/step+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"stpx\"]\n },\n \"model/step+zip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"stpz\"]\n },\n \"model/step-xml+zip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"stpxz\"]\n },\n \"model/stl\": {\n \"source\": \"iana\",\n \"extensions\": [\"stl\"]\n },\n \"model/vnd.collada+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"dae\"]\n },\n \"model/vnd.dwf\": {\n \"source\": \"iana\",\n \"extensions\": [\"dwf\"]\n },\n \"model/vnd.flatland.3dml\": {\n \"source\": \"iana\"\n },\n \"model/vnd.gdl\": {\n \"source\": \"iana\",\n \"extensions\": [\"gdl\"]\n },\n \"model/vnd.gs-gdl\": {\n \"source\": \"apache\"\n },\n \"model/vnd.gs.gdl\": {\n \"source\": \"iana\"\n },\n \"model/vnd.gtw\": {\n \"source\": \"iana\",\n \"extensions\": [\"gtw\"]\n },\n \"model/vnd.moml+xml\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"model/vnd.mts\": {\n \"source\": \"iana\",\n \"extensions\": [\"mts\"]\n },\n \"model/vnd.opengex\": {\n \"source\": \"iana\",\n \"extensions\": [\"ogex\"]\n },\n \"model/vnd.parasolid.transmit.binary\": {\n \"source\": \"iana\",\n \"extensions\": [\"x_b\"]\n },\n \"model/vnd.parasolid.transmit.text\": {\n \"source\": \"iana\",\n \"extensions\": [\"x_t\"]\n },\n \"model/vnd.pytha.pyox\": {\n \"source\": \"iana\"\n },\n \"model/vnd.rosette.annotated-data-model\": {\n \"source\": \"iana\"\n },\n \"model/vnd.sap.vds\": {\n \"source\": \"iana\",\n \"extensions\": [\"vds\"]\n },\n \"model/vnd.usdz+zip\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"usdz\"]\n },\n \"model/vnd.valve.source.compiled-map\": {\n \"source\": \"iana\",\n \"extensions\": [\"bsp\"]\n },\n \"model/vnd.vtu\": {\n \"source\": \"iana\",\n \"extensions\": [\"vtu\"]\n },\n \"model/vrml\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"wrl\",\"vrml\"]\n },\n \"model/x3d+binary\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"x3db\",\"x3dbz\"]\n },\n \"model/x3d+fastinfoset\": {\n \"source\": \"iana\",\n \"extensions\": [\"x3db\"]\n },\n \"model/x3d+vrml\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"x3dv\",\"x3dvz\"]\n },\n \"model/x3d+xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"x3d\",\"x3dz\"]\n },\n \"model/x3d-vrml\": {\n \"source\": \"iana\",\n \"extensions\": [\"x3dv\"]\n },\n \"multipart/alternative\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"multipart/appledouble\": {\n \"source\": \"iana\"\n },\n \"multipart/byteranges\": {\n \"source\": \"iana\"\n },\n \"multipart/digest\": {\n \"source\": \"iana\"\n },\n \"multipart/encrypted\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"multipart/form-data\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"multipart/header-set\": {\n \"source\": \"iana\"\n },\n \"multipart/mixed\": {\n \"source\": \"iana\"\n },\n \"multipart/multilingual\": {\n \"source\": \"iana\"\n },\n \"multipart/parallel\": {\n \"source\": \"iana\"\n },\n \"multipart/related\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"multipart/report\": {\n \"source\": \"iana\"\n },\n \"multipart/signed\": {\n \"source\": \"iana\",\n \"compressible\": false\n },\n \"multipart/vnd.bint.med-plus\": {\n \"source\": \"iana\"\n },\n \"multipart/voice-message\": {\n \"source\": \"iana\"\n },\n \"multipart/x-mixed-replace\": {\n \"source\": \"iana\"\n },\n \"text/1d-interleaved-parityfec\": {\n \"source\": \"iana\"\n },\n \"text/cache-manifest\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"appcache\",\"manifest\"]\n },\n \"text/calendar\": {\n \"source\": \"iana\",\n \"extensions\": [\"ics\",\"ifb\"]\n },\n \"text/calender\": {\n \"compressible\": true\n },\n \"text/cmd\": {\n \"compressible\": true\n },\n \"text/coffeescript\": {\n \"extensions\": [\"coffee\",\"litcoffee\"]\n },\n \"text/cql\": {\n \"source\": \"iana\"\n },\n \"text/cql-expression\": {\n \"source\": \"iana\"\n },\n \"text/cql-identifier\": {\n \"source\": \"iana\"\n },\n \"text/css\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"css\"]\n },\n \"text/csv\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"csv\"]\n },\n \"text/csv-schema\": {\n \"source\": \"iana\"\n },\n \"text/directory\": {\n \"source\": \"iana\"\n },\n \"text/dns\": {\n \"source\": \"iana\"\n },\n \"text/ecmascript\": {\n \"source\": \"iana\"\n },\n \"text/encaprtp\": {\n \"source\": \"iana\"\n },\n \"text/enriched\": {\n \"source\": \"iana\"\n },\n \"text/fhirpath\": {\n \"source\": \"iana\"\n },\n \"text/flexfec\": {\n \"source\": \"iana\"\n },\n \"text/fwdred\": {\n \"source\": \"iana\"\n },\n \"text/gff3\": {\n \"source\": \"iana\"\n },\n \"text/grammar-ref-list\": {\n \"source\": \"iana\"\n },\n \"text/html\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"html\",\"htm\",\"shtml\"]\n },\n \"text/jade\": {\n \"extensions\": [\"jade\"]\n },\n \"text/javascript\": {\n \"source\": \"iana\",\n \"compressible\": true\n },\n \"text/jcr-cnd\": {\n \"source\": \"iana\"\n },\n \"text/jsx\": {\n \"compressible\": true,\n \"extensions\": [\"jsx\"]\n },\n \"text/less\": {\n \"compressible\": true,\n \"extensions\": [\"less\"]\n },\n \"text/markdown\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"markdown\",\"md\"]\n },\n \"text/mathml\": {\n \"source\": \"nginx\",\n \"extensions\": [\"mml\"]\n },\n \"text/mdx\": {\n \"compressible\": true,\n \"extensions\": [\"mdx\"]\n },\n \"text/mizar\": {\n \"source\": \"iana\"\n },\n \"text/n3\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"n3\"]\n },\n \"text/parameters\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\"\n },\n \"text/parityfec\": {\n \"source\": \"iana\"\n },\n \"text/plain\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"txt\",\"text\",\"conf\",\"def\",\"list\",\"log\",\"in\",\"ini\"]\n },\n \"text/provenance-notation\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\"\n },\n \"text/prs.fallenstein.rst\": {\n \"source\": \"iana\"\n },\n \"text/prs.lines.tag\": {\n \"source\": \"iana\",\n \"extensions\": [\"dsc\"]\n },\n \"text/prs.prop.logic\": {\n \"source\": \"iana\"\n },\n \"text/raptorfec\": {\n \"source\": \"iana\"\n },\n \"text/red\": {\n \"source\": \"iana\"\n },\n \"text/rfc822-headers\": {\n \"source\": \"iana\"\n },\n \"text/richtext\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rtx\"]\n },\n \"text/rtf\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"rtf\"]\n },\n \"text/rtp-enc-aescm128\": {\n \"source\": \"iana\"\n },\n \"text/rtploopback\": {\n \"source\": \"iana\"\n },\n \"text/rtx\": {\n \"source\": \"iana\"\n },\n \"text/sgml\": {\n \"source\": \"iana\",\n \"extensions\": [\"sgml\",\"sgm\"]\n },\n \"text/shaclc\": {\n \"source\": \"iana\"\n },\n \"text/shex\": {\n \"source\": \"iana\",\n \"extensions\": [\"shex\"]\n },\n \"text/slim\": {\n \"extensions\": [\"slim\",\"slm\"]\n },\n \"text/spdx\": {\n \"source\": \"iana\",\n \"extensions\": [\"spdx\"]\n },\n \"text/strings\": {\n \"source\": \"iana\"\n },\n \"text/stylus\": {\n \"extensions\": [\"stylus\",\"styl\"]\n },\n \"text/t140\": {\n \"source\": \"iana\"\n },\n \"text/tab-separated-values\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"tsv\"]\n },\n \"text/troff\": {\n \"source\": \"iana\",\n \"extensions\": [\"t\",\"tr\",\"roff\",\"man\",\"me\",\"ms\"]\n },\n \"text/turtle\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"extensions\": [\"ttl\"]\n },\n \"text/ulpfec\": {\n \"source\": \"iana\"\n },\n \"text/uri-list\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"uri\",\"uris\",\"urls\"]\n },\n \"text/vcard\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"vcard\"]\n },\n \"text/vnd.a\": {\n \"source\": \"iana\"\n },\n \"text/vnd.abc\": {\n \"source\": \"iana\"\n },\n \"text/vnd.ascii-art\": {\n \"source\": \"iana\"\n },\n \"text/vnd.curl\": {\n \"source\": \"iana\",\n \"extensions\": [\"curl\"]\n },\n \"text/vnd.curl.dcurl\": {\n \"source\": \"apache\",\n \"extensions\": [\"dcurl\"]\n },\n \"text/vnd.curl.mcurl\": {\n \"source\": \"apache\",\n \"extensions\": [\"mcurl\"]\n },\n \"text/vnd.curl.scurl\": {\n \"source\": \"apache\",\n \"extensions\": [\"scurl\"]\n },\n \"text/vnd.debian.copyright\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\"\n },\n \"text/vnd.dmclientscript\": {\n \"source\": \"iana\"\n },\n \"text/vnd.dvb.subtitle\": {\n \"source\": \"iana\",\n \"extensions\": [\"sub\"]\n },\n \"text/vnd.esmertec.theme-descriptor\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\"\n },\n \"text/vnd.familysearch.gedcom\": {\n \"source\": \"iana\",\n \"extensions\": [\"ged\"]\n },\n \"text/vnd.ficlab.flt\": {\n \"source\": \"iana\"\n },\n \"text/vnd.fly\": {\n \"source\": \"iana\",\n \"extensions\": [\"fly\"]\n },\n \"text/vnd.fmi.flexstor\": {\n \"source\": \"iana\",\n \"extensions\": [\"flx\"]\n },\n \"text/vnd.gml\": {\n \"source\": \"iana\"\n },\n \"text/vnd.graphviz\": {\n \"source\": \"iana\",\n \"extensions\": [\"gv\"]\n },\n \"text/vnd.hans\": {\n \"source\": \"iana\"\n },\n \"text/vnd.hgl\": {\n \"source\": \"iana\"\n },\n \"text/vnd.in3d.3dml\": {\n \"source\": \"iana\",\n \"extensions\": [\"3dml\"]\n },\n \"text/vnd.in3d.spot\": {\n \"source\": \"iana\",\n \"extensions\": [\"spot\"]\n },\n \"text/vnd.iptc.newsml\": {\n \"source\": \"iana\"\n },\n \"text/vnd.iptc.nitf\": {\n \"source\": \"iana\"\n },\n \"text/vnd.latex-z\": {\n \"source\": \"iana\"\n },\n \"text/vnd.motorola.reflex\": {\n \"source\": \"iana\"\n },\n \"text/vnd.ms-mediapackage\": {\n \"source\": \"iana\"\n },\n \"text/vnd.net2phone.commcenter.command\": {\n \"source\": \"iana\"\n },\n \"text/vnd.radisys.msml-basic-layout\": {\n \"source\": \"iana\"\n },\n \"text/vnd.senx.warpscript\": {\n \"source\": \"iana\"\n },\n \"text/vnd.si.uricatalogue\": {\n \"source\": \"iana\"\n },\n \"text/vnd.sosi\": {\n \"source\": \"iana\"\n },\n \"text/vnd.sun.j2me.app-descriptor\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"extensions\": [\"jad\"]\n },\n \"text/vnd.trolltech.linguist\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\"\n },\n \"text/vnd.wap.si\": {\n \"source\": \"iana\"\n },\n \"text/vnd.wap.sl\": {\n \"source\": \"iana\"\n },\n \"text/vnd.wap.wml\": {\n \"source\": \"iana\",\n \"extensions\": [\"wml\"]\n },\n \"text/vnd.wap.wmlscript\": {\n \"source\": \"iana\",\n \"extensions\": [\"wmls\"]\n },\n \"text/vtt\": {\n \"source\": \"iana\",\n \"charset\": \"UTF-8\",\n \"compressible\": true,\n \"extensions\": [\"vtt\"]\n },\n \"text/x-asm\": {\n \"source\": \"apache\",\n \"extensions\": [\"s\",\"asm\"]\n },\n \"text/x-c\": {\n \"source\": \"apache\",\n \"extensions\": [\"c\",\"cc\",\"cxx\",\"cpp\",\"h\",\"hh\",\"dic\"]\n },\n \"text/x-component\": {\n \"source\": \"nginx\",\n \"extensions\": [\"htc\"]\n },\n \"text/x-fortran\": {\n \"source\": \"apache\",\n \"extensions\": [\"f\",\"for\",\"f77\",\"f90\"]\n },\n \"text/x-gwt-rpc\": {\n \"compressible\": true\n },\n \"text/x-handlebars-template\": {\n \"extensions\": [\"hbs\"]\n },\n \"text/x-java-source\": {\n \"source\": \"apache\",\n \"extensions\": [\"java\"]\n },\n \"text/x-jquery-tmpl\": {\n \"compressible\": true\n },\n \"text/x-lua\": {\n \"extensions\": [\"lua\"]\n },\n \"text/x-markdown\": {\n \"compressible\": true,\n \"extensions\": [\"mkd\"]\n },\n \"text/x-nfo\": {\n \"source\": \"apache\",\n \"extensions\": [\"nfo\"]\n },\n \"text/x-opml\": {\n \"source\": \"apache\",\n \"extensions\": [\"opml\"]\n },\n \"text/x-org\": {\n \"compressible\": true,\n \"extensions\": [\"org\"]\n },\n \"text/x-pascal\": {\n \"source\": \"apache\",\n \"extensions\": [\"p\",\"pas\"]\n },\n \"text/x-processing\": {\n \"compressible\": true,\n \"extensions\": [\"pde\"]\n },\n \"text/x-sass\": {\n \"extensions\": [\"sass\"]\n },\n \"text/x-scss\": {\n \"extensions\": [\"scss\"]\n },\n \"text/x-setext\": {\n \"source\": \"apache\",\n \"extensions\": [\"etx\"]\n },\n \"text/x-sfv\": {\n \"source\": \"apache\",\n \"extensions\": [\"sfv\"]\n },\n \"text/x-suse-ymp\": {\n \"compressible\": true,\n \"extensions\": [\"ymp\"]\n },\n \"text/x-uuencode\": {\n \"source\": \"apache\",\n \"extensions\": [\"uu\"]\n },\n \"text/x-vcalendar\": {\n \"source\": \"apache\",\n \"extensions\": [\"vcs\"]\n },\n \"text/x-vcard\": {\n \"source\": \"apache\",\n \"extensions\": [\"vcf\"]\n },\n \"text/xml\": {\n \"source\": \"iana\",\n \"compressible\": true,\n \"extensions\": [\"xml\"]\n },\n \"text/xml-external-parsed-entity\": {\n \"source\": \"iana\"\n },\n \"text/yaml\": {\n \"compressible\": true,\n \"extensions\": [\"yaml\",\"yml\"]\n },\n \"video/1d-interleaved-parityfec\": {\n \"source\": \"iana\"\n },\n \"video/3gpp\": {\n \"source\": \"iana\",\n \"extensions\": [\"3gp\",\"3gpp\"]\n },\n \"video/3gpp-tt\": {\n \"source\": \"iana\"\n },\n \"video/3gpp2\": {\n \"source\": \"iana\",\n \"extensions\": [\"3g2\"]\n },\n \"video/av1\": {\n \"source\": \"iana\"\n },\n \"video/bmpeg\": {\n \"source\": \"iana\"\n },\n \"video/bt656\": {\n \"source\": \"iana\"\n },\n \"video/celb\": {\n \"source\": \"iana\"\n },\n \"video/dv\": {\n \"source\": \"iana\"\n },\n \"video/encaprtp\": {\n \"source\": \"iana\"\n },\n \"video/ffv1\": {\n \"source\": \"iana\"\n },\n \"video/flexfec\": {\n \"source\": \"iana\"\n },\n \"video/h261\": {\n \"source\": \"iana\",\n \"extensions\": [\"h261\"]\n },\n \"video/h263\": {\n \"source\": \"iana\",\n \"extensions\": [\"h263\"]\n },\n \"video/h263-1998\": {\n \"source\": \"iana\"\n },\n \"video/h263-2000\": {\n \"source\": \"iana\"\n },\n \"video/h264\": {\n \"source\": \"iana\",\n \"extensions\": [\"h264\"]\n },\n \"video/h264-rcdo\": {\n \"source\": \"iana\"\n },\n \"video/h264-svc\": {\n \"source\": \"iana\"\n },\n \"video/h265\": {\n \"source\": \"iana\"\n },\n \"video/iso.segment\": {\n \"source\": \"iana\",\n \"extensions\": [\"m4s\"]\n },\n \"video/jpeg\": {\n \"source\": \"iana\",\n \"extensions\": [\"jpgv\"]\n },\n \"video/jpeg2000\": {\n \"source\": \"iana\"\n },\n \"video/jpm\": {\n \"source\": \"apache\",\n \"extensions\": [\"jpm\",\"jpgm\"]\n },\n \"video/jxsv\": {\n \"source\": \"iana\"\n },\n \"video/mj2\": {\n \"source\": \"iana\",\n \"extensions\": [\"mj2\",\"mjp2\"]\n },\n \"video/mp1s\": {\n \"source\": \"iana\"\n },\n \"video/mp2p\": {\n \"source\": \"iana\"\n },\n \"video/mp2t\": {\n \"source\": \"iana\",\n \"extensions\": [\"ts\"]\n },\n \"video/mp4\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"mp4\",\"mp4v\",\"mpg4\"]\n },\n \"video/mp4v-es\": {\n \"source\": \"iana\"\n },\n \"video/mpeg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"mpeg\",\"mpg\",\"mpe\",\"m1v\",\"m2v\"]\n },\n \"video/mpeg4-generic\": {\n \"source\": \"iana\"\n },\n \"video/mpv\": {\n \"source\": \"iana\"\n },\n \"video/nv\": {\n \"source\": \"iana\"\n },\n \"video/ogg\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"ogv\"]\n },\n \"video/parityfec\": {\n \"source\": \"iana\"\n },\n \"video/pointer\": {\n \"source\": \"iana\"\n },\n \"video/quicktime\": {\n \"source\": \"iana\",\n \"compressible\": false,\n \"extensions\": [\"qt\",\"mov\"]\n },\n \"video/raptorfec\": {\n \"source\": \"iana\"\n },\n \"video/raw\": {\n \"source\": \"iana\"\n },\n \"video/rtp-enc-aescm128\": {\n \"source\": \"iana\"\n },\n \"video/rtploopback\": {\n \"source\": \"iana\"\n },\n \"video/rtx\": {\n \"source\": \"iana\"\n },\n \"video/scip\": {\n \"source\": \"iana\"\n },\n \"video/smpte291\": {\n \"source\": \"iana\"\n },\n \"video/smpte292m\": {\n \"source\": \"iana\"\n },\n \"video/ulpfec\": {\n \"source\": \"iana\"\n },\n \"video/vc1\": {\n \"source\": \"iana\"\n },\n \"video/vc2\": {\n \"source\": \"iana\"\n },\n \"video/vnd.cctv\": {\n \"source\": \"iana\"\n },\n \"video/vnd.dece.hd\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvh\",\"uvvh\"]\n },\n \"video/vnd.dece.mobile\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvm\",\"uvvm\"]\n },\n \"video/vnd.dece.mp4\": {\n \"source\": \"iana\"\n },\n \"video/vnd.dece.pd\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvp\",\"uvvp\"]\n },\n \"video/vnd.dece.sd\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvs\",\"uvvs\"]\n },\n \"video/vnd.dece.video\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvv\",\"uvvv\"]\n },\n \"video/vnd.directv.mpeg\": {\n \"source\": \"iana\"\n },\n \"video/vnd.directv.mpeg-tts\": {\n \"source\": \"iana\"\n },\n \"video/vnd.dlna.mpeg-tts\": {\n \"source\": \"iana\"\n },\n \"video/vnd.dvb.file\": {\n \"source\": \"iana\",\n \"extensions\": [\"dvb\"]\n },\n \"video/vnd.fvt\": {\n \"source\": \"iana\",\n \"extensions\": [\"fvt\"]\n },\n \"video/vnd.hns.video\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.1dparityfec-1010\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.1dparityfec-2005\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.2dparityfec-1010\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.2dparityfec-2005\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.ttsavc\": {\n \"source\": \"iana\"\n },\n \"video/vnd.iptvforum.ttsmpeg2\": {\n \"source\": \"iana\"\n },\n \"video/vnd.motorola.video\": {\n \"source\": \"iana\"\n },\n \"video/vnd.motorola.videop\": {\n \"source\": \"iana\"\n },\n \"video/vnd.mpegurl\": {\n \"source\": \"iana\",\n \"extensions\": [\"mxu\",\"m4u\"]\n },\n \"video/vnd.ms-playready.media.pyv\": {\n \"source\": \"iana\",\n \"extensions\": [\"pyv\"]\n },\n \"video/vnd.nokia.interleaved-multimedia\": {\n \"source\": \"iana\"\n },\n \"video/vnd.nokia.mp4vr\": {\n \"source\": \"iana\"\n },\n \"video/vnd.nokia.videovoip\": {\n \"source\": \"iana\"\n },\n \"video/vnd.objectvideo\": {\n \"source\": \"iana\"\n },\n \"video/vnd.radgamettools.bink\": {\n \"source\": \"iana\"\n },\n \"video/vnd.radgamettools.smacker\": {\n \"source\": \"iana\"\n },\n \"video/vnd.sealed.mpeg1\": {\n \"source\": \"iana\"\n },\n \"video/vnd.sealed.mpeg4\": {\n \"source\": \"iana\"\n },\n \"video/vnd.sealed.swf\": {\n \"source\": \"iana\"\n },\n \"video/vnd.sealedmedia.softseal.mov\": {\n \"source\": \"iana\"\n },\n \"video/vnd.uvvu.mp4\": {\n \"source\": \"iana\",\n \"extensions\": [\"uvu\",\"uvvu\"]\n },\n \"video/vnd.vivo\": {\n \"source\": \"iana\",\n \"extensions\": [\"viv\"]\n },\n \"video/vnd.youtube.yt\": {\n \"source\": \"iana\"\n },\n \"video/vp8\": {\n \"source\": \"iana\"\n },\n \"video/vp9\": {\n \"source\": \"iana\"\n },\n \"video/webm\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"webm\"]\n },\n \"video/x-f4v\": {\n \"source\": \"apache\",\n \"extensions\": [\"f4v\"]\n },\n \"video/x-fli\": {\n \"source\": \"apache\",\n \"extensions\": [\"fli\"]\n },\n \"video/x-flv\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"flv\"]\n },\n \"video/x-m4v\": {\n \"source\": \"apache\",\n \"extensions\": [\"m4v\"]\n },\n \"video/x-matroska\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"mkv\",\"mk3d\",\"mks\"]\n },\n \"video/x-mng\": {\n \"source\": \"apache\",\n \"extensions\": [\"mng\"]\n },\n \"video/x-ms-asf\": {\n \"source\": \"apache\",\n \"extensions\": [\"asf\",\"asx\"]\n },\n \"video/x-ms-vob\": {\n \"source\": \"apache\",\n \"extensions\": [\"vob\"]\n },\n \"video/x-ms-wm\": {\n \"source\": \"apache\",\n \"extensions\": [\"wm\"]\n },\n \"video/x-ms-wmv\": {\n \"source\": \"apache\",\n \"compressible\": false,\n \"extensions\": [\"wmv\"]\n },\n \"video/x-ms-wmx\": {\n \"source\": \"apache\",\n \"extensions\": [\"wmx\"]\n },\n \"video/x-ms-wvx\": {\n \"source\": \"apache\",\n \"extensions\": [\"wvx\"]\n },\n \"video/x-msvideo\": {\n \"source\": \"apache\",\n \"extensions\": [\"avi\"]\n },\n \"video/x-sgi-movie\": {\n \"source\": \"apache\",\n \"extensions\": [\"movie\"]\n },\n \"video/x-smv\": {\n \"source\": \"apache\",\n \"extensions\": [\"smv\"]\n },\n \"x-conference/x-cooltalk\": {\n \"source\": \"apache\",\n \"extensions\": [\"ice\"]\n },\n \"x-shader/x-fragment\": {\n \"compressible\": true\n },\n \"x-shader/x-vertex\": {\n \"compressible\": true\n }\n}\n","module.exports =\n{\n parallel : require('./parallel.js'),\n serial : require('./serial.js'),\n serialOrdered : require('./serialOrdered.js')\n};\n","var iterate = require('./lib/iterate.js')\n , initState = require('./lib/state.js')\n , terminator = require('./lib/terminator.js')\n ;\n\n// Public API\nmodule.exports = parallel;\n\n/**\n * Runs iterator over provided array elements in parallel\n *\n * @param {array|object} list - array or object (named list) to iterate over\n * @param {function} iterator - iterator to run\n * @param {function} callback - invoked when all elements processed\n * @returns {function} - jobs terminator\n */\nfunction parallel(list, iterator, callback)\n{\n var state = initState(list);\n\n while (state.index < (state['keyedList'] || list).length)\n {\n iterate(list, iterator, state, function(error, result)\n {\n if (error)\n {\n callback(error, result);\n return;\n }\n\n // looks like it's the last one\n if (Object.keys(state.jobs).length === 0)\n {\n callback(null, state.results);\n return;\n }\n });\n\n state.index++;\n }\n\n return terminator.bind(state, callback);\n}\n","var async = require('./async.js')\n , abort = require('./abort.js')\n ;\n\n// API\nmodule.exports = iterate;\n\n/**\n * Iterates over each job object\n *\n * @param {array|object} list - array or object (named list) to iterate over\n * @param {function} iterator - iterator to run\n * @param {object} state - current job status\n * @param {function} callback - invoked when all elements processed\n */\nfunction iterate(list, iterator, state, callback)\n{\n // store current index\n var key = state['keyedList'] ? state['keyedList'][state.index] : state.index;\n\n state.jobs[key] = runJob(iterator, key, list[key], function(error, output)\n {\n // don't repeat yourself\n // skip secondary callbacks\n if (!(key in state.jobs))\n {\n return;\n }\n\n // clean up jobs\n delete state.jobs[key];\n\n if (error)\n {\n // don't process rest of the results\n // stop still active jobs\n // and reset the list\n abort(state);\n }\n else\n {\n state.results[key] = output;\n }\n\n // return salvaged results\n callback(error, state.results);\n });\n}\n\n/**\n * Runs iterator over provided job element\n *\n * @param {function} iterator - iterator to invoke\n * @param {string|number} key - key/index of the element in the list of jobs\n * @param {mixed} item - job description\n * @param {function} callback - invoked after iterator is done with the job\n * @returns {function|mixed} - job abort function or something else\n */\nfunction runJob(iterator, key, item, callback)\n{\n var aborter;\n\n // allow shortcut if iterator expects only two arguments\n if (iterator.length == 2)\n {\n aborter = iterator(item, async(callback));\n }\n // otherwise go with full three arguments\n else\n {\n aborter = iterator(item, key, async(callback));\n }\n\n return aborter;\n}\n","var defer = require('./defer.js');\n\n// API\nmodule.exports = async;\n\n/**\n * Runs provided callback asynchronously\n * even if callback itself is not\n *\n * @param {function} callback - callback to invoke\n * @returns {function} - augmented callback\n */\nfunction async(callback)\n{\n var isAsync = false;\n\n // check if async happened\n defer(function() { isAsync = true; });\n\n return function async_callback(err, result)\n {\n if (isAsync)\n {\n callback(err, result);\n }\n else\n {\n defer(function nextTick_callback()\n {\n callback(err, result);\n });\n }\n };\n}\n","module.exports = defer;\n\n/**\n * Runs provided function on next iteration of the event loop\n *\n * @param {function} fn - function to run\n */\nfunction defer(fn)\n{\n var nextTick = typeof setImmediate == 'function'\n ? setImmediate\n : (\n typeof process == 'object' && typeof process.nextTick == 'function'\n ? process.nextTick\n : null\n );\n\n if (nextTick)\n {\n nextTick(fn);\n }\n else\n {\n setTimeout(fn, 0);\n }\n}\n","// API\nmodule.exports = abort;\n\n/**\n * Aborts leftover active jobs\n *\n * @param {object} state - current state object\n */\nfunction abort(state)\n{\n Object.keys(state.jobs).forEach(clean.bind(state));\n\n // reset leftover jobs\n state.jobs = {};\n}\n\n/**\n * Cleans up leftover job by invoking abort function for the provided job id\n *\n * @this state\n * @param {string|number} key - job id to abort\n */\nfunction clean(key)\n{\n if (typeof this.jobs[key] == 'function')\n {\n this.jobs[key]();\n }\n}\n","// API\nmodule.exports = state;\n\n/**\n * Creates initial state object\n * for iteration over list\n *\n * @param {array|object} list - list to iterate over\n * @param {function|null} sortMethod - function to use for keys sort,\n * or `null` to keep them as is\n * @returns {object} - initial state object\n */\nfunction state(list, sortMethod)\n{\n var isNamedList = !Array.isArray(list)\n , initState =\n {\n index : 0,\n keyedList: isNamedList || sortMethod ? Object.keys(list) : null,\n jobs : {},\n results : isNamedList ? {} : [],\n size : isNamedList ? Object.keys(list).length : list.length\n }\n ;\n\n if (sortMethod)\n {\n // sort array keys based on it's values\n // sort object's keys just on own merit\n initState.keyedList.sort(isNamedList ? sortMethod : function(a, b)\n {\n return sortMethod(list[a], list[b]);\n });\n }\n\n return initState;\n}\n","var abort = require('./abort.js')\n , async = require('./async.js')\n ;\n\n// API\nmodule.exports = terminator;\n\n/**\n * Terminates jobs in the attached state context\n *\n * @this AsyncKitState#\n * @param {function} callback - final callback to invoke after termination\n */\nfunction terminator(callback)\n{\n if (!Object.keys(this.jobs).length)\n {\n return;\n }\n\n // fast forward iteration index\n this.index = this.size;\n\n // abort jobs\n abort(this);\n\n // send back results we have so far\n async(callback)(null, this.results);\n}\n","var serialOrdered = require('./serialOrdered.js');\n\n// Public API\nmodule.exports = serial;\n\n/**\n * Runs iterator over provided array elements in series\n *\n * @param {array|object} list - array or object (named list) to iterate over\n * @param {function} iterator - iterator to run\n * @param {function} callback - invoked when all elements processed\n * @returns {function} - jobs terminator\n */\nfunction serial(list, iterator, callback)\n{\n return serialOrdered(list, iterator, null, callback);\n}\n","var iterate = require('./lib/iterate.js')\n , initState = require('./lib/state.js')\n , terminator = require('./lib/terminator.js')\n ;\n\n// Public API\nmodule.exports = serialOrdered;\n// sorting helpers\nmodule.exports.ascending = ascending;\nmodule.exports.descending = descending;\n\n/**\n * Runs iterator over provided sorted array elements in series\n *\n * @param {array|object} list - array or object (named list) to iterate over\n * @param {function} iterator - iterator to run\n * @param {function} sortMethod - custom sort function\n * @param {function} callback - invoked when all elements processed\n * @returns {function} - jobs terminator\n */\nfunction serialOrdered(list, iterator, sortMethod, callback)\n{\n var state = initState(list, sortMethod);\n\n iterate(list, iterator, state, function iteratorHandler(error, result)\n {\n if (error)\n {\n callback(error, result);\n return;\n }\n\n state.index++;\n\n // are we there yet?\n if (state.index < (state['keyedList'] || list).length)\n {\n iterate(list, iterator, state, iteratorHandler);\n return;\n }\n\n // done here\n callback(null, state.results);\n });\n\n return terminator.bind(state, callback);\n}\n\n/*\n * -- Sort methods\n */\n\n/**\n * sort helper to sort array elements in ascending order\n *\n * @param {mixed} a - an item to compare\n * @param {mixed} b - an item to compare\n * @returns {number} - comparison result\n */\nfunction ascending(a, b)\n{\n return a < b ? -1 : a > b ? 1 : 0;\n}\n\n/**\n * sort helper to sort array elements in descending order\n *\n * @param {mixed} a - an item to compare\n * @param {mixed} b - an item to compare\n * @returns {number} - comparison result\n */\nfunction descending(a, b)\n{\n return -1 * ascending(a, b);\n}\n","// populates missing values\nmodule.exports = function(dst, src) {\n\n Object.keys(src).forEach(function(prop)\n {\n dst[prop] = dst[prop] || src[prop];\n });\n\n return dst;\n};\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\nimport { Sanitizer } from \"./util/sanitizer\";\nimport { WebResourceLike } from \"./webResource\";\nimport { custom } from \"./util/inspect\";\n\nconst errorSanitizer = new Sanitizer();\n\n/**\n * An error resulting from an HTTP request to a service endpoint.\n */\nexport class RestError extends Error {\n /**\n * A constant string to identify errors that may arise when making an HTTP request that indicates an issue with the transport layer (e.g. the hostname of the URL cannot be resolved via DNS.)\n */\n static readonly REQUEST_SEND_ERROR: string = \"REQUEST_SEND_ERROR\";\n /**\n * A constant string to identify errors that may arise from parsing an incoming HTTP response. Usually indicates a malformed HTTP body, such as an encoded JSON payload that is incomplete.\n */\n static readonly PARSE_ERROR: string = \"PARSE_ERROR\";\n\n /**\n * The error code, if any. Can be one of the static error code properties (REQUEST_SEND_ERROR / PARSE_ERROR) or can be a string code from an underlying system call (E_NOENT).\n */\n code?: string;\n /**\n * The HTTP status code of the response, if one was returned.\n */\n statusCode?: number;\n /**\n * Outgoing request.\n */\n request?: WebResourceLike;\n /**\n * Incoming response.\n */\n response?: HttpOperationResponse;\n /**\n * Any additional details. In the case of deserialization errors, can be the processed response.\n */\n details?: unknown;\n constructor(\n message: string,\n code?: string,\n statusCode?: number,\n request?: WebResourceLike,\n response?: HttpOperationResponse\n ) {\n super(message);\n this.name = \"RestError\";\n this.code = code;\n this.statusCode = statusCode;\n this.request = request;\n this.response = response;\n\n Object.setPrototypeOf(this, RestError.prototype);\n }\n\n /**\n * Logging method for util.inspect in Node\n */\n [custom](): string {\n return `RestError: ${this.message} \\n ${errorSanitizer.sanitize(this)}`;\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { URLBuilder, URLQuery } from \"../url\";\nimport { UnknownObject, isObject } from \"./utils\";\n\nexport interface SanitizerOptions {\n /**\n * Header names whose values will be logged when logging is enabled. Defaults to\n * Date, traceparent, x-ms-client-request-id, and x-ms-request id. Any headers\n * specified in this field will be added to that list. Any other values will\n * be written to logs as \"REDACTED\".\n */\n allowedHeaderNames?: string[];\n\n /**\n * Query string names whose values will be logged when logging is enabled. By default no\n * query string values are logged.\n */\n allowedQueryParameters?: string[];\n}\n\nconst RedactedString = \"REDACTED\";\n\nconst defaultAllowedHeaderNames = [\n \"x-ms-client-request-id\",\n \"x-ms-return-client-request-id\",\n \"x-ms-useragent\",\n \"x-ms-correlation-request-id\",\n \"x-ms-request-id\",\n \"client-request-id\",\n \"ms-cv\",\n \"return-client-request-id\",\n \"traceparent\",\n\n \"Access-Control-Allow-Credentials\",\n \"Access-Control-Allow-Headers\",\n \"Access-Control-Allow-Methods\",\n \"Access-Control-Allow-Origin\",\n \"Access-Control-Expose-Headers\",\n \"Access-Control-Max-Age\",\n \"Access-Control-Request-Headers\",\n \"Access-Control-Request-Method\",\n \"Origin\",\n\n \"Accept\",\n \"Accept-Encoding\",\n \"Cache-Control\",\n \"Connection\",\n \"Content-Length\",\n \"Content-Type\",\n \"Date\",\n \"ETag\",\n \"Expires\",\n \"If-Match\",\n \"If-Modified-Since\",\n \"If-None-Match\",\n \"If-Unmodified-Since\",\n \"Last-Modified\",\n \"Pragma\",\n \"Request-Id\",\n \"Retry-After\",\n \"Server\",\n \"Transfer-Encoding\",\n \"User-Agent\",\n];\n\nconst defaultAllowedQueryParameters: string[] = [\"api-version\"];\n\nexport class Sanitizer {\n public allowedHeaderNames: Set;\n public allowedQueryParameters: Set;\n\n constructor({ allowedHeaderNames = [], allowedQueryParameters = [] }: SanitizerOptions = {}) {\n allowedHeaderNames = Array.isArray(allowedHeaderNames)\n ? defaultAllowedHeaderNames.concat(allowedHeaderNames)\n : defaultAllowedHeaderNames;\n\n allowedQueryParameters = Array.isArray(allowedQueryParameters)\n ? defaultAllowedQueryParameters.concat(allowedQueryParameters)\n : defaultAllowedQueryParameters;\n\n this.allowedHeaderNames = new Set(allowedHeaderNames.map((n) => n.toLowerCase()));\n this.allowedQueryParameters = new Set(allowedQueryParameters.map((p) => p.toLowerCase()));\n }\n\n public sanitize(obj: unknown): string {\n const seen = new Set();\n return JSON.stringify(\n obj,\n (key: string, value: unknown) => {\n // Ensure Errors include their interesting non-enumerable members\n if (value instanceof Error) {\n return {\n ...value,\n name: value.name,\n message: value.message,\n };\n }\n\n if (key === \"_headersMap\") {\n return this.sanitizeHeaders(value as UnknownObject);\n } else if (key === \"url\") {\n return this.sanitizeUrl(value as string);\n } else if (key === \"query\") {\n return this.sanitizeQuery(value as UnknownObject);\n } else if (key === \"body\") {\n // Don't log the request body\n return undefined;\n } else if (key === \"response\") {\n // Don't log response again\n return undefined;\n } else if (key === \"operationSpec\") {\n // When using sendOperationRequest, the request carries a massive\n // field with the autorest spec. No need to log it.\n return undefined;\n } else if (Array.isArray(value) || isObject(value)) {\n if (seen.has(value)) {\n return \"[Circular]\";\n }\n seen.add(value);\n }\n\n return value;\n },\n 2\n );\n }\n\n private sanitizeHeaders(value: UnknownObject): UnknownObject {\n return this.sanitizeObject(value, this.allowedHeaderNames, (v, k) => v[k].value);\n }\n\n private sanitizeQuery(value: UnknownObject): UnknownObject {\n return this.sanitizeObject(value, this.allowedQueryParameters, (v, k) => v[k]);\n }\n\n private sanitizeObject(\n value: UnknownObject,\n allowedKeys: Set,\n accessor: (value: any, key: string) => any\n ): UnknownObject {\n if (typeof value !== \"object\" || value === null) {\n return value;\n }\n\n const sanitized: UnknownObject = {};\n\n for (const k of Object.keys(value)) {\n if (allowedKeys.has(k.toLowerCase())) {\n sanitized[k] = accessor(value, k);\n } else {\n sanitized[k] = RedactedString;\n }\n }\n\n return sanitized;\n }\n\n private sanitizeUrl(value: string): string {\n if (typeof value !== \"string\" || value === null) {\n return value;\n }\n\n const urlBuilder = URLBuilder.parse(value);\n const queryString = urlBuilder.getQuery();\n\n if (!queryString) {\n return value;\n }\n\n const query = URLQuery.parse(queryString);\n for (const k of query.keys()) {\n if (!this.allowedQueryParameters.has(k.toLowerCase())) {\n query.set(k, RedactedString);\n }\n }\n\n urlBuilder.setQuery(query.toString());\n return urlBuilder.toString();\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { inspect } from \"util\";\n\nexport const custom = inspect.custom;\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\nimport { createClientLogger } from \"@azure/logger\";\nexport const logger = createClientLogger(\"core-http\");\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport debug, { Debugger } from \"./debug\";\nexport { Debugger } from \"./debug\";\n\nconst registeredLoggers = new Set();\nconst logLevelFromEnv =\n (typeof process !== \"undefined\" && process.env && process.env.AZURE_LOG_LEVEL) || undefined;\n\nlet azureLogLevel: AzureLogLevel | undefined;\n\n/**\n * The AzureLogger provides a mechanism for overriding where logs are output to.\n * By default, logs are sent to stderr.\n * Override the `log` method to redirect logs to another location.\n */\nexport const AzureLogger: AzureClientLogger = debug(\"azure\");\nAzureLogger.log = (...args) => {\n debug.log(...args);\n};\n\n/**\n * The log levels supported by the logger.\n * The log levels in order of most verbose to least verbose are:\n * - verbose\n * - info\n * - warning\n * - error\n */\nexport type AzureLogLevel = \"verbose\" | \"info\" | \"warning\" | \"error\";\nconst AZURE_LOG_LEVELS = [\"verbose\", \"info\", \"warning\", \"error\"];\n\ntype AzureDebugger = Debugger & { level: AzureLogLevel };\n\n/**\n * An AzureClientLogger is a function that can log to an appropriate severity level.\n */\nexport type AzureClientLogger = Debugger;\n\nif (logLevelFromEnv) {\n // avoid calling setLogLevel because we don't want a mis-set environment variable to crash\n if (isAzureLogLevel(logLevelFromEnv)) {\n setLogLevel(logLevelFromEnv);\n } else {\n console.error(\n `AZURE_LOG_LEVEL set to unknown log level '${logLevelFromEnv}'; logging is not enabled. Acceptable values: ${AZURE_LOG_LEVELS.join(\n \", \"\n )}.`\n );\n }\n}\n\n/**\n * Immediately enables logging at the specified log level.\n * @param level - The log level to enable for logging.\n * Options from most verbose to least verbose are:\n * - verbose\n * - info\n * - warning\n * - error\n */\nexport function setLogLevel(level?: AzureLogLevel): void {\n if (level && !isAzureLogLevel(level)) {\n throw new Error(\n `Unknown log level '${level}'. Acceptable values: ${AZURE_LOG_LEVELS.join(\",\")}`\n );\n }\n azureLogLevel = level;\n\n const enabledNamespaces = [];\n for (const logger of registeredLoggers) {\n if (shouldEnable(logger)) {\n enabledNamespaces.push(logger.namespace);\n }\n }\n\n debug.enable(enabledNamespaces.join(\",\"));\n}\n\n/**\n * Retrieves the currently specified log level.\n */\nexport function getLogLevel(): AzureLogLevel | undefined {\n return azureLogLevel;\n}\n\nconst levelMap = {\n verbose: 400,\n info: 300,\n warning: 200,\n error: 100\n};\n\n/**\n * Defines the methods available on the SDK-facing logger.\n */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport interface AzureLogger {\n /**\n * Used for failures the program is unlikely to recover from,\n * such as Out of Memory.\n */\n error: Debugger;\n /**\n * Used when a function fails to perform its intended task.\n * Usually this means the function will throw an exception.\n * Not used for self-healing events (e.g. automatic retry)\n */\n warning: Debugger;\n /**\n * Used when a function operates normally.\n */\n info: Debugger;\n /**\n * Used for detailed trbouleshooting scenarios. This is\n * intended for use by developers / system administrators\n * for diagnosing specific failures.\n */\n verbose: Debugger;\n}\n\n/**\n * Creates a logger for use by the Azure SDKs that inherits from `AzureLogger`.\n * @param namespace - The name of the SDK package.\n * @hidden\n */\nexport function createClientLogger(namespace: string): AzureLogger {\n const clientRootLogger: AzureClientLogger = AzureLogger.extend(namespace);\n patchLogMethod(AzureLogger, clientRootLogger);\n return {\n error: createLogger(clientRootLogger, \"error\"),\n warning: createLogger(clientRootLogger, \"warning\"),\n info: createLogger(clientRootLogger, \"info\"),\n verbose: createLogger(clientRootLogger, \"verbose\")\n };\n}\n\nfunction patchLogMethod(parent: AzureClientLogger, child: AzureClientLogger | AzureDebugger): void {\n child.log = (...args) => {\n parent.log(...args);\n };\n}\n\nfunction createLogger(parent: AzureClientLogger, level: AzureLogLevel): AzureDebugger {\n const logger: AzureDebugger = Object.assign(parent.extend(level), {\n level\n });\n\n patchLogMethod(parent, logger);\n\n if (shouldEnable(logger)) {\n const enabledNamespaces = debug.disable();\n debug.enable(enabledNamespaces + \",\" + logger.namespace);\n }\n\n registeredLoggers.add(logger);\n\n return logger;\n}\n\nfunction shouldEnable(logger: AzureDebugger): boolean {\n if (azureLogLevel && levelMap[logger.level] <= levelMap[azureLogLevel]) {\n return true;\n } else {\n return false;\n }\n}\n\nfunction isAzureLogLevel(logLevel: string): logLevel is AzureLogLevel {\n return AZURE_LOG_LEVELS.includes(logLevel as any);\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { log } from \"./log\";\n\n/**\n * A simple mechanism for enabling logging.\n * Intended to mimic the publicly available `debug` package.\n */\nexport interface Debug {\n /**\n * Creates a new logger with the given namespace.\n */\n (namespace: string): Debugger;\n /**\n * The default log method (defaults to console)\n */\n log: (...args: any[]) => void;\n /**\n * Enables a particular set of namespaces.\n * To enable multiple separate them with commas, e.g. \"info,debug\".\n * Supports wildcards, e.g. \"azure:*\"\n * Supports skip syntax, e.g. \"azure:*,-azure:storage:*\" will enable\n * everything under azure except for things under azure:storage.\n */\n enable: (namespaces: string) => void;\n /**\n * Checks if a particular namespace is enabled.\n */\n enabled: (namespace: string) => boolean;\n /**\n * Disables all logging, returns what was previously enabled.\n */\n disable: () => string;\n}\n\n/**\n * A log function that can be dynamically enabled and redirected.\n */\nexport interface Debugger {\n /**\n * Logs the given arguments to the `log` method.\n */\n (...args: any[]): void;\n /**\n * True if this logger is active and logging.\n */\n enabled: boolean;\n /**\n * Used to cleanup/remove this logger.\n */\n destroy: () => boolean;\n /**\n * The current log method. Can be overridden to redirect output.\n */\n log: (...args: any[]) => void;\n /**\n * The namespace of this logger.\n */\n namespace: string;\n /**\n * Extends this logger with a child namespace.\n * Namespaces are separated with a ':' character.\n */\n extend: (namespace: string) => Debugger;\n}\n\nconst debugEnvVariable =\n (typeof process !== \"undefined\" && process.env && process.env.DEBUG) || undefined;\n\nlet enabledString: string | undefined;\nlet enabledNamespaces: RegExp[] = [];\nlet skippedNamespaces: RegExp[] = [];\nconst debuggers: Debugger[] = [];\n\nif (debugEnvVariable) {\n enable(debugEnvVariable);\n}\n\nconst debugObj: Debug = Object.assign(\n (namespace: string): Debugger => {\n return createDebugger(namespace);\n },\n {\n enable,\n enabled,\n disable,\n log\n }\n);\n\nfunction enable(namespaces: string): void {\n enabledString = namespaces;\n enabledNamespaces = [];\n skippedNamespaces = [];\n const wildcard = /\\*/g;\n const namespaceList = namespaces.split(\",\").map((ns) => ns.trim().replace(wildcard, \".*?\"));\n for (const ns of namespaceList) {\n if (ns.startsWith(\"-\")) {\n skippedNamespaces.push(new RegExp(`^${ns.substr(1)}$`));\n } else {\n enabledNamespaces.push(new RegExp(`^${ns}$`));\n }\n }\n for (const instance of debuggers) {\n instance.enabled = enabled(instance.namespace);\n }\n}\n\nfunction enabled(namespace: string): boolean {\n if (namespace.endsWith(\"*\")) {\n return true;\n }\n\n for (const skipped of skippedNamespaces) {\n if (skipped.test(namespace)) {\n return false;\n }\n }\n for (const enabledNamespace of enabledNamespaces) {\n if (enabledNamespace.test(namespace)) {\n return true;\n }\n }\n return false;\n}\n\nfunction disable(): string {\n const result = enabledString || \"\";\n enable(\"\");\n return result;\n}\n\nfunction createDebugger(namespace: string): Debugger {\n const newDebugger: Debugger = Object.assign(debug, {\n enabled: enabled(namespace),\n destroy,\n log: debugObj.log,\n namespace,\n extend\n });\n\n function debug(...args: any[]): void {\n if (!newDebugger.enabled) {\n return;\n }\n if (args.length > 0) {\n args[0] = `${namespace} ${args[0]}`;\n }\n newDebugger.log(...args);\n }\n\n debuggers.push(newDebugger);\n\n return newDebugger;\n}\n\nfunction destroy(this: Debugger): boolean {\n const index = debuggers.indexOf(this);\n if (index >= 0) {\n debuggers.splice(index, 1);\n return true;\n }\n return false;\n}\n\nfunction extend(this: Debugger, namespace: string): Debugger {\n const newDebugger = createDebugger(`${this.namespace}:${namespace}`);\n newDebugger.log = this.log;\n return newDebugger;\n}\n\nexport default debugObj;\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport util from \"util\";\nimport { EOL } from \"os\";\n\nexport function log(message: unknown, ...args: any[]): void {\n process.stderr.write(`${util.format(message, ...args)}${EOL}`);\n}\n","import Stream from 'stream';\nimport http from 'http';\nimport Url from 'url';\nimport whatwgUrl from 'whatwg-url';\nimport https from 'https';\nimport zlib from 'zlib';\n\n// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js\n\n// fix for \"Readable\" isn't a named export issue\nconst Readable = Stream.Readable;\n\nconst BUFFER = Symbol('buffer');\nconst TYPE = Symbol('type');\n\nclass Blob {\n\tconstructor() {\n\t\tthis[TYPE] = '';\n\n\t\tconst blobParts = arguments[0];\n\t\tconst options = arguments[1];\n\n\t\tconst buffers = [];\n\t\tlet size = 0;\n\n\t\tif (blobParts) {\n\t\t\tconst a = blobParts;\n\t\t\tconst length = Number(a.length);\n\t\t\tfor (let i = 0; i < length; i++) {\n\t\t\t\tconst element = a[i];\n\t\t\t\tlet buffer;\n\t\t\t\tif (element instanceof Buffer) {\n\t\t\t\t\tbuffer = element;\n\t\t\t\t} else if (ArrayBuffer.isView(element)) {\n\t\t\t\t\tbuffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);\n\t\t\t\t} else if (element instanceof ArrayBuffer) {\n\t\t\t\t\tbuffer = Buffer.from(element);\n\t\t\t\t} else if (element instanceof Blob) {\n\t\t\t\t\tbuffer = element[BUFFER];\n\t\t\t\t} else {\n\t\t\t\t\tbuffer = Buffer.from(typeof element === 'string' ? element : String(element));\n\t\t\t\t}\n\t\t\t\tsize += buffer.length;\n\t\t\t\tbuffers.push(buffer);\n\t\t\t}\n\t\t}\n\n\t\tthis[BUFFER] = Buffer.concat(buffers);\n\n\t\tlet type = options && options.type !== undefined && String(options.type).toLowerCase();\n\t\tif (type && !/[^\\u0020-\\u007E]/.test(type)) {\n\t\t\tthis[TYPE] = type;\n\t\t}\n\t}\n\tget size() {\n\t\treturn this[BUFFER].length;\n\t}\n\tget type() {\n\t\treturn this[TYPE];\n\t}\n\ttext() {\n\t\treturn Promise.resolve(this[BUFFER].toString());\n\t}\n\tarrayBuffer() {\n\t\tconst buf = this[BUFFER];\n\t\tconst ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\treturn Promise.resolve(ab);\n\t}\n\tstream() {\n\t\tconst readable = new Readable();\n\t\treadable._read = function () {};\n\t\treadable.push(this[BUFFER]);\n\t\treadable.push(null);\n\t\treturn readable;\n\t}\n\ttoString() {\n\t\treturn '[object Blob]';\n\t}\n\tslice() {\n\t\tconst size = this.size;\n\n\t\tconst start = arguments[0];\n\t\tconst end = arguments[1];\n\t\tlet relativeStart, relativeEnd;\n\t\tif (start === undefined) {\n\t\t\trelativeStart = 0;\n\t\t} else if (start < 0) {\n\t\t\trelativeStart = Math.max(size + start, 0);\n\t\t} else {\n\t\t\trelativeStart = Math.min(start, size);\n\t\t}\n\t\tif (end === undefined) {\n\t\t\trelativeEnd = size;\n\t\t} else if (end < 0) {\n\t\t\trelativeEnd = Math.max(size + end, 0);\n\t\t} else {\n\t\t\trelativeEnd = Math.min(end, size);\n\t\t}\n\t\tconst span = Math.max(relativeEnd - relativeStart, 0);\n\n\t\tconst buffer = this[BUFFER];\n\t\tconst slicedBuffer = buffer.slice(relativeStart, relativeStart + span);\n\t\tconst blob = new Blob([], { type: arguments[2] });\n\t\tblob[BUFFER] = slicedBuffer;\n\t\treturn blob;\n\t}\n}\n\nObject.defineProperties(Blob.prototype, {\n\tsize: { enumerable: true },\n\ttype: { enumerable: true },\n\tslice: { enumerable: true }\n});\n\nObject.defineProperty(Blob.prototype, Symbol.toStringTag, {\n\tvalue: 'Blob',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * fetch-error.js\n *\n * FetchError interface for operational errors\n */\n\n/**\n * Create FetchError instance\n *\n * @param String message Error message for human\n * @param String type Error type for machine\n * @param String systemError For Node.js system error\n * @return FetchError\n */\nfunction FetchError(message, type, systemError) {\n Error.call(this, message);\n\n this.message = message;\n this.type = type;\n\n // when err.type is `system`, err.code contains system error code\n if (systemError) {\n this.code = this.errno = systemError.code;\n }\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nFetchError.prototype = Object.create(Error.prototype);\nFetchError.prototype.constructor = FetchError;\nFetchError.prototype.name = 'FetchError';\n\nlet convert;\ntry {\n\tconvert = require('encoding').convert;\n} catch (e) {}\n\nconst INTERNALS = Symbol('Body internals');\n\n// fix an issue where \"PassThrough\" isn't a named export for node <10\nconst PassThrough = Stream.PassThrough;\n\n/**\n * Body mixin\n *\n * Ref: https://fetch.spec.whatwg.org/#body\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nfunction Body(body) {\n\tvar _this = this;\n\n\tvar _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n\t _ref$size = _ref.size;\n\n\tlet size = _ref$size === undefined ? 0 : _ref$size;\n\tvar _ref$timeout = _ref.timeout;\n\tlet timeout = _ref$timeout === undefined ? 0 : _ref$timeout;\n\n\tif (body == null) {\n\t\t// body is undefined or null\n\t\tbody = null;\n\t} else if (isURLSearchParams(body)) {\n\t\t// body is a URLSearchParams\n\t\tbody = Buffer.from(body.toString());\n\t} else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {\n\t\t// body is ArrayBuffer\n\t\tbody = Buffer.from(body);\n\t} else if (ArrayBuffer.isView(body)) {\n\t\t// body is ArrayBufferView\n\t\tbody = Buffer.from(body.buffer, body.byteOffset, body.byteLength);\n\t} else if (body instanceof Stream) ; else {\n\t\t// none of the above\n\t\t// coerce to string then buffer\n\t\tbody = Buffer.from(String(body));\n\t}\n\tthis[INTERNALS] = {\n\t\tbody,\n\t\tdisturbed: false,\n\t\terror: null\n\t};\n\tthis.size = size;\n\tthis.timeout = timeout;\n\n\tif (body instanceof Stream) {\n\t\tbody.on('error', function (err) {\n\t\t\tconst error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);\n\t\t\t_this[INTERNALS].error = error;\n\t\t});\n\t}\n}\n\nBody.prototype = {\n\tget body() {\n\t\treturn this[INTERNALS].body;\n\t},\n\n\tget bodyUsed() {\n\t\treturn this[INTERNALS].disturbed;\n\t},\n\n\t/**\n * Decode response as ArrayBuffer\n *\n * @return Promise\n */\n\tarrayBuffer() {\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\t});\n\t},\n\n\t/**\n * Return raw response as Blob\n *\n * @return Promise\n */\n\tblob() {\n\t\tlet ct = this.headers && this.headers.get('content-type') || '';\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn Object.assign(\n\t\t\t// Prevent copying\n\t\t\tnew Blob([], {\n\t\t\t\ttype: ct.toLowerCase()\n\t\t\t}), {\n\t\t\t\t[BUFFER]: buf\n\t\t\t});\n\t\t});\n\t},\n\n\t/**\n * Decode response as json\n *\n * @return Promise\n */\n\tjson() {\n\t\tvar _this2 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(buffer.toString());\n\t\t\t} catch (err) {\n\t\t\t\treturn Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));\n\t\t\t}\n\t\t});\n\t},\n\n\t/**\n * Decode response as text\n *\n * @return Promise\n */\n\ttext() {\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn buffer.toString();\n\t\t});\n\t},\n\n\t/**\n * Decode response as buffer (non-spec api)\n *\n * @return Promise\n */\n\tbuffer() {\n\t\treturn consumeBody.call(this);\n\t},\n\n\t/**\n * Decode response as text, while automatically detecting the encoding and\n * trying to decode to UTF-8 (non-spec api)\n *\n * @return Promise\n */\n\ttextConverted() {\n\t\tvar _this3 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn convertBody(buffer, _this3.headers);\n\t\t});\n\t}\n};\n\n// In browsers, all properties are enumerable.\nObject.defineProperties(Body.prototype, {\n\tbody: { enumerable: true },\n\tbodyUsed: { enumerable: true },\n\tarrayBuffer: { enumerable: true },\n\tblob: { enumerable: true },\n\tjson: { enumerable: true },\n\ttext: { enumerable: true }\n});\n\nBody.mixIn = function (proto) {\n\tfor (const name of Object.getOwnPropertyNames(Body.prototype)) {\n\t\t// istanbul ignore else: future proof\n\t\tif (!(name in proto)) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor(Body.prototype, name);\n\t\t\tObject.defineProperty(proto, name, desc);\n\t\t}\n\t}\n};\n\n/**\n * Consume and convert an entire Body to a Buffer.\n *\n * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body\n *\n * @return Promise\n */\nfunction consumeBody() {\n\tvar _this4 = this;\n\n\tif (this[INTERNALS].disturbed) {\n\t\treturn Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));\n\t}\n\n\tthis[INTERNALS].disturbed = true;\n\n\tif (this[INTERNALS].error) {\n\t\treturn Body.Promise.reject(this[INTERNALS].error);\n\t}\n\n\tlet body = this.body;\n\n\t// body is null\n\tif (body === null) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is blob\n\tif (isBlob(body)) {\n\t\tbody = body.stream();\n\t}\n\n\t// body is buffer\n\tif (Buffer.isBuffer(body)) {\n\t\treturn Body.Promise.resolve(body);\n\t}\n\n\t// istanbul ignore if: should never happen\n\tif (!(body instanceof Stream)) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is stream\n\t// get ready to actually consume the body\n\tlet accum = [];\n\tlet accumBytes = 0;\n\tlet abort = false;\n\n\treturn new Body.Promise(function (resolve, reject) {\n\t\tlet resTimeout;\n\n\t\t// allow timeout on slow response body\n\t\tif (_this4.timeout) {\n\t\t\tresTimeout = setTimeout(function () {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));\n\t\t\t}, _this4.timeout);\n\t\t}\n\n\t\t// handle stream errors\n\t\tbody.on('error', function (err) {\n\t\t\tif (err.name === 'AbortError') {\n\t\t\t\t// if the request was aborted, reject with this Error\n\t\t\t\tabort = true;\n\t\t\t\treject(err);\n\t\t\t} else {\n\t\t\t\t// other errors, such as incorrect content-encoding\n\t\t\t\treject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\n\t\tbody.on('data', function (chunk) {\n\t\t\tif (abort || chunk === null) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (_this4.size && accumBytes + chunk.length > _this4.size) {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\taccumBytes += chunk.length;\n\t\t\taccum.push(chunk);\n\t\t});\n\n\t\tbody.on('end', function () {\n\t\t\tif (abort) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tclearTimeout(resTimeout);\n\n\t\t\ttry {\n\t\t\t\tresolve(Buffer.concat(accum, accumBytes));\n\t\t\t} catch (err) {\n\t\t\t\t// handle streams that have accumulated too much data (issue #414)\n\t\t\t\treject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Detect buffer encoding and convert to target encoding\n * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding\n *\n * @param Buffer buffer Incoming buffer\n * @param String encoding Target encoding\n * @return String\n */\nfunction convertBody(buffer, headers) {\n\tif (typeof convert !== 'function') {\n\t\tthrow new Error('The package `encoding` must be installed to use the textConverted() function');\n\t}\n\n\tconst ct = headers.get('content-type');\n\tlet charset = 'utf-8';\n\tlet res, str;\n\n\t// header\n\tif (ct) {\n\t\tres = /charset=([^;]*)/i.exec(ct);\n\t}\n\n\t// no charset in content type, peek at response body for at most 1024 bytes\n\tstr = buffer.slice(0, 1024).toString();\n\n\t// html5\n\tif (!res && str) {\n\t\tres = / 0 && arguments[0] !== undefined ? arguments[0] : undefined;\n\n\t\tthis[MAP] = Object.create(null);\n\n\t\tif (init instanceof Headers) {\n\t\t\tconst rawHeaders = init.raw();\n\t\t\tconst headerNames = Object.keys(rawHeaders);\n\n\t\t\tfor (const headerName of headerNames) {\n\t\t\t\tfor (const value of rawHeaders[headerName]) {\n\t\t\t\t\tthis.append(headerName, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't worry about converting prop to ByteString here as append()\n\t\t// will handle it.\n\t\tif (init == null) ; else if (typeof init === 'object') {\n\t\t\tconst method = init[Symbol.iterator];\n\t\t\tif (method != null) {\n\t\t\t\tif (typeof method !== 'function') {\n\t\t\t\t\tthrow new TypeError('Header pairs must be iterable');\n\t\t\t\t}\n\n\t\t\t\t// sequence>\n\t\t\t\t// Note: per spec we have to first exhaust the lists then process them\n\t\t\t\tconst pairs = [];\n\t\t\t\tfor (const pair of init) {\n\t\t\t\t\tif (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be iterable');\n\t\t\t\t\t}\n\t\t\t\t\tpairs.push(Array.from(pair));\n\t\t\t\t}\n\n\t\t\t\tfor (const pair of pairs) {\n\t\t\t\t\tif (pair.length !== 2) {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be a name/value tuple');\n\t\t\t\t\t}\n\t\t\t\t\tthis.append(pair[0], pair[1]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// record\n\t\t\t\tfor (const key of Object.keys(init)) {\n\t\t\t\t\tconst value = init[key];\n\t\t\t\t\tthis.append(key, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new TypeError('Provided initializer must be an object');\n\t\t}\n\t}\n\n\t/**\n * Return combined header value given name\n *\n * @param String name Header name\n * @return Mixed\n */\n\tget(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this[MAP][key].join(', ');\n\t}\n\n\t/**\n * Iterate over all headers\n *\n * @param Function callback Executed for each item with parameters (value, name, thisArg)\n * @param Boolean thisArg `this` context for callback function\n * @return Void\n */\n\tforEach(callback) {\n\t\tlet thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n\n\t\tlet pairs = getHeaders(this);\n\t\tlet i = 0;\n\t\twhile (i < pairs.length) {\n\t\t\tvar _pairs$i = pairs[i];\n\t\t\tconst name = _pairs$i[0],\n\t\t\t value = _pairs$i[1];\n\n\t\t\tcallback.call(thisArg, value, name, this);\n\t\t\tpairs = getHeaders(this);\n\t\t\ti++;\n\t\t}\n\t}\n\n\t/**\n * Overwrite header values given name\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tset(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tthis[MAP][key !== undefined ? key : name] = [value];\n\t}\n\n\t/**\n * Append a value onto existing header\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tappend(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tthis[MAP][key].push(value);\n\t\t} else {\n\t\t\tthis[MAP][name] = [value];\n\t\t}\n\t}\n\n\t/**\n * Check for header name existence\n *\n * @param String name Header name\n * @return Boolean\n */\n\thas(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\treturn find(this[MAP], name) !== undefined;\n\t}\n\n\t/**\n * Delete all header values given name\n *\n * @param String name Header name\n * @return Void\n */\n\tdelete(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tdelete this[MAP][key];\n\t\t}\n\t}\n\n\t/**\n * Return raw headers (non-spec api)\n *\n * @return Object\n */\n\traw() {\n\t\treturn this[MAP];\n\t}\n\n\t/**\n * Get an iterator on keys.\n *\n * @return Iterator\n */\n\tkeys() {\n\t\treturn createHeadersIterator(this, 'key');\n\t}\n\n\t/**\n * Get an iterator on values.\n *\n * @return Iterator\n */\n\tvalues() {\n\t\treturn createHeadersIterator(this, 'value');\n\t}\n\n\t/**\n * Get an iterator on entries.\n *\n * This is the default iterator of the Headers object.\n *\n * @return Iterator\n */\n\t[Symbol.iterator]() {\n\t\treturn createHeadersIterator(this, 'key+value');\n\t}\n}\nHeaders.prototype.entries = Headers.prototype[Symbol.iterator];\n\nObject.defineProperty(Headers.prototype, Symbol.toStringTag, {\n\tvalue: 'Headers',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Headers.prototype, {\n\tget: { enumerable: true },\n\tforEach: { enumerable: true },\n\tset: { enumerable: true },\n\tappend: { enumerable: true },\n\thas: { enumerable: true },\n\tdelete: { enumerable: true },\n\tkeys: { enumerable: true },\n\tvalues: { enumerable: true },\n\tentries: { enumerable: true }\n});\n\nfunction getHeaders(headers) {\n\tlet kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';\n\n\tconst keys = Object.keys(headers[MAP]).sort();\n\treturn keys.map(kind === 'key' ? function (k) {\n\t\treturn k.toLowerCase();\n\t} : kind === 'value' ? function (k) {\n\t\treturn headers[MAP][k].join(', ');\n\t} : function (k) {\n\t\treturn [k.toLowerCase(), headers[MAP][k].join(', ')];\n\t});\n}\n\nconst INTERNAL = Symbol('internal');\n\nfunction createHeadersIterator(target, kind) {\n\tconst iterator = Object.create(HeadersIteratorPrototype);\n\titerator[INTERNAL] = {\n\t\ttarget,\n\t\tkind,\n\t\tindex: 0\n\t};\n\treturn iterator;\n}\n\nconst HeadersIteratorPrototype = Object.setPrototypeOf({\n\tnext() {\n\t\t// istanbul ignore if\n\t\tif (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {\n\t\t\tthrow new TypeError('Value of `this` is not a HeadersIterator');\n\t\t}\n\n\t\tvar _INTERNAL = this[INTERNAL];\n\t\tconst target = _INTERNAL.target,\n\t\t kind = _INTERNAL.kind,\n\t\t index = _INTERNAL.index;\n\n\t\tconst values = getHeaders(target, kind);\n\t\tconst len = values.length;\n\t\tif (index >= len) {\n\t\t\treturn {\n\t\t\t\tvalue: undefined,\n\t\t\t\tdone: true\n\t\t\t};\n\t\t}\n\n\t\tthis[INTERNAL].index = index + 1;\n\n\t\treturn {\n\t\t\tvalue: values[index],\n\t\t\tdone: false\n\t\t};\n\t}\n}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));\n\nObject.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {\n\tvalue: 'HeadersIterator',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * Export the Headers object in a form that Node.js can consume.\n *\n * @param Headers headers\n * @return Object\n */\nfunction exportNodeCompatibleHeaders(headers) {\n\tconst obj = Object.assign({ __proto__: null }, headers[MAP]);\n\n\t// http.request() only supports string as Host header. This hack makes\n\t// specifying custom Host header possible.\n\tconst hostHeaderKey = find(headers[MAP], 'Host');\n\tif (hostHeaderKey !== undefined) {\n\t\tobj[hostHeaderKey] = obj[hostHeaderKey][0];\n\t}\n\n\treturn obj;\n}\n\n/**\n * Create a Headers object from an object of headers, ignoring those that do\n * not conform to HTTP grammar productions.\n *\n * @param Object obj Object of headers\n * @return Headers\n */\nfunction createHeadersLenient(obj) {\n\tconst headers = new Headers();\n\tfor (const name of Object.keys(obj)) {\n\t\tif (invalidTokenRegex.test(name)) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (Array.isArray(obj[name])) {\n\t\t\tfor (const val of obj[name]) {\n\t\t\t\tif (invalidHeaderCharRegex.test(val)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (headers[MAP][name] === undefined) {\n\t\t\t\t\theaders[MAP][name] = [val];\n\t\t\t\t} else {\n\t\t\t\t\theaders[MAP][name].push(val);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (!invalidHeaderCharRegex.test(obj[name])) {\n\t\t\theaders[MAP][name] = [obj[name]];\n\t\t}\n\t}\n\treturn headers;\n}\n\nconst INTERNALS$1 = Symbol('Response internals');\n\n// fix an issue where \"STATUS_CODES\" aren't a named export for node <10\nconst STATUS_CODES = http.STATUS_CODES;\n\n/**\n * Response class\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nclass Response {\n\tconstructor() {\n\t\tlet body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\t\tlet opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tBody.call(this, body, opts);\n\n\t\tconst status = opts.status || 200;\n\t\tconst headers = new Headers(opts.headers);\n\n\t\tif (body != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(body);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tthis[INTERNALS$1] = {\n\t\t\turl: opts.url,\n\t\t\tstatus,\n\t\t\tstatusText: opts.statusText || STATUS_CODES[status],\n\t\t\theaders,\n\t\t\tcounter: opts.counter\n\t\t};\n\t}\n\n\tget url() {\n\t\treturn this[INTERNALS$1].url || '';\n\t}\n\n\tget status() {\n\t\treturn this[INTERNALS$1].status;\n\t}\n\n\t/**\n * Convenience property representing if the request ended normally\n */\n\tget ok() {\n\t\treturn this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;\n\t}\n\n\tget redirected() {\n\t\treturn this[INTERNALS$1].counter > 0;\n\t}\n\n\tget statusText() {\n\t\treturn this[INTERNALS$1].statusText;\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$1].headers;\n\t}\n\n\t/**\n * Clone this response\n *\n * @return Response\n */\n\tclone() {\n\t\treturn new Response(clone(this), {\n\t\t\turl: this.url,\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\theaders: this.headers,\n\t\t\tok: this.ok,\n\t\t\tredirected: this.redirected\n\t\t});\n\t}\n}\n\nBody.mixIn(Response.prototype);\n\nObject.defineProperties(Response.prototype, {\n\turl: { enumerable: true },\n\tstatus: { enumerable: true },\n\tok: { enumerable: true },\n\tredirected: { enumerable: true },\n\tstatusText: { enumerable: true },\n\theaders: { enumerable: true },\n\tclone: { enumerable: true }\n});\n\nObject.defineProperty(Response.prototype, Symbol.toStringTag, {\n\tvalue: 'Response',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nconst INTERNALS$2 = Symbol('Request internals');\nconst URL = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"format\", \"parse\" aren't a named export for node <10\nconst parse_url = Url.parse;\nconst format_url = Url.format;\n\n/**\n * Wrapper around `new URL` to handle arbitrary URLs\n *\n * @param {string} urlStr\n * @return {void}\n */\nfunction parseURL(urlStr) {\n\t/*\n \tCheck whether the URL is absolute or not\n \t\tScheme: https://tools.ietf.org/html/rfc3986#section-3.1\n \tAbsolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\n */\n\tif (/^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.exec(urlStr)) {\n\t\turlStr = new URL(urlStr).toString();\n\t}\n\n\t// Fallback to old implementation for arbitrary URLs\n\treturn parse_url(urlStr);\n}\n\nconst streamDestructionSupported = 'destroy' in Stream.Readable.prototype;\n\n/**\n * Check if a value is an instance of Request.\n *\n * @param Mixed input\n * @return Boolean\n */\nfunction isRequest(input) {\n\treturn typeof input === 'object' && typeof input[INTERNALS$2] === 'object';\n}\n\nfunction isAbortSignal(signal) {\n\tconst proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);\n\treturn !!(proto && proto.constructor.name === 'AbortSignal');\n}\n\n/**\n * Request class\n *\n * @param Mixed input Url or Request instance\n * @param Object init Custom options\n * @return Void\n */\nclass Request {\n\tconstructor(input) {\n\t\tlet init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tlet parsedURL;\n\n\t\t// normalize input\n\t\tif (!isRequest(input)) {\n\t\t\tif (input && input.href) {\n\t\t\t\t// in order to support Node.js' Url objects; though WHATWG's URL objects\n\t\t\t\t// will fall into this branch also (since their `toString()` will return\n\t\t\t\t// `href` property anyway)\n\t\t\t\tparsedURL = parseURL(input.href);\n\t\t\t} else {\n\t\t\t\t// coerce input to a string before attempting to parse\n\t\t\t\tparsedURL = parseURL(`${input}`);\n\t\t\t}\n\t\t\tinput = {};\n\t\t} else {\n\t\t\tparsedURL = parseURL(input.url);\n\t\t}\n\n\t\tlet method = init.method || input.method || 'GET';\n\t\tmethod = method.toUpperCase();\n\n\t\tif ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {\n\t\t\tthrow new TypeError('Request with GET/HEAD method cannot have body');\n\t\t}\n\n\t\tlet inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;\n\n\t\tBody.call(this, inputBody, {\n\t\t\ttimeout: init.timeout || input.timeout || 0,\n\t\t\tsize: init.size || input.size || 0\n\t\t});\n\n\t\tconst headers = new Headers(init.headers || input.headers || {});\n\n\t\tif (inputBody != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(inputBody);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tlet signal = isRequest(input) ? input.signal : null;\n\t\tif ('signal' in init) signal = init.signal;\n\n\t\tif (signal != null && !isAbortSignal(signal)) {\n\t\t\tthrow new TypeError('Expected signal to be an instanceof AbortSignal');\n\t\t}\n\n\t\tthis[INTERNALS$2] = {\n\t\t\tmethod,\n\t\t\tredirect: init.redirect || input.redirect || 'follow',\n\t\t\theaders,\n\t\t\tparsedURL,\n\t\t\tsignal\n\t\t};\n\n\t\t// node-fetch-only options\n\t\tthis.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;\n\t\tthis.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;\n\t\tthis.counter = init.counter || input.counter || 0;\n\t\tthis.agent = init.agent || input.agent;\n\t}\n\n\tget method() {\n\t\treturn this[INTERNALS$2].method;\n\t}\n\n\tget url() {\n\t\treturn format_url(this[INTERNALS$2].parsedURL);\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$2].headers;\n\t}\n\n\tget redirect() {\n\t\treturn this[INTERNALS$2].redirect;\n\t}\n\n\tget signal() {\n\t\treturn this[INTERNALS$2].signal;\n\t}\n\n\t/**\n * Clone this request\n *\n * @return Request\n */\n\tclone() {\n\t\treturn new Request(this);\n\t}\n}\n\nBody.mixIn(Request.prototype);\n\nObject.defineProperty(Request.prototype, Symbol.toStringTag, {\n\tvalue: 'Request',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Request.prototype, {\n\tmethod: { enumerable: true },\n\turl: { enumerable: true },\n\theaders: { enumerable: true },\n\tredirect: { enumerable: true },\n\tclone: { enumerable: true },\n\tsignal: { enumerable: true }\n});\n\n/**\n * Convert a Request to Node.js http request options.\n *\n * @param Request A Request instance\n * @return Object The options object to be passed to http.request\n */\nfunction getNodeRequestOptions(request) {\n\tconst parsedURL = request[INTERNALS$2].parsedURL;\n\tconst headers = new Headers(request[INTERNALS$2].headers);\n\n\t// fetch step 1.3\n\tif (!headers.has('Accept')) {\n\t\theaders.set('Accept', '*/*');\n\t}\n\n\t// Basic fetch\n\tif (!parsedURL.protocol || !parsedURL.hostname) {\n\t\tthrow new TypeError('Only absolute URLs are supported');\n\t}\n\n\tif (!/^https?:$/.test(parsedURL.protocol)) {\n\t\tthrow new TypeError('Only HTTP(S) protocols are supported');\n\t}\n\n\tif (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {\n\t\tthrow new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');\n\t}\n\n\t// HTTP-network-or-cache fetch steps 2.4-2.7\n\tlet contentLengthValue = null;\n\tif (request.body == null && /^(POST|PUT)$/i.test(request.method)) {\n\t\tcontentLengthValue = '0';\n\t}\n\tif (request.body != null) {\n\t\tconst totalBytes = getTotalBytes(request);\n\t\tif (typeof totalBytes === 'number') {\n\t\t\tcontentLengthValue = String(totalBytes);\n\t\t}\n\t}\n\tif (contentLengthValue) {\n\t\theaders.set('Content-Length', contentLengthValue);\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.11\n\tif (!headers.has('User-Agent')) {\n\t\theaders.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.15\n\tif (request.compress && !headers.has('Accept-Encoding')) {\n\t\theaders.set('Accept-Encoding', 'gzip,deflate');\n\t}\n\n\tlet agent = request.agent;\n\tif (typeof agent === 'function') {\n\t\tagent = agent(parsedURL);\n\t}\n\n\tif (!headers.has('Connection') && !agent) {\n\t\theaders.set('Connection', 'close');\n\t}\n\n\t// HTTP-network fetch step 4.2\n\t// chunked encoding is handled by Node.js\n\n\treturn Object.assign({}, parsedURL, {\n\t\tmethod: request.method,\n\t\theaders: exportNodeCompatibleHeaders(headers),\n\t\tagent\n\t});\n}\n\n/**\n * abort-error.js\n *\n * AbortError interface for cancelled requests\n */\n\n/**\n * Create AbortError instance\n *\n * @param String message Error message for human\n * @return AbortError\n */\nfunction AbortError(message) {\n Error.call(this, message);\n\n this.type = 'aborted';\n this.message = message;\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nAbortError.prototype = Object.create(Error.prototype);\nAbortError.prototype.constructor = AbortError;\nAbortError.prototype.name = 'AbortError';\n\nconst URL$1 = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"PassThrough\", \"resolve\" aren't a named export for node <10\nconst PassThrough$1 = Stream.PassThrough;\n\nconst isDomainOrSubdomain = function isDomainOrSubdomain(destination, original) {\n\tconst orig = new URL$1(original).hostname;\n\tconst dest = new URL$1(destination).hostname;\n\n\treturn orig === dest || orig[orig.length - dest.length - 1] === '.' && orig.endsWith(dest);\n};\n\n/**\n * Fetch function\n *\n * @param Mixed url Absolute url or Request instance\n * @param Object opts Fetch options\n * @return Promise\n */\nfunction fetch(url, opts) {\n\n\t// allow custom promise\n\tif (!fetch.Promise) {\n\t\tthrow new Error('native promise missing, set fetch.Promise to your favorite alternative');\n\t}\n\n\tBody.Promise = fetch.Promise;\n\n\t// wrap http.request into fetch\n\treturn new fetch.Promise(function (resolve, reject) {\n\t\t// build request object\n\t\tconst request = new Request(url, opts);\n\t\tconst options = getNodeRequestOptions(request);\n\n\t\tconst send = (options.protocol === 'https:' ? https : http).request;\n\t\tconst signal = request.signal;\n\n\t\tlet response = null;\n\n\t\tconst abort = function abort() {\n\t\t\tlet error = new AbortError('The user aborted a request.');\n\t\t\treject(error);\n\t\t\tif (request.body && request.body instanceof Stream.Readable) {\n\t\t\t\trequest.body.destroy(error);\n\t\t\t}\n\t\t\tif (!response || !response.body) return;\n\t\t\tresponse.body.emit('error', error);\n\t\t};\n\n\t\tif (signal && signal.aborted) {\n\t\t\tabort();\n\t\t\treturn;\n\t\t}\n\n\t\tconst abortAndFinalize = function abortAndFinalize() {\n\t\t\tabort();\n\t\t\tfinalize();\n\t\t};\n\n\t\t// send request\n\t\tconst req = send(options);\n\t\tlet reqTimeout;\n\n\t\tif (signal) {\n\t\t\tsignal.addEventListener('abort', abortAndFinalize);\n\t\t}\n\n\t\tfunction finalize() {\n\t\t\treq.abort();\n\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\tclearTimeout(reqTimeout);\n\t\t}\n\n\t\tif (request.timeout) {\n\t\t\treq.once('socket', function (socket) {\n\t\t\t\treqTimeout = setTimeout(function () {\n\t\t\t\t\treject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));\n\t\t\t\t\tfinalize();\n\t\t\t\t}, request.timeout);\n\t\t\t});\n\t\t}\n\n\t\treq.on('error', function (err) {\n\t\t\treject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));\n\t\t\tfinalize();\n\t\t});\n\n\t\treq.on('response', function (res) {\n\t\t\tclearTimeout(reqTimeout);\n\n\t\t\tconst headers = createHeadersLenient(res.headers);\n\n\t\t\t// HTTP fetch step 5\n\t\t\tif (fetch.isRedirect(res.statusCode)) {\n\t\t\t\t// HTTP fetch step 5.2\n\t\t\t\tconst location = headers.get('Location');\n\n\t\t\t\t// HTTP fetch step 5.3\n\t\t\t\tlet locationURL = null;\n\t\t\t\ttry {\n\t\t\t\t\tlocationURL = location === null ? null : new URL$1(location, request.url).toString();\n\t\t\t\t} catch (err) {\n\t\t\t\t\t// error here can only be invalid URL in Location: header\n\t\t\t\t\t// do not throw when options.redirect == manual\n\t\t\t\t\t// let the user extract the errorneous redirect URL\n\t\t\t\t\tif (request.redirect !== 'manual') {\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, 'invalid-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// HTTP fetch step 5.5\n\t\t\t\tswitch (request.redirect) {\n\t\t\t\t\tcase 'error':\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\tcase 'manual':\n\t\t\t\t\t\t// node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.\n\t\t\t\t\t\tif (locationURL !== null) {\n\t\t\t\t\t\t\t// handle corrupted header\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\theaders.set('Location', locationURL);\n\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t// istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request\n\t\t\t\t\t\t\t\treject(err);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'follow':\n\t\t\t\t\t\t// HTTP-redirect fetch step 2\n\t\t\t\t\t\tif (locationURL === null) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 5\n\t\t\t\t\t\tif (request.counter >= request.follow) {\n\t\t\t\t\t\t\treject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 6 (counter increment)\n\t\t\t\t\t\t// Create a new Request object.\n\t\t\t\t\t\tconst requestOpts = {\n\t\t\t\t\t\t\theaders: new Headers(request.headers),\n\t\t\t\t\t\t\tfollow: request.follow,\n\t\t\t\t\t\t\tcounter: request.counter + 1,\n\t\t\t\t\t\t\tagent: request.agent,\n\t\t\t\t\t\t\tcompress: request.compress,\n\t\t\t\t\t\t\tmethod: request.method,\n\t\t\t\t\t\t\tbody: request.body,\n\t\t\t\t\t\t\tsignal: request.signal,\n\t\t\t\t\t\t\ttimeout: request.timeout,\n\t\t\t\t\t\t\tsize: request.size\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (!isDomainOrSubdomain(request.url, locationURL)) {\n\t\t\t\t\t\t\tfor (const name of ['authorization', 'www-authenticate', 'cookie', 'cookie2']) {\n\t\t\t\t\t\t\t\trequestOpts.headers.delete(name);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 9\n\t\t\t\t\t\tif (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {\n\t\t\t\t\t\t\treject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 11\n\t\t\t\t\t\tif (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {\n\t\t\t\t\t\t\trequestOpts.method = 'GET';\n\t\t\t\t\t\t\trequestOpts.body = undefined;\n\t\t\t\t\t\t\trequestOpts.headers.delete('content-length');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 15\n\t\t\t\t\t\tresolve(fetch(new Request(locationURL, requestOpts)));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// prepare response\n\t\t\tres.once('end', function () {\n\t\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\t});\n\t\t\tlet body = res.pipe(new PassThrough$1());\n\n\t\t\tconst response_options = {\n\t\t\t\turl: request.url,\n\t\t\t\tstatus: res.statusCode,\n\t\t\t\tstatusText: res.statusMessage,\n\t\t\t\theaders: headers,\n\t\t\t\tsize: request.size,\n\t\t\t\ttimeout: request.timeout,\n\t\t\t\tcounter: request.counter\n\t\t\t};\n\n\t\t\t// HTTP-network fetch step 12.1.1.3\n\t\t\tconst codings = headers.get('Content-Encoding');\n\n\t\t\t// HTTP-network fetch step 12.1.1.4: handle content codings\n\n\t\t\t// in following scenarios we ignore compression support\n\t\t\t// 1. compression support is disabled\n\t\t\t// 2. HEAD request\n\t\t\t// 3. no Content-Encoding header\n\t\t\t// 4. no content response (204)\n\t\t\t// 5. content not modified response (304)\n\t\t\tif (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// For Node v6+\n\t\t\t// Be less strict when decoding compressed responses, since sometimes\n\t\t\t// servers send slightly invalid responses that are still accepted\n\t\t\t// by common browsers.\n\t\t\t// Always using Z_SYNC_FLUSH is what cURL does.\n\t\t\tconst zlibOptions = {\n\t\t\t\tflush: zlib.Z_SYNC_FLUSH,\n\t\t\t\tfinishFlush: zlib.Z_SYNC_FLUSH\n\t\t\t};\n\n\t\t\t// for gzip\n\t\t\tif (codings == 'gzip' || codings == 'x-gzip') {\n\t\t\t\tbody = body.pipe(zlib.createGunzip(zlibOptions));\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for deflate\n\t\t\tif (codings == 'deflate' || codings == 'x-deflate') {\n\t\t\t\t// handle the infamous raw deflate response from old servers\n\t\t\t\t// a hack for old IIS and Apache servers\n\t\t\t\tconst raw = res.pipe(new PassThrough$1());\n\t\t\t\traw.once('data', function (chunk) {\n\t\t\t\t\t// see http://stackoverflow.com/questions/37519828\n\t\t\t\t\tif ((chunk[0] & 0x0F) === 0x08) {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflate());\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflateRaw());\n\t\t\t\t\t}\n\t\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\t\tresolve(response);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for br\n\t\t\tif (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {\n\t\t\t\tbody = body.pipe(zlib.createBrotliDecompress());\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// otherwise, use response as-is\n\t\t\tresponse = new Response(body, response_options);\n\t\t\tresolve(response);\n\t\t});\n\n\t\twriteToStream(req, request);\n\t});\n}\n/**\n * Redirect code matching\n *\n * @param Number code Status code\n * @return Boolean\n */\nfetch.isRedirect = function (code) {\n\treturn code === 301 || code === 302 || code === 303 || code === 307 || code === 308;\n};\n\n// expose Promise\nfetch.Promise = global.Promise;\n\nexport default fetch;\nexport { Headers, Request, Response, FetchError };\n","\"use strict\";\n\nexports.URL = require(\"./URL\").interface;\nexports.serializeURL = require(\"./url-state-machine\").serializeURL;\nexports.serializeURLOrigin = require(\"./url-state-machine\").serializeURLOrigin;\nexports.basicURLParse = require(\"./url-state-machine\").basicURLParse;\nexports.setTheUsername = require(\"./url-state-machine\").setTheUsername;\nexports.setThePassword = require(\"./url-state-machine\").setThePassword;\nexports.serializeHost = require(\"./url-state-machine\").serializeHost;\nexports.serializeInteger = require(\"./url-state-machine\").serializeInteger;\nexports.parseURL = require(\"./url-state-machine\").parseURL;\n","\"use strict\";\n\nconst conversions = require(\"webidl-conversions\");\nconst utils = require(\"./utils.js\");\nconst Impl = require(\".//URL-impl.js\");\n\nconst impl = utils.implSymbol;\n\nfunction URL(url) {\n if (!this || this[impl] || !(this instanceof URL)) {\n throw new TypeError(\"Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.\");\n }\n if (arguments.length < 1) {\n throw new TypeError(\"Failed to construct 'URL': 1 argument required, but only \" + arguments.length + \" present.\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 2; ++i) {\n args[i] = arguments[i];\n }\n args[0] = conversions[\"USVString\"](args[0]);\n if (args[1] !== undefined) {\n args[1] = conversions[\"USVString\"](args[1]);\n }\n\n module.exports.setup(this, args);\n}\n\nURL.prototype.toJSON = function toJSON() {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 0; ++i) {\n args[i] = arguments[i];\n }\n return this[impl].toJSON.apply(this[impl], args);\n};\nObject.defineProperty(URL.prototype, \"href\", {\n get() {\n return this[impl].href;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].href = V;\n },\n enumerable: true,\n configurable: true\n});\n\nURL.prototype.toString = function () {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n return this.href;\n};\n\nObject.defineProperty(URL.prototype, \"origin\", {\n get() {\n return this[impl].origin;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"protocol\", {\n get() {\n return this[impl].protocol;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].protocol = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"username\", {\n get() {\n return this[impl].username;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].username = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"password\", {\n get() {\n return this[impl].password;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].password = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"host\", {\n get() {\n return this[impl].host;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].host = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hostname\", {\n get() {\n return this[impl].hostname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hostname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"port\", {\n get() {\n return this[impl].port;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].port = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"pathname\", {\n get() {\n return this[impl].pathname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].pathname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"search\", {\n get() {\n return this[impl].search;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].search = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hash\", {\n get() {\n return this[impl].hash;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hash = V;\n },\n enumerable: true,\n configurable: true\n});\n\n\nmodule.exports = {\n is(obj) {\n return !!obj && obj[impl] instanceof Impl.implementation;\n },\n create(constructorArgs, privateData) {\n let obj = Object.create(URL.prototype);\n this.setup(obj, constructorArgs, privateData);\n return obj;\n },\n setup(obj, constructorArgs, privateData) {\n if (!privateData) privateData = {};\n privateData.wrapper = obj;\n\n obj[impl] = new Impl.implementation(constructorArgs, privateData);\n obj[impl][utils.wrapperSymbol] = obj;\n },\n interface: URL,\n expose: {\n Window: { URL: URL },\n Worker: { URL: URL }\n }\n};\n\n","\"use strict\";\n\nvar conversions = {};\nmodule.exports = conversions;\n\nfunction sign(x) {\n return x < 0 ? -1 : 1;\n}\n\nfunction evenRound(x) {\n // Round x to the nearest integer, choosing the even integer if it lies halfway between two.\n if ((x % 1) === 0.5 && (x & 1) === 0) { // [even number].5; round down (i.e. floor)\n return Math.floor(x);\n } else {\n return Math.round(x);\n }\n}\n\nfunction createNumberConversion(bitLength, typeOpts) {\n if (!typeOpts.unsigned) {\n --bitLength;\n }\n const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);\n const upperBound = Math.pow(2, bitLength) - 1;\n\n const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);\n const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);\n\n return function(V, opts) {\n if (!opts) opts = {};\n\n let x = +V;\n\n if (opts.enforceRange) {\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite number\");\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n if (x < lowerBound || x > upperBound) {\n throw new TypeError(\"Argument is not in byte range\");\n }\n\n return x;\n }\n\n if (!isNaN(x) && opts.clamp) {\n x = evenRound(x);\n\n if (x < lowerBound) x = lowerBound;\n if (x > upperBound) x = upperBound;\n return x;\n }\n\n if (!Number.isFinite(x) || x === 0) {\n return 0;\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n x = x % moduloVal;\n\n if (!typeOpts.unsigned && x >= moduloBound) {\n return x - moduloVal;\n } else if (typeOpts.unsigned) {\n if (x < 0) {\n x += moduloVal;\n } else if (x === -0) { // don't return negative zero\n return 0;\n }\n }\n\n return x;\n }\n}\n\nconversions[\"void\"] = function () {\n return undefined;\n};\n\nconversions[\"boolean\"] = function (val) {\n return !!val;\n};\n\nconversions[\"byte\"] = createNumberConversion(8, { unsigned: false });\nconversions[\"octet\"] = createNumberConversion(8, { unsigned: true });\n\nconversions[\"short\"] = createNumberConversion(16, { unsigned: false });\nconversions[\"unsigned short\"] = createNumberConversion(16, { unsigned: true });\n\nconversions[\"long\"] = createNumberConversion(32, { unsigned: false });\nconversions[\"unsigned long\"] = createNumberConversion(32, { unsigned: true });\n\nconversions[\"long long\"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });\nconversions[\"unsigned long long\"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });\n\nconversions[\"double\"] = function (V) {\n const x = +V;\n\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite floating-point value\");\n }\n\n return x;\n};\n\nconversions[\"unrestricted double\"] = function (V) {\n const x = +V;\n\n if (isNaN(x)) {\n throw new TypeError(\"Argument is NaN\");\n }\n\n return x;\n};\n\n// not quite valid, but good enough for JS\nconversions[\"float\"] = conversions[\"double\"];\nconversions[\"unrestricted float\"] = conversions[\"unrestricted double\"];\n\nconversions[\"DOMString\"] = function (V, opts) {\n if (!opts) opts = {};\n\n if (opts.treatNullAsEmptyString && V === null) {\n return \"\";\n }\n\n return String(V);\n};\n\nconversions[\"ByteString\"] = function (V, opts) {\n const x = String(V);\n let c = undefined;\n for (let i = 0; (c = x.codePointAt(i)) !== undefined; ++i) {\n if (c > 255) {\n throw new TypeError(\"Argument is not a valid bytestring\");\n }\n }\n\n return x;\n};\n\nconversions[\"USVString\"] = function (V) {\n const S = String(V);\n const n = S.length;\n const U = [];\n for (let i = 0; i < n; ++i) {\n const c = S.charCodeAt(i);\n if (c < 0xD800 || c > 0xDFFF) {\n U.push(String.fromCodePoint(c));\n } else if (0xDC00 <= c && c <= 0xDFFF) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n if (i === n - 1) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n const d = S.charCodeAt(i + 1);\n if (0xDC00 <= d && d <= 0xDFFF) {\n const a = c & 0x3FF;\n const b = d & 0x3FF;\n U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));\n ++i;\n } else {\n U.push(String.fromCodePoint(0xFFFD));\n }\n }\n }\n }\n\n return U.join('');\n};\n\nconversions[\"Date\"] = function (V, opts) {\n if (!(V instanceof Date)) {\n throw new TypeError(\"Argument is not a Date object\");\n }\n if (isNaN(V)) {\n return undefined;\n }\n\n return V;\n};\n\nconversions[\"RegExp\"] = function (V, opts) {\n if (!(V instanceof RegExp)) {\n V = new RegExp(V);\n }\n\n return V;\n};\n","\"use strict\";\n\nmodule.exports.mixin = function mixin(target, source) {\n const keys = Object.getOwnPropertyNames(source);\n for (let i = 0; i < keys.length; ++i) {\n Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));\n }\n};\n\nmodule.exports.wrapperSymbol = Symbol(\"wrapper\");\nmodule.exports.implSymbol = Symbol(\"impl\");\n\nmodule.exports.wrapperForImpl = function (impl) {\n return impl[module.exports.wrapperSymbol];\n};\n\nmodule.exports.implForWrapper = function (wrapper) {\n return wrapper[module.exports.implSymbol];\n};\n\n","\"use strict\";\nconst usm = require(\"./url-state-machine\");\n\nexports.implementation = class URLImpl {\n constructor(constructorArgs) {\n const url = constructorArgs[0];\n const base = constructorArgs[1];\n\n let parsedBase = null;\n if (base !== undefined) {\n parsedBase = usm.basicURLParse(base);\n if (parsedBase === \"failure\") {\n throw new TypeError(\"Invalid base URL\");\n }\n }\n\n const parsedURL = usm.basicURLParse(url, { baseURL: parsedBase });\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n\n // TODO: query stuff\n }\n\n get href() {\n return usm.serializeURL(this._url);\n }\n\n set href(v) {\n const parsedURL = usm.basicURLParse(v);\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n }\n\n get origin() {\n return usm.serializeURLOrigin(this._url);\n }\n\n get protocol() {\n return this._url.scheme + \":\";\n }\n\n set protocol(v) {\n usm.basicURLParse(v + \":\", { url: this._url, stateOverride: \"scheme start\" });\n }\n\n get username() {\n return this._url.username;\n }\n\n set username(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setTheUsername(this._url, v);\n }\n\n get password() {\n return this._url.password;\n }\n\n set password(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setThePassword(this._url, v);\n }\n\n get host() {\n const url = this._url;\n\n if (url.host === null) {\n return \"\";\n }\n\n if (url.port === null) {\n return usm.serializeHost(url.host);\n }\n\n return usm.serializeHost(url.host) + \":\" + usm.serializeInteger(url.port);\n }\n\n set host(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"host\" });\n }\n\n get hostname() {\n if (this._url.host === null) {\n return \"\";\n }\n\n return usm.serializeHost(this._url.host);\n }\n\n set hostname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"hostname\" });\n }\n\n get port() {\n if (this._url.port === null) {\n return \"\";\n }\n\n return usm.serializeInteger(this._url.port);\n }\n\n set port(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n if (v === \"\") {\n this._url.port = null;\n } else {\n usm.basicURLParse(v, { url: this._url, stateOverride: \"port\" });\n }\n }\n\n get pathname() {\n if (this._url.cannotBeABaseURL) {\n return this._url.path[0];\n }\n\n if (this._url.path.length === 0) {\n return \"\";\n }\n\n return \"/\" + this._url.path.join(\"/\");\n }\n\n set pathname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n this._url.path = [];\n usm.basicURLParse(v, { url: this._url, stateOverride: \"path start\" });\n }\n\n get search() {\n if (this._url.query === null || this._url.query === \"\") {\n return \"\";\n }\n\n return \"?\" + this._url.query;\n }\n\n set search(v) {\n // TODO: query stuff\n\n const url = this._url;\n\n if (v === \"\") {\n url.query = null;\n return;\n }\n\n const input = v[0] === \"?\" ? v.substring(1) : v;\n url.query = \"\";\n usm.basicURLParse(input, { url, stateOverride: \"query\" });\n }\n\n get hash() {\n if (this._url.fragment === null || this._url.fragment === \"\") {\n return \"\";\n }\n\n return \"#\" + this._url.fragment;\n }\n\n set hash(v) {\n if (v === \"\") {\n this._url.fragment = null;\n return;\n }\n\n const input = v[0] === \"#\" ? v.substring(1) : v;\n this._url.fragment = \"\";\n usm.basicURLParse(input, { url: this._url, stateOverride: \"fragment\" });\n }\n\n toJSON() {\n return this.href;\n }\n};\n","\"use strict\";\r\nconst punycode = require(\"punycode\");\r\nconst tr46 = require(\"tr46\");\r\n\r\nconst specialSchemes = {\r\n ftp: 21,\r\n file: null,\r\n gopher: 70,\r\n http: 80,\r\n https: 443,\r\n ws: 80,\r\n wss: 443\r\n};\r\n\r\nconst failure = Symbol(\"failure\");\r\n\r\nfunction countSymbols(str) {\r\n return punycode.ucs2.decode(str).length;\r\n}\r\n\r\nfunction at(input, idx) {\r\n const c = input[idx];\r\n return isNaN(c) ? undefined : String.fromCodePoint(c);\r\n}\r\n\r\nfunction isASCIIDigit(c) {\r\n return c >= 0x30 && c <= 0x39;\r\n}\r\n\r\nfunction isASCIIAlpha(c) {\r\n return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A);\r\n}\r\n\r\nfunction isASCIIAlphanumeric(c) {\r\n return isASCIIAlpha(c) || isASCIIDigit(c);\r\n}\r\n\r\nfunction isASCIIHex(c) {\r\n return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66);\r\n}\r\n\r\nfunction isSingleDot(buffer) {\r\n return buffer === \".\" || buffer.toLowerCase() === \"%2e\";\r\n}\r\n\r\nfunction isDoubleDot(buffer) {\r\n buffer = buffer.toLowerCase();\r\n return buffer === \"..\" || buffer === \"%2e.\" || buffer === \".%2e\" || buffer === \"%2e%2e\";\r\n}\r\n\r\nfunction isWindowsDriveLetterCodePoints(cp1, cp2) {\r\n return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);\r\n}\r\n\r\nfunction isWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === \":\" || string[1] === \"|\");\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === \":\";\r\n}\r\n\r\nfunction containsForbiddenHostCodePoint(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|%|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction containsForbiddenHostCodePointExcludingPercent(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction isSpecialScheme(scheme) {\r\n return specialSchemes[scheme] !== undefined;\r\n}\r\n\r\nfunction isSpecial(url) {\r\n return isSpecialScheme(url.scheme);\r\n}\r\n\r\nfunction defaultPort(scheme) {\r\n return specialSchemes[scheme];\r\n}\r\n\r\nfunction percentEncode(c) {\r\n let hex = c.toString(16).toUpperCase();\r\n if (hex.length === 1) {\r\n hex = \"0\" + hex;\r\n }\r\n\r\n return \"%\" + hex;\r\n}\r\n\r\nfunction utf8PercentEncode(c) {\r\n const buf = new Buffer(c);\r\n\r\n let str = \"\";\r\n\r\n for (let i = 0; i < buf.length; ++i) {\r\n str += percentEncode(buf[i]);\r\n }\r\n\r\n return str;\r\n}\r\n\r\nfunction utf8PercentDecode(str) {\r\n const input = new Buffer(str);\r\n const output = [];\r\n for (let i = 0; i < input.length; ++i) {\r\n if (input[i] !== 37) {\r\n output.push(input[i]);\r\n } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {\r\n output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));\r\n i += 2;\r\n } else {\r\n output.push(input[i]);\r\n }\r\n }\r\n return new Buffer(output).toString();\r\n}\r\n\r\nfunction isC0ControlPercentEncode(c) {\r\n return c <= 0x1F || c > 0x7E;\r\n}\r\n\r\nconst extraPathPercentEncodeSet = new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);\r\nfunction isPathPercentEncode(c) {\r\n return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);\r\n}\r\n\r\nconst extraUserinfoPercentEncodeSet =\r\n new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);\r\nfunction isUserinfoPercentEncode(c) {\r\n return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);\r\n}\r\n\r\nfunction percentEncodeChar(c, encodeSetPredicate) {\r\n const cStr = String.fromCodePoint(c);\r\n\r\n if (encodeSetPredicate(c)) {\r\n return utf8PercentEncode(cStr);\r\n }\r\n\r\n return cStr;\r\n}\r\n\r\nfunction parseIPv4Number(input) {\r\n let R = 10;\r\n\r\n if (input.length >= 2 && input.charAt(0) === \"0\" && input.charAt(1).toLowerCase() === \"x\") {\r\n input = input.substring(2);\r\n R = 16;\r\n } else if (input.length >= 2 && input.charAt(0) === \"0\") {\r\n input = input.substring(1);\r\n R = 8;\r\n }\r\n\r\n if (input === \"\") {\r\n return 0;\r\n }\r\n\r\n const regex = R === 10 ? /[^0-9]/ : (R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/);\r\n if (regex.test(input)) {\r\n return failure;\r\n }\r\n\r\n return parseInt(input, R);\r\n}\r\n\r\nfunction parseIPv4(input) {\r\n const parts = input.split(\".\");\r\n if (parts[parts.length - 1] === \"\") {\r\n if (parts.length > 1) {\r\n parts.pop();\r\n }\r\n }\r\n\r\n if (parts.length > 4) {\r\n return input;\r\n }\r\n\r\n const numbers = [];\r\n for (const part of parts) {\r\n if (part === \"\") {\r\n return input;\r\n }\r\n const n = parseIPv4Number(part);\r\n if (n === failure) {\r\n return input;\r\n }\r\n\r\n numbers.push(n);\r\n }\r\n\r\n for (let i = 0; i < numbers.length - 1; ++i) {\r\n if (numbers[i] > 255) {\r\n return failure;\r\n }\r\n }\r\n if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {\r\n return failure;\r\n }\r\n\r\n let ipv4 = numbers.pop();\r\n let counter = 0;\r\n\r\n for (const n of numbers) {\r\n ipv4 += n * Math.pow(256, 3 - counter);\r\n ++counter;\r\n }\r\n\r\n return ipv4;\r\n}\r\n\r\nfunction serializeIPv4(address) {\r\n let output = \"\";\r\n let n = address;\r\n\r\n for (let i = 1; i <= 4; ++i) {\r\n output = String(n % 256) + output;\r\n if (i !== 4) {\r\n output = \".\" + output;\r\n }\r\n n = Math.floor(n / 256);\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseIPv6(input) {\r\n const address = [0, 0, 0, 0, 0, 0, 0, 0];\r\n let pieceIndex = 0;\r\n let compress = null;\r\n let pointer = 0;\r\n\r\n input = punycode.ucs2.decode(input);\r\n\r\n if (input[pointer] === 58) {\r\n if (input[pointer + 1] !== 58) {\r\n return failure;\r\n }\r\n\r\n pointer += 2;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n }\r\n\r\n while (pointer < input.length) {\r\n if (pieceIndex === 8) {\r\n return failure;\r\n }\r\n\r\n if (input[pointer] === 58) {\r\n if (compress !== null) {\r\n return failure;\r\n }\r\n ++pointer;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n continue;\r\n }\r\n\r\n let value = 0;\r\n let length = 0;\r\n\r\n while (length < 4 && isASCIIHex(input[pointer])) {\r\n value = value * 0x10 + parseInt(at(input, pointer), 16);\r\n ++pointer;\r\n ++length;\r\n }\r\n\r\n if (input[pointer] === 46) {\r\n if (length === 0) {\r\n return failure;\r\n }\r\n\r\n pointer -= length;\r\n\r\n if (pieceIndex > 6) {\r\n return failure;\r\n }\r\n\r\n let numbersSeen = 0;\r\n\r\n while (input[pointer] !== undefined) {\r\n let ipv4Piece = null;\r\n\r\n if (numbersSeen > 0) {\r\n if (input[pointer] === 46 && numbersSeen < 4) {\r\n ++pointer;\r\n } else {\r\n return failure;\r\n }\r\n }\r\n\r\n if (!isASCIIDigit(input[pointer])) {\r\n return failure;\r\n }\r\n\r\n while (isASCIIDigit(input[pointer])) {\r\n const number = parseInt(at(input, pointer));\r\n if (ipv4Piece === null) {\r\n ipv4Piece = number;\r\n } else if (ipv4Piece === 0) {\r\n return failure;\r\n } else {\r\n ipv4Piece = ipv4Piece * 10 + number;\r\n }\r\n if (ipv4Piece > 255) {\r\n return failure;\r\n }\r\n ++pointer;\r\n }\r\n\r\n address[pieceIndex] = address[pieceIndex] * 0x100 + ipv4Piece;\r\n\r\n ++numbersSeen;\r\n\r\n if (numbersSeen === 2 || numbersSeen === 4) {\r\n ++pieceIndex;\r\n }\r\n }\r\n\r\n if (numbersSeen !== 4) {\r\n return failure;\r\n }\r\n\r\n break;\r\n } else if (input[pointer] === 58) {\r\n ++pointer;\r\n if (input[pointer] === undefined) {\r\n return failure;\r\n }\r\n } else if (input[pointer] !== undefined) {\r\n return failure;\r\n }\r\n\r\n address[pieceIndex] = value;\r\n ++pieceIndex;\r\n }\r\n\r\n if (compress !== null) {\r\n let swaps = pieceIndex - compress;\r\n pieceIndex = 7;\r\n while (pieceIndex !== 0 && swaps > 0) {\r\n const temp = address[compress + swaps - 1];\r\n address[compress + swaps - 1] = address[pieceIndex];\r\n address[pieceIndex] = temp;\r\n --pieceIndex;\r\n --swaps;\r\n }\r\n } else if (compress === null && pieceIndex !== 8) {\r\n return failure;\r\n }\r\n\r\n return address;\r\n}\r\n\r\nfunction serializeIPv6(address) {\r\n let output = \"\";\r\n const seqResult = findLongestZeroSequence(address);\r\n const compress = seqResult.idx;\r\n let ignore0 = false;\r\n\r\n for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {\r\n if (ignore0 && address[pieceIndex] === 0) {\r\n continue;\r\n } else if (ignore0) {\r\n ignore0 = false;\r\n }\r\n\r\n if (compress === pieceIndex) {\r\n const separator = pieceIndex === 0 ? \"::\" : \":\";\r\n output += separator;\r\n ignore0 = true;\r\n continue;\r\n }\r\n\r\n output += address[pieceIndex].toString(16);\r\n\r\n if (pieceIndex !== 7) {\r\n output += \":\";\r\n }\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseHost(input, isSpecialArg) {\r\n if (input[0] === \"[\") {\r\n if (input[input.length - 1] !== \"]\") {\r\n return failure;\r\n }\r\n\r\n return parseIPv6(input.substring(1, input.length - 1));\r\n }\r\n\r\n if (!isSpecialArg) {\r\n return parseOpaqueHost(input);\r\n }\r\n\r\n const domain = utf8PercentDecode(input);\r\n const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);\r\n if (asciiDomain === null) {\r\n return failure;\r\n }\r\n\r\n if (containsForbiddenHostCodePoint(asciiDomain)) {\r\n return failure;\r\n }\r\n\r\n const ipv4Host = parseIPv4(asciiDomain);\r\n if (typeof ipv4Host === \"number\" || ipv4Host === failure) {\r\n return ipv4Host;\r\n }\r\n\r\n return asciiDomain;\r\n}\r\n\r\nfunction parseOpaqueHost(input) {\r\n if (containsForbiddenHostCodePointExcludingPercent(input)) {\r\n return failure;\r\n }\r\n\r\n let output = \"\";\r\n const decoded = punycode.ucs2.decode(input);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);\r\n }\r\n return output;\r\n}\r\n\r\nfunction findLongestZeroSequence(arr) {\r\n let maxIdx = null;\r\n let maxLen = 1; // only find elements > 1\r\n let currStart = null;\r\n let currLen = 0;\r\n\r\n for (let i = 0; i < arr.length; ++i) {\r\n if (arr[i] !== 0) {\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n currStart = null;\r\n currLen = 0;\r\n } else {\r\n if (currStart === null) {\r\n currStart = i;\r\n }\r\n ++currLen;\r\n }\r\n }\r\n\r\n // if trailing zeros\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n return {\r\n idx: maxIdx,\r\n len: maxLen\r\n };\r\n}\r\n\r\nfunction serializeHost(host) {\r\n if (typeof host === \"number\") {\r\n return serializeIPv4(host);\r\n }\r\n\r\n // IPv6 serializer\r\n if (host instanceof Array) {\r\n return \"[\" + serializeIPv6(host) + \"]\";\r\n }\r\n\r\n return host;\r\n}\r\n\r\nfunction trimControlChars(url) {\r\n return url.replace(/^[\\u0000-\\u001F\\u0020]+|[\\u0000-\\u001F\\u0020]+$/g, \"\");\r\n}\r\n\r\nfunction trimTabAndNewline(url) {\r\n return url.replace(/\\u0009|\\u000A|\\u000D/g, \"\");\r\n}\r\n\r\nfunction shortenPath(url) {\r\n const path = url.path;\r\n if (path.length === 0) {\r\n return;\r\n }\r\n if (url.scheme === \"file\" && path.length === 1 && isNormalizedWindowsDriveLetter(path[0])) {\r\n return;\r\n }\r\n\r\n path.pop();\r\n}\r\n\r\nfunction includesCredentials(url) {\r\n return url.username !== \"\" || url.password !== \"\";\r\n}\r\n\r\nfunction cannotHaveAUsernamePasswordPort(url) {\r\n return url.host === null || url.host === \"\" || url.cannotBeABaseURL || url.scheme === \"file\";\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetter(string) {\r\n return /^[A-Za-z]:$/.test(string);\r\n}\r\n\r\nfunction URLStateMachine(input, base, encodingOverride, url, stateOverride) {\r\n this.pointer = 0;\r\n this.input = input;\r\n this.base = base || null;\r\n this.encodingOverride = encodingOverride || \"utf-8\";\r\n this.stateOverride = stateOverride;\r\n this.url = url;\r\n this.failure = false;\r\n this.parseError = false;\r\n\r\n if (!this.url) {\r\n this.url = {\r\n scheme: \"\",\r\n username: \"\",\r\n password: \"\",\r\n host: null,\r\n port: null,\r\n path: [],\r\n query: null,\r\n fragment: null,\r\n\r\n cannotBeABaseURL: false\r\n };\r\n\r\n const res = trimControlChars(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n }\r\n\r\n const res = trimTabAndNewline(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n\r\n this.state = stateOverride || \"scheme start\";\r\n\r\n this.buffer = \"\";\r\n this.atFlag = false;\r\n this.arrFlag = false;\r\n this.passwordTokenSeenFlag = false;\r\n\r\n this.input = punycode.ucs2.decode(this.input);\r\n\r\n for (; this.pointer <= this.input.length; ++this.pointer) {\r\n const c = this.input[this.pointer];\r\n const cStr = isNaN(c) ? undefined : String.fromCodePoint(c);\r\n\r\n // exec state machine\r\n const ret = this[\"parse \" + this.state](c, cStr);\r\n if (!ret) {\r\n break; // terminate algorithm\r\n } else if (ret === failure) {\r\n this.failure = true;\r\n break;\r\n }\r\n }\r\n}\r\n\r\nURLStateMachine.prototype[\"parse scheme start\"] = function parseSchemeStart(c, cStr) {\r\n if (isASCIIAlpha(c)) {\r\n this.buffer += cStr.toLowerCase();\r\n this.state = \"scheme\";\r\n } else if (!this.stateOverride) {\r\n this.state = \"no scheme\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse scheme\"] = function parseScheme(c, cStr) {\r\n if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {\r\n this.buffer += cStr.toLowerCase();\r\n } else if (c === 58) {\r\n if (this.stateOverride) {\r\n if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === \"file\") {\r\n return false;\r\n }\r\n\r\n if (this.url.scheme === \"file\" && (this.url.host === \"\" || this.url.host === null)) {\r\n return false;\r\n }\r\n }\r\n this.url.scheme = this.buffer;\r\n this.buffer = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n if (this.url.scheme === \"file\") {\r\n if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file\";\r\n } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {\r\n this.state = \"special relative or authority\";\r\n } else if (isSpecial(this.url)) {\r\n this.state = \"special authority slashes\";\r\n } else if (this.input[this.pointer + 1] === 47) {\r\n this.state = \"path or authority\";\r\n ++this.pointer;\r\n } else {\r\n this.url.cannotBeABaseURL = true;\r\n this.url.path.push(\"\");\r\n this.state = \"cannot-be-a-base-URL path\";\r\n }\r\n } else if (!this.stateOverride) {\r\n this.buffer = \"\";\r\n this.state = \"no scheme\";\r\n this.pointer = -1;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse no scheme\"] = function parseNoScheme(c) {\r\n if (this.base === null || (this.base.cannotBeABaseURL && c !== 35)) {\r\n return failure;\r\n } else if (this.base.cannotBeABaseURL && c === 35) {\r\n this.url.scheme = this.base.scheme;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.url.cannotBeABaseURL = true;\r\n this.state = \"fragment\";\r\n } else if (this.base.scheme === \"file\") {\r\n this.state = \"file\";\r\n --this.pointer;\r\n } else {\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special relative or authority\"] = function parseSpecialRelativeOrAuthority(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path or authority\"] = function parsePathOrAuthority(c) {\r\n if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative\"] = function parseRelative(c) {\r\n this.url.scheme = this.base.scheme;\r\n if (isNaN(c)) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 47) {\r\n this.state = \"relative slash\";\r\n } else if (c === 63) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n this.state = \"relative slash\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice(0, this.base.path.length - 1);\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative slash\"] = function parseRelativeSlash(c) {\r\n if (isSpecial(this.url) && (c === 47 || c === 92)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"special authority ignore slashes\";\r\n } else if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority slashes\"] = function parseSpecialAuthoritySlashes(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"special authority ignore slashes\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority ignore slashes\"] = function parseSpecialAuthorityIgnoreSlashes(c) {\r\n if (c !== 47 && c !== 92) {\r\n this.state = \"authority\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse authority\"] = function parseAuthority(c, cStr) {\r\n if (c === 64) {\r\n this.parseError = true;\r\n if (this.atFlag) {\r\n this.buffer = \"%40\" + this.buffer;\r\n }\r\n this.atFlag = true;\r\n\r\n // careful, this is based on buffer and has its own pointer (this.pointer != pointer) and inner chars\r\n const len = countSymbols(this.buffer);\r\n for (let pointer = 0; pointer < len; ++pointer) {\r\n const codePoint = this.buffer.codePointAt(pointer);\r\n\r\n if (codePoint === 58 && !this.passwordTokenSeenFlag) {\r\n this.passwordTokenSeenFlag = true;\r\n continue;\r\n }\r\n const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);\r\n if (this.passwordTokenSeenFlag) {\r\n this.url.password += encodedCodePoints;\r\n } else {\r\n this.url.username += encodedCodePoints;\r\n }\r\n }\r\n this.buffer = \"\";\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n if (this.atFlag && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.pointer -= countSymbols(this.buffer) + 1;\r\n this.buffer = \"\";\r\n this.state = \"host\";\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse hostname\"] =\r\nURLStateMachine.prototype[\"parse host\"] = function parseHostName(c, cStr) {\r\n if (this.stateOverride && this.url.scheme === \"file\") {\r\n --this.pointer;\r\n this.state = \"file host\";\r\n } else if (c === 58 && !this.arrFlag) {\r\n if (this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"port\";\r\n if (this.stateOverride === \"hostname\") {\r\n return false;\r\n }\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n --this.pointer;\r\n if (isSpecial(this.url) && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n } else if (this.stateOverride && this.buffer === \"\" &&\r\n (includesCredentials(this.url) || this.url.port !== null)) {\r\n this.parseError = true;\r\n return false;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n } else {\r\n if (c === 91) {\r\n this.arrFlag = true;\r\n } else if (c === 93) {\r\n this.arrFlag = false;\r\n }\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse port\"] = function parsePort(c, cStr) {\r\n if (isASCIIDigit(c)) {\r\n this.buffer += cStr;\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92) ||\r\n this.stateOverride) {\r\n if (this.buffer !== \"\") {\r\n const port = parseInt(this.buffer);\r\n if (port > Math.pow(2, 16) - 1) {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.url.port = port === defaultPort(this.url.scheme) ? null : port;\r\n this.buffer = \"\";\r\n }\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nconst fileOtherwiseCodePoints = new Set([47, 92, 63, 35]);\r\n\r\nURLStateMachine.prototype[\"parse file\"] = function parseFile(c) {\r\n this.url.scheme = \"file\";\r\n\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file slash\";\r\n } else if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNaN(c)) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 63) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points\r\n !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) ||\r\n (this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points\r\n !fileOtherwiseCodePoints.has(this.input[this.pointer + 2]))) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n shortenPath(this.url);\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file slash\"] = function parseFileSlash(c) {\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file host\";\r\n } else {\r\n if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {\r\n this.url.path.push(this.base.path[0]);\r\n } else {\r\n this.url.host = this.base.host;\r\n }\r\n }\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file host\"] = function parseFileHost(c, cStr) {\r\n if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {\r\n --this.pointer;\r\n if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {\r\n this.parseError = true;\r\n this.state = \"path\";\r\n } else if (this.buffer === \"\") {\r\n this.url.host = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n } else {\r\n let host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n if (host === \"localhost\") {\r\n host = \"\";\r\n }\r\n this.url.host = host;\r\n\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n }\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path start\"] = function parsePathStart(c) {\r\n if (isSpecial(this.url)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"path\";\r\n\r\n if (c !== 47 && c !== 92) {\r\n --this.pointer;\r\n }\r\n } else if (!this.stateOverride && c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (!this.stateOverride && c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (c !== undefined) {\r\n this.state = \"path\";\r\n if (c !== 47) {\r\n --this.pointer;\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path\"] = function parsePath(c) {\r\n if (isNaN(c) || c === 47 || (isSpecial(this.url) && c === 92) ||\r\n (!this.stateOverride && (c === 63 || c === 35))) {\r\n if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n }\r\n\r\n if (isDoubleDot(this.buffer)) {\r\n shortenPath(this.url);\r\n if (c !== 47 && !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n }\r\n } else if (isSingleDot(this.buffer) && c !== 47 &&\r\n !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n } else if (!isSingleDot(this.buffer)) {\r\n if (this.url.scheme === \"file\" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {\r\n if (this.url.host !== \"\" && this.url.host !== null) {\r\n this.parseError = true;\r\n this.url.host = \"\";\r\n }\r\n this.buffer = this.buffer[0] + \":\";\r\n }\r\n this.url.path.push(this.buffer);\r\n }\r\n this.buffer = \"\";\r\n if (this.url.scheme === \"file\" && (c === undefined || c === 63 || c === 35)) {\r\n while (this.url.path.length > 1 && this.url.path[0] === \"\") {\r\n this.parseError = true;\r\n this.url.path.shift();\r\n }\r\n }\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n }\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += percentEncodeChar(c, isPathPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse cannot-be-a-base-URL path\"] = function parseCannotBeABaseURLPath(c) {\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n // TODO: Add: not a URL code point\r\n if (!isNaN(c) && c !== 37) {\r\n this.parseError = true;\r\n }\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n if (!isNaN(c)) {\r\n this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse query\"] = function parseQuery(c, cStr) {\r\n if (isNaN(c) || (!this.stateOverride && c === 35)) {\r\n if (!isSpecial(this.url) || this.url.scheme === \"ws\" || this.url.scheme === \"wss\") {\r\n this.encodingOverride = \"utf-8\";\r\n }\r\n\r\n const buffer = new Buffer(this.buffer); // TODO: Use encoding override instead\r\n for (let i = 0; i < buffer.length; ++i) {\r\n if (buffer[i] < 0x21 || buffer[i] > 0x7E || buffer[i] === 0x22 || buffer[i] === 0x23 ||\r\n buffer[i] === 0x3C || buffer[i] === 0x3E) {\r\n this.url.query += percentEncode(buffer[i]);\r\n } else {\r\n this.url.query += String.fromCodePoint(buffer[i]);\r\n }\r\n }\r\n\r\n this.buffer = \"\";\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse fragment\"] = function parseFragment(c) {\r\n if (isNaN(c)) { // do nothing\r\n } else if (c === 0x0) {\r\n this.parseError = true;\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nfunction serializeURL(url, excludeFragment) {\r\n let output = url.scheme + \":\";\r\n if (url.host !== null) {\r\n output += \"//\";\r\n\r\n if (url.username !== \"\" || url.password !== \"\") {\r\n output += url.username;\r\n if (url.password !== \"\") {\r\n output += \":\" + url.password;\r\n }\r\n output += \"@\";\r\n }\r\n\r\n output += serializeHost(url.host);\r\n\r\n if (url.port !== null) {\r\n output += \":\" + url.port;\r\n }\r\n } else if (url.host === null && url.scheme === \"file\") {\r\n output += \"//\";\r\n }\r\n\r\n if (url.cannotBeABaseURL) {\r\n output += url.path[0];\r\n } else {\r\n for (const string of url.path) {\r\n output += \"/\" + string;\r\n }\r\n }\r\n\r\n if (url.query !== null) {\r\n output += \"?\" + url.query;\r\n }\r\n\r\n if (!excludeFragment && url.fragment !== null) {\r\n output += \"#\" + url.fragment;\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction serializeOrigin(tuple) {\r\n let result = tuple.scheme + \"://\";\r\n result += serializeHost(tuple.host);\r\n\r\n if (tuple.port !== null) {\r\n result += \":\" + tuple.port;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nmodule.exports.serializeURL = serializeURL;\r\n\r\nmodule.exports.serializeURLOrigin = function (url) {\r\n // https://url.spec.whatwg.org/#concept-url-origin\r\n switch (url.scheme) {\r\n case \"blob\":\r\n try {\r\n return module.exports.serializeURLOrigin(module.exports.parseURL(url.path[0]));\r\n } catch (e) {\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n case \"ftp\":\r\n case \"gopher\":\r\n case \"http\":\r\n case \"https\":\r\n case \"ws\":\r\n case \"wss\":\r\n return serializeOrigin({\r\n scheme: url.scheme,\r\n host: url.host,\r\n port: url.port\r\n });\r\n case \"file\":\r\n // spec says \"exercise to the reader\", chrome says \"file://\"\r\n return \"file://\";\r\n default:\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n};\r\n\r\nmodule.exports.basicURLParse = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);\r\n if (usm.failure) {\r\n return \"failure\";\r\n }\r\n\r\n return usm.url;\r\n};\r\n\r\nmodule.exports.setTheUsername = function (url, username) {\r\n url.username = \"\";\r\n const decoded = punycode.ucs2.decode(username);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.setThePassword = function (url, password) {\r\n url.password = \"\";\r\n const decoded = punycode.ucs2.decode(password);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.serializeHost = serializeHost;\r\n\r\nmodule.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;\r\n\r\nmodule.exports.serializeInteger = function (integer) {\r\n return String(integer);\r\n};\r\n\r\nmodule.exports.parseURL = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n // We don't handle blobs, so this just delegates:\r\n return module.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });\r\n};\r\n","\"use strict\";\n\nvar punycode = require(\"punycode\");\nvar mappingTable = require(\"./lib/mappingTable.json\");\n\nvar PROCESSING_OPTIONS = {\n TRANSITIONAL: 0,\n NONTRANSITIONAL: 1\n};\n\nfunction normalize(str) { // fix bug in v8\n return str.split('\\u0000').map(function (s) { return s.normalize('NFC'); }).join('\\u0000');\n}\n\nfunction findStatus(val) {\n var start = 0;\n var end = mappingTable.length - 1;\n\n while (start <= end) {\n var mid = Math.floor((start + end) / 2);\n\n var target = mappingTable[mid];\n if (target[0][0] <= val && target[0][1] >= val) {\n return target;\n } else if (target[0][0] > val) {\n end = mid - 1;\n } else {\n start = mid + 1;\n }\n }\n\n return null;\n}\n\nvar regexAstralSymbols = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n\nfunction countSymbols(string) {\n return string\n // replace every surrogate pair with a BMP symbol\n .replace(regexAstralSymbols, '_')\n // then get the length\n .length;\n}\n\nfunction mapChars(domain_name, useSTD3, processing_option) {\n var hasError = false;\n var processed = \"\";\n\n var len = countSymbols(domain_name);\n for (var i = 0; i < len; ++i) {\n var codePoint = domain_name.codePointAt(i);\n var status = findStatus(codePoint);\n\n switch (status[1]) {\n case \"disallowed\":\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n break;\n case \"ignored\":\n break;\n case \"mapped\":\n processed += String.fromCodePoint.apply(String, status[2]);\n break;\n case \"deviation\":\n if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {\n processed += String.fromCodePoint.apply(String, status[2]);\n } else {\n processed += String.fromCodePoint(codePoint);\n }\n break;\n case \"valid\":\n processed += String.fromCodePoint(codePoint);\n break;\n case \"disallowed_STD3_mapped\":\n if (useSTD3) {\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n } else {\n processed += String.fromCodePoint.apply(String, status[2]);\n }\n break;\n case \"disallowed_STD3_valid\":\n if (useSTD3) {\n hasError = true;\n }\n\n processed += String.fromCodePoint(codePoint);\n break;\n }\n }\n\n return {\n string: processed,\n error: hasError\n };\n}\n\nvar combiningMarksRegex = /[\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u08E4-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2\\u09E3\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2\\u0AE3\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B62\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C03\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CE2\\u0CE3\\u0D01-\\u0D03\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4D\\u0D57\\u0D62\\u0D63\\u0D82\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E\\u0F3F\\u0F71-\\u0F84\\u0F86\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102B-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F\\u109A-\\u109D\\u135D-\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60-\\u1A7C\\u1A7F\\u1AB0-\\u1ABE\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF2-\\u1CF4\\u1CF8\\u1CF9\\u1DC0-\\u1DF5\\u1DFC-\\u1DFF\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69F\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA880\\uA881\\uA8B4-\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA953\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C\\uAA4D\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5\\uAAF6\\uABE3-\\uABEA\\uABEC\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2D]|\\uD800[\\uDDFD\\uDEE0\\uDF76-\\uDF7A]|\\uD802[\\uDE01-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE0F\\uDE38-\\uDE3A\\uDE3F\\uDEE5\\uDEE6]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC46\\uDC7F-\\uDC82\\uDCB0-\\uDCBA\\uDD00-\\uDD02\\uDD27-\\uDD34\\uDD73\\uDD80-\\uDD82\\uDDB3-\\uDDC0\\uDE2C-\\uDE37\\uDEDF-\\uDEEA\\uDF01-\\uDF03\\uDF3C\\uDF3E-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF57\\uDF62\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDCB0-\\uDCC3\\uDDAF-\\uDDB5\\uDDB8-\\uDDC0\\uDE30-\\uDE40\\uDEAB-\\uDEB7]|\\uD81A[\\uDEF0-\\uDEF4\\uDF30-\\uDF36]|\\uD81B[\\uDF51-\\uDF7E\\uDF8F-\\uDF92]|\\uD82F[\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD83A[\\uDCD0-\\uDCD6]|\\uDB40[\\uDD00-\\uDDEF]/;\n\nfunction validateLabel(label, processing_option) {\n if (label.substr(0, 4) === \"xn--\") {\n label = punycode.toUnicode(label);\n processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;\n }\n\n var error = false;\n\n if (normalize(label) !== label ||\n (label[3] === \"-\" && label[4] === \"-\") ||\n label[0] === \"-\" || label[label.length - 1] === \"-\" ||\n label.indexOf(\".\") !== -1 ||\n label.search(combiningMarksRegex) === 0) {\n error = true;\n }\n\n var len = countSymbols(label);\n for (var i = 0; i < len; ++i) {\n var status = findStatus(label.codePointAt(i));\n if ((processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== \"valid\") ||\n (processing === PROCESSING_OPTIONS.NONTRANSITIONAL &&\n status[1] !== \"valid\" && status[1] !== \"deviation\")) {\n error = true;\n break;\n }\n }\n\n return {\n label: label,\n error: error\n };\n}\n\nfunction processing(domain_name, useSTD3, processing_option) {\n var result = mapChars(domain_name, useSTD3, processing_option);\n result.string = normalize(result.string);\n\n var labels = result.string.split(\".\");\n for (var i = 0; i < labels.length; ++i) {\n try {\n var validation = validateLabel(labels[i]);\n labels[i] = validation.label;\n result.error = result.error || validation.error;\n } catch(e) {\n result.error = true;\n }\n }\n\n return {\n string: labels.join(\".\"),\n error: result.error\n };\n}\n\nmodule.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {\n var result = processing(domain_name, useSTD3, processing_option);\n var labels = result.string.split(\".\");\n labels = labels.map(function(l) {\n try {\n return punycode.toASCII(l);\n } catch(e) {\n result.error = true;\n return l;\n }\n });\n\n if (verifyDnsLength) {\n var total = labels.slice(0, labels.length - 1).join(\".\").length;\n if (total.length > 253 || total.length === 0) {\n result.error = true;\n }\n\n for (var i=0; i < labels.length; ++i) {\n if (labels.length > 63 || labels.length === 0) {\n result.error = true;\n break;\n }\n }\n }\n\n if (result.error) return null;\n return labels.join(\".\");\n};\n\nmodule.exports.toUnicode = function(domain_name, useSTD3) {\n var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);\n\n return {\n domain: result.string,\n error: result.error\n };\n};\n\nmodule.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;\n","[[[0,44],\"disallowed_STD3_valid\"],[[45,46],\"valid\"],[[47,47],\"disallowed_STD3_valid\"],[[48,57],\"valid\"],[[58,64],\"disallowed_STD3_valid\"],[[65,65],\"mapped\",[97]],[[66,66],\"mapped\",[98]],[[67,67],\"mapped\",[99]],[[68,68],\"mapped\",[100]],[[69,69],\"mapped\",[101]],[[70,70],\"mapped\",[102]],[[71,71],\"mapped\",[103]],[[72,72],\"mapped\",[104]],[[73,73],\"mapped\",[105]],[[74,74],\"mapped\",[106]],[[75,75],\"mapped\",[107]],[[76,76],\"mapped\",[108]],[[77,77],\"mapped\",[109]],[[78,78],\"mapped\",[110]],[[79,79],\"mapped\",[111]],[[80,80],\"mapped\",[112]],[[81,81],\"mapped\",[113]],[[82,82],\"mapped\",[114]],[[83,83],\"mapped\",[115]],[[84,84],\"mapped\",[116]],[[85,85],\"mapped\",[117]],[[86,86],\"mapped\",[118]],[[87,87],\"mapped\",[119]],[[88,88],\"mapped\",[120]],[[89,89],\"mapped\",[121]],[[90,90],\"mapped\",[122]],[[91,96],\"disallowed_STD3_valid\"],[[97,122],\"valid\"],[[123,127],\"disallowed_STD3_valid\"],[[128,159],\"disallowed\"],[[160,160],\"disallowed_STD3_mapped\",[32]],[[161,167],\"valid\",[],\"NV8\"],[[168,168],\"disallowed_STD3_mapped\",[32,776]],[[169,169],\"valid\",[],\"NV8\"],[[170,170],\"mapped\",[97]],[[171,172],\"valid\",[],\"NV8\"],[[173,173],\"ignored\"],[[174,174],\"valid\",[],\"NV8\"],[[175,175],\"disallowed_STD3_mapped\",[32,772]],[[176,177],\"valid\",[],\"NV8\"],[[178,178],\"mapped\",[50]],[[179,179],\"mapped\",[51]],[[180,180],\"disallowed_STD3_mapped\",[32,769]],[[181,181],\"mapped\",[956]],[[182,182],\"valid\",[],\"NV8\"],[[183,183],\"valid\"],[[184,184],\"disallowed_STD3_mapped\",[32,807]],[[185,185],\"mapped\",[49]],[[186,186],\"mapped\",[111]],[[187,187],\"valid\",[],\"NV8\"],[[188,188],\"mapped\",[49,8260,52]],[[189,189],\"mapped\",[49,8260,50]],[[190,190],\"mapped\",[51,8260,52]],[[191,191],\"valid\",[],\"NV8\"],[[192,192],\"mapped\",[224]],[[193,193],\"mapped\",[225]],[[194,194],\"mapped\",[226]],[[195,195],\"mapped\",[227]],[[196,196],\"mapped\",[228]],[[197,197],\"mapped\",[229]],[[198,198],\"mapped\",[230]],[[199,199],\"mapped\",[231]],[[200,200],\"mapped\",[232]],[[201,201],\"mapped\",[233]],[[202,202],\"mapped\",[234]],[[203,203],\"mapped\",[235]],[[204,204],\"mapped\",[236]],[[205,205],\"mapped\",[237]],[[206,206],\"mapped\",[238]],[[207,207],\"mapped\",[239]],[[208,208],\"mapped\",[240]],[[209,209],\"mapped\",[241]],[[210,210],\"mapped\",[242]],[[211,211],\"mapped\",[243]],[[212,212],\"mapped\",[244]],[[213,213],\"mapped\",[245]],[[214,214],\"mapped\",[246]],[[215,215],\"valid\",[],\"NV8\"],[[216,216],\"mapped\",[248]],[[217,217],\"mapped\",[249]],[[218,218],\"mapped\",[250]],[[219,219],\"mapped\",[251]],[[220,220],\"mapped\",[252]],[[221,221],\"mapped\",[253]],[[222,222],\"mapped\",[254]],[[223,223],\"deviation\",[115,115]],[[224,246],\"valid\"],[[247,247],\"valid\",[],\"NV8\"],[[248,255],\"valid\"],[[256,256],\"mapped\",[257]],[[257,257],\"valid\"],[[258,258],\"mapped\",[259]],[[259,259],\"valid\"],[[260,260],\"mapped\",[261]],[[261,261],\"valid\"],[[262,262],\"mapped\",[263]],[[263,263],\"valid\"],[[264,264],\"mapped\",[265]],[[265,265],\"valid\"],[[266,266],\"mapped\",[267]],[[267,267],\"valid\"],[[268,268],\"mapped\",[269]],[[269,269],\"valid\"],[[270,270],\"mapped\",[271]],[[271,271],\"valid\"],[[272,272],\"mapped\",[273]],[[273,273],\"valid\"],[[274,274],\"mapped\",[275]],[[275,275],\"valid\"],[[276,276],\"mapped\",[277]],[[277,277],\"valid\"],[[278,278],\"mapped\",[279]],[[279,279],\"valid\"],[[280,280],\"mapped\",[281]],[[281,281],\"valid\"],[[282,282],\"mapped\",[283]],[[283,283],\"valid\"],[[284,284],\"mapped\",[285]],[[285,285],\"valid\"],[[286,286],\"mapped\",[287]],[[287,287],\"valid\"],[[288,288],\"mapped\",[289]],[[289,289],\"valid\"],[[290,290],\"mapped\",[291]],[[291,291],\"valid\"],[[292,292],\"mapped\",[293]],[[293,293],\"valid\"],[[294,294],\"mapped\",[295]],[[295,295],\"valid\"],[[296,296],\"mapped\",[297]],[[297,297],\"valid\"],[[298,298],\"mapped\",[299]],[[299,299],\"valid\"],[[300,300],\"mapped\",[301]],[[301,301],\"valid\"],[[302,302],\"mapped\",[303]],[[303,303],\"valid\"],[[304,304],\"mapped\",[105,775]],[[305,305],\"valid\"],[[306,307],\"mapped\",[105,106]],[[308,308],\"mapped\",[309]],[[309,309],\"valid\"],[[310,310],\"mapped\",[311]],[[311,312],\"valid\"],[[313,313],\"mapped\",[314]],[[314,314],\"valid\"],[[315,315],\"mapped\",[316]],[[316,316],\"valid\"],[[317,317],\"mapped\",[318]],[[318,318],\"valid\"],[[319,320],\"mapped\",[108,183]],[[321,321],\"mapped\",[322]],[[322,322],\"valid\"],[[323,323],\"mapped\",[324]],[[324,324],\"valid\"],[[325,325],\"mapped\",[326]],[[326,326],\"valid\"],[[327,327],\"mapped\",[328]],[[328,328],\"valid\"],[[329,329],\"mapped\",[700,110]],[[330,330],\"mapped\",[331]],[[331,331],\"valid\"],[[332,332],\"mapped\",[333]],[[333,333],\"valid\"],[[334,334],\"mapped\",[335]],[[335,335],\"valid\"],[[336,336],\"mapped\",[337]],[[337,337],\"valid\"],[[338,338],\"mapped\",[339]],[[339,339],\"valid\"],[[340,340],\"mapped\",[341]],[[341,341],\"valid\"],[[342,342],\"mapped\",[343]],[[343,343],\"valid\"],[[344,344],\"mapped\",[345]],[[345,345],\"valid\"],[[346,346],\"mapped\",[347]],[[347,347],\"valid\"],[[348,348],\"mapped\",[349]],[[349,349],\"valid\"],[[350,350],\"mapped\",[351]],[[351,351],\"valid\"],[[352,352],\"mapped\",[353]],[[353,353],\"valid\"],[[354,354],\"mapped\",[355]],[[355,355],\"valid\"],[[356,356],\"mapped\",[357]],[[357,357],\"valid\"],[[358,358],\"mapped\",[359]],[[359,359],\"valid\"],[[360,360],\"mapped\",[361]],[[361,361],\"valid\"],[[362,362],\"mapped\",[363]],[[363,363],\"valid\"],[[364,364],\"mapped\",[365]],[[365,365],\"valid\"],[[366,366],\"mapped\",[367]],[[367,367],\"valid\"],[[368,368],\"mapped\",[369]],[[369,369],\"valid\"],[[370,370],\"mapped\",[371]],[[371,371],\"valid\"],[[372,372],\"mapped\",[373]],[[373,373],\"valid\"],[[374,374],\"mapped\",[375]],[[375,375],\"valid\"],[[376,376],\"mapped\",[255]],[[377,377],\"mapped\",[378]],[[378,378],\"valid\"],[[379,379],\"mapped\",[380]],[[380,380],\"valid\"],[[381,381],\"mapped\",[382]],[[382,382],\"valid\"],[[383,383],\"mapped\",[115]],[[384,384],\"valid\"],[[385,385],\"mapped\",[595]],[[386,386],\"mapped\",[387]],[[387,387],\"valid\"],[[388,388],\"mapped\",[389]],[[389,389],\"valid\"],[[390,390],\"mapped\",[596]],[[391,391],\"mapped\",[392]],[[392,392],\"valid\"],[[393,393],\"mapped\",[598]],[[394,394],\"mapped\",[599]],[[395,395],\"mapped\",[396]],[[396,397],\"valid\"],[[398,398],\"mapped\",[477]],[[399,399],\"mapped\",[601]],[[400,400],\"mapped\",[603]],[[401,401],\"mapped\",[402]],[[402,402],\"valid\"],[[403,403],\"mapped\",[608]],[[404,404],\"mapped\",[611]],[[405,405],\"valid\"],[[406,406],\"mapped\",[617]],[[407,407],\"mapped\",[616]],[[408,408],\"mapped\",[409]],[[409,411],\"valid\"],[[412,412],\"mapped\",[623]],[[413,413],\"mapped\",[626]],[[414,414],\"valid\"],[[415,415],\"mapped\",[629]],[[416,416],\"mapped\",[417]],[[417,417],\"valid\"],[[418,418],\"mapped\",[419]],[[419,419],\"valid\"],[[420,420],\"mapped\",[421]],[[421,421],\"valid\"],[[422,422],\"mapped\",[640]],[[423,423],\"mapped\",[424]],[[424,424],\"valid\"],[[425,425],\"mapped\",[643]],[[426,427],\"valid\"],[[428,428],\"mapped\",[429]],[[429,429],\"valid\"],[[430,430],\"mapped\",[648]],[[431,431],\"mapped\",[432]],[[432,432],\"valid\"],[[433,433],\"mapped\",[650]],[[434,434],\"mapped\",[651]],[[435,435],\"mapped\",[436]],[[436,436],\"valid\"],[[437,437],\"mapped\",[438]],[[438,438],\"valid\"],[[439,439],\"mapped\",[658]],[[440,440],\"mapped\",[441]],[[441,443],\"valid\"],[[444,444],\"mapped\",[445]],[[445,451],\"valid\"],[[452,454],\"mapped\",[100,382]],[[455,457],\"mapped\",[108,106]],[[458,460],\"mapped\",[110,106]],[[461,461],\"mapped\",[462]],[[462,462],\"valid\"],[[463,463],\"mapped\",[464]],[[464,464],\"valid\"],[[465,465],\"mapped\",[466]],[[466,466],\"valid\"],[[467,467],\"mapped\",[468]],[[468,468],\"valid\"],[[469,469],\"mapped\",[470]],[[470,470],\"valid\"],[[471,471],\"mapped\",[472]],[[472,472],\"valid\"],[[473,473],\"mapped\",[474]],[[474,474],\"valid\"],[[475,475],\"mapped\",[476]],[[476,477],\"valid\"],[[478,478],\"mapped\",[479]],[[479,479],\"valid\"],[[480,480],\"mapped\",[481]],[[481,481],\"valid\"],[[482,482],\"mapped\",[483]],[[483,483],\"valid\"],[[484,484],\"mapped\",[485]],[[485,485],\"valid\"],[[486,486],\"mapped\",[487]],[[487,487],\"valid\"],[[488,488],\"mapped\",[489]],[[489,489],\"valid\"],[[490,490],\"mapped\",[491]],[[491,491],\"valid\"],[[492,492],\"mapped\",[493]],[[493,493],\"valid\"],[[494,494],\"mapped\",[495]],[[495,496],\"valid\"],[[497,499],\"mapped\",[100,122]],[[500,500],\"mapped\",[501]],[[501,501],\"valid\"],[[502,502],\"mapped\",[405]],[[503,503],\"mapped\",[447]],[[504,504],\"mapped\",[505]],[[505,505],\"valid\"],[[506,506],\"mapped\",[507]],[[507,507],\"valid\"],[[508,508],\"mapped\",[509]],[[509,509],\"valid\"],[[510,510],\"mapped\",[511]],[[511,511],\"valid\"],[[512,512],\"mapped\",[513]],[[513,513],\"valid\"],[[514,514],\"mapped\",[515]],[[515,515],\"valid\"],[[516,516],\"mapped\",[517]],[[517,517],\"valid\"],[[518,518],\"mapped\",[519]],[[519,519],\"valid\"],[[520,520],\"mapped\",[521]],[[521,521],\"valid\"],[[522,522],\"mapped\",[523]],[[523,523],\"valid\"],[[524,524],\"mapped\",[525]],[[525,525],\"valid\"],[[526,526],\"mapped\",[527]],[[527,527],\"valid\"],[[528,528],\"mapped\",[529]],[[529,529],\"valid\"],[[530,530],\"mapped\",[531]],[[531,531],\"valid\"],[[532,532],\"mapped\",[533]],[[533,533],\"valid\"],[[534,534],\"mapped\",[535]],[[535,535],\"valid\"],[[536,536],\"mapped\",[537]],[[537,537],\"valid\"],[[538,538],\"mapped\",[539]],[[539,539],\"valid\"],[[540,540],\"mapped\",[541]],[[541,541],\"valid\"],[[542,542],\"mapped\",[543]],[[543,543],\"valid\"],[[544,544],\"mapped\",[414]],[[545,545],\"valid\"],[[546,546],\"mapped\",[547]],[[547,547],\"valid\"],[[548,548],\"mapped\",[549]],[[549,549],\"valid\"],[[550,550],\"mapped\",[551]],[[551,551],\"valid\"],[[552,552],\"mapped\",[553]],[[553,553],\"valid\"],[[554,554],\"mapped\",[555]],[[555,555],\"valid\"],[[556,556],\"mapped\",[557]],[[557,557],\"valid\"],[[558,558],\"mapped\",[559]],[[559,559],\"valid\"],[[560,560],\"mapped\",[561]],[[561,561],\"valid\"],[[562,562],\"mapped\",[563]],[[563,563],\"valid\"],[[564,566],\"valid\"],[[567,569],\"valid\"],[[570,570],\"mapped\",[11365]],[[571,571],\"mapped\",[572]],[[572,572],\"valid\"],[[573,573],\"mapped\",[410]],[[574,574],\"mapped\",[11366]],[[575,576],\"valid\"],[[577,577],\"mapped\",[578]],[[578,578],\"valid\"],[[579,579],\"mapped\",[384]],[[580,580],\"mapped\",[649]],[[581,581],\"mapped\",[652]],[[582,582],\"mapped\",[583]],[[583,583],\"valid\"],[[584,584],\"mapped\",[585]],[[585,585],\"valid\"],[[586,586],\"mapped\",[587]],[[587,587],\"valid\"],[[588,588],\"mapped\",[589]],[[589,589],\"valid\"],[[590,590],\"mapped\",[591]],[[591,591],\"valid\"],[[592,680],\"valid\"],[[681,685],\"valid\"],[[686,687],\"valid\"],[[688,688],\"mapped\",[104]],[[689,689],\"mapped\",[614]],[[690,690],\"mapped\",[106]],[[691,691],\"mapped\",[114]],[[692,692],\"mapped\",[633]],[[693,693],\"mapped\",[635]],[[694,694],\"mapped\",[641]],[[695,695],\"mapped\",[119]],[[696,696],\"mapped\",[121]],[[697,705],\"valid\"],[[706,709],\"valid\",[],\"NV8\"],[[710,721],\"valid\"],[[722,727],\"valid\",[],\"NV8\"],[[728,728],\"disallowed_STD3_mapped\",[32,774]],[[729,729],\"disallowed_STD3_mapped\",[32,775]],[[730,730],\"disallowed_STD3_mapped\",[32,778]],[[731,731],\"disallowed_STD3_mapped\",[32,808]],[[732,732],\"disallowed_STD3_mapped\",[32,771]],[[733,733],\"disallowed_STD3_mapped\",[32,779]],[[734,734],\"valid\",[],\"NV8\"],[[735,735],\"valid\",[],\"NV8\"],[[736,736],\"mapped\",[611]],[[737,737],\"mapped\",[108]],[[738,738],\"mapped\",[115]],[[739,739],\"mapped\",[120]],[[740,740],\"mapped\",[661]],[[741,745],\"valid\",[],\"NV8\"],[[746,747],\"valid\",[],\"NV8\"],[[748,748],\"valid\"],[[749,749],\"valid\",[],\"NV8\"],[[750,750],\"valid\"],[[751,767],\"valid\",[],\"NV8\"],[[768,831],\"valid\"],[[832,832],\"mapped\",[768]],[[833,833],\"mapped\",[769]],[[834,834],\"valid\"],[[835,835],\"mapped\",[787]],[[836,836],\"mapped\",[776,769]],[[837,837],\"mapped\",[953]],[[838,846],\"valid\"],[[847,847],\"ignored\"],[[848,855],\"valid\"],[[856,860],\"valid\"],[[861,863],\"valid\"],[[864,865],\"valid\"],[[866,866],\"valid\"],[[867,879],\"valid\"],[[880,880],\"mapped\",[881]],[[881,881],\"valid\"],[[882,882],\"mapped\",[883]],[[883,883],\"valid\"],[[884,884],\"mapped\",[697]],[[885,885],\"valid\"],[[886,886],\"mapped\",[887]],[[887,887],\"valid\"],[[888,889],\"disallowed\"],[[890,890],\"disallowed_STD3_mapped\",[32,953]],[[891,893],\"valid\"],[[894,894],\"disallowed_STD3_mapped\",[59]],[[895,895],\"mapped\",[1011]],[[896,899],\"disallowed\"],[[900,900],\"disallowed_STD3_mapped\",[32,769]],[[901,901],\"disallowed_STD3_mapped\",[32,776,769]],[[902,902],\"mapped\",[940]],[[903,903],\"mapped\",[183]],[[904,904],\"mapped\",[941]],[[905,905],\"mapped\",[942]],[[906,906],\"mapped\",[943]],[[907,907],\"disallowed\"],[[908,908],\"mapped\",[972]],[[909,909],\"disallowed\"],[[910,910],\"mapped\",[973]],[[911,911],\"mapped\",[974]],[[912,912],\"valid\"],[[913,913],\"mapped\",[945]],[[914,914],\"mapped\",[946]],[[915,915],\"mapped\",[947]],[[916,916],\"mapped\",[948]],[[917,917],\"mapped\",[949]],[[918,918],\"mapped\",[950]],[[919,919],\"mapped\",[951]],[[920,920],\"mapped\",[952]],[[921,921],\"mapped\",[953]],[[922,922],\"mapped\",[954]],[[923,923],\"mapped\",[955]],[[924,924],\"mapped\",[956]],[[925,925],\"mapped\",[957]],[[926,926],\"mapped\",[958]],[[927,927],\"mapped\",[959]],[[928,928],\"mapped\",[960]],[[929,929],\"mapped\",[961]],[[930,930],\"disallowed\"],[[931,931],\"mapped\",[963]],[[932,932],\"mapped\",[964]],[[933,933],\"mapped\",[965]],[[934,934],\"mapped\",[966]],[[935,935],\"mapped\",[967]],[[936,936],\"mapped\",[968]],[[937,937],\"mapped\",[969]],[[938,938],\"mapped\",[970]],[[939,939],\"mapped\",[971]],[[940,961],\"valid\"],[[962,962],\"deviation\",[963]],[[963,974],\"valid\"],[[975,975],\"mapped\",[983]],[[976,976],\"mapped\",[946]],[[977,977],\"mapped\",[952]],[[978,978],\"mapped\",[965]],[[979,979],\"mapped\",[973]],[[980,980],\"mapped\",[971]],[[981,981],\"mapped\",[966]],[[982,982],\"mapped\",[960]],[[983,983],\"valid\"],[[984,984],\"mapped\",[985]],[[985,985],\"valid\"],[[986,986],\"mapped\",[987]],[[987,987],\"valid\"],[[988,988],\"mapped\",[989]],[[989,989],\"valid\"],[[990,990],\"mapped\",[991]],[[991,991],\"valid\"],[[992,992],\"mapped\",[993]],[[993,993],\"valid\"],[[994,994],\"mapped\",[995]],[[995,995],\"valid\"],[[996,996],\"mapped\",[997]],[[997,997],\"valid\"],[[998,998],\"mapped\",[999]],[[999,999],\"valid\"],[[1000,1000],\"mapped\",[1001]],[[1001,1001],\"valid\"],[[1002,1002],\"mapped\",[1003]],[[1003,1003],\"valid\"],[[1004,1004],\"mapped\",[1005]],[[1005,1005],\"valid\"],[[1006,1006],\"mapped\",[1007]],[[1007,1007],\"valid\"],[[1008,1008],\"mapped\",[954]],[[1009,1009],\"mapped\",[961]],[[1010,1010],\"mapped\",[963]],[[1011,1011],\"valid\"],[[1012,1012],\"mapped\",[952]],[[1013,1013],\"mapped\",[949]],[[1014,1014],\"valid\",[],\"NV8\"],[[1015,1015],\"mapped\",[1016]],[[1016,1016],\"valid\"],[[1017,1017],\"mapped\",[963]],[[1018,1018],\"mapped\",[1019]],[[1019,1019],\"valid\"],[[1020,1020],\"valid\"],[[1021,1021],\"mapped\",[891]],[[1022,1022],\"mapped\",[892]],[[1023,1023],\"mapped\",[893]],[[1024,1024],\"mapped\",[1104]],[[1025,1025],\"mapped\",[1105]],[[1026,1026],\"mapped\",[1106]],[[1027,1027],\"mapped\",[1107]],[[1028,1028],\"mapped\",[1108]],[[1029,1029],\"mapped\",[1109]],[[1030,1030],\"mapped\",[1110]],[[1031,1031],\"mapped\",[1111]],[[1032,1032],\"mapped\",[1112]],[[1033,1033],\"mapped\",[1113]],[[1034,1034],\"mapped\",[1114]],[[1035,1035],\"mapped\",[1115]],[[1036,1036],\"mapped\",[1116]],[[1037,1037],\"mapped\",[1117]],[[1038,1038],\"mapped\",[1118]],[[1039,1039],\"mapped\",[1119]],[[1040,1040],\"mapped\",[1072]],[[1041,1041],\"mapped\",[1073]],[[1042,1042],\"mapped\",[1074]],[[1043,1043],\"mapped\",[1075]],[[1044,1044],\"mapped\",[1076]],[[1045,1045],\"mapped\",[1077]],[[1046,1046],\"mapped\",[1078]],[[1047,1047],\"mapped\",[1079]],[[1048,1048],\"mapped\",[1080]],[[1049,1049],\"mapped\",[1081]],[[1050,1050],\"mapped\",[1082]],[[1051,1051],\"mapped\",[1083]],[[1052,1052],\"mapped\",[1084]],[[1053,1053],\"mapped\",[1085]],[[1054,1054],\"mapped\",[1086]],[[1055,1055],\"mapped\",[1087]],[[1056,1056],\"mapped\",[1088]],[[1057,1057],\"mapped\",[1089]],[[1058,1058],\"mapped\",[1090]],[[1059,1059],\"mapped\",[1091]],[[1060,1060],\"mapped\",[1092]],[[1061,1061],\"mapped\",[1093]],[[1062,1062],\"mapped\",[1094]],[[1063,1063],\"mapped\",[1095]],[[1064,1064],\"mapped\",[1096]],[[1065,1065],\"mapped\",[1097]],[[1066,1066],\"mapped\",[1098]],[[1067,1067],\"mapped\",[1099]],[[1068,1068],\"mapped\",[1100]],[[1069,1069],\"mapped\",[1101]],[[1070,1070],\"mapped\",[1102]],[[1071,1071],\"mapped\",[1103]],[[1072,1103],\"valid\"],[[1104,1104],\"valid\"],[[1105,1116],\"valid\"],[[1117,1117],\"valid\"],[[1118,1119],\"valid\"],[[1120,1120],\"mapped\",[1121]],[[1121,1121],\"valid\"],[[1122,1122],\"mapped\",[1123]],[[1123,1123],\"valid\"],[[1124,1124],\"mapped\",[1125]],[[1125,1125],\"valid\"],[[1126,1126],\"mapped\",[1127]],[[1127,1127],\"valid\"],[[1128,1128],\"mapped\",[1129]],[[1129,1129],\"valid\"],[[1130,1130],\"mapped\",[1131]],[[1131,1131],\"valid\"],[[1132,1132],\"mapped\",[1133]],[[1133,1133],\"valid\"],[[1134,1134],\"mapped\",[1135]],[[1135,1135],\"valid\"],[[1136,1136],\"mapped\",[1137]],[[1137,1137],\"valid\"],[[1138,1138],\"mapped\",[1139]],[[1139,1139],\"valid\"],[[1140,1140],\"mapped\",[1141]],[[1141,1141],\"valid\"],[[1142,1142],\"mapped\",[1143]],[[1143,1143],\"valid\"],[[1144,1144],\"mapped\",[1145]],[[1145,1145],\"valid\"],[[1146,1146],\"mapped\",[1147]],[[1147,1147],\"valid\"],[[1148,1148],\"mapped\",[1149]],[[1149,1149],\"valid\"],[[1150,1150],\"mapped\",[1151]],[[1151,1151],\"valid\"],[[1152,1152],\"mapped\",[1153]],[[1153,1153],\"valid\"],[[1154,1154],\"valid\",[],\"NV8\"],[[1155,1158],\"valid\"],[[1159,1159],\"valid\"],[[1160,1161],\"valid\",[],\"NV8\"],[[1162,1162],\"mapped\",[1163]],[[1163,1163],\"valid\"],[[1164,1164],\"mapped\",[1165]],[[1165,1165],\"valid\"],[[1166,1166],\"mapped\",[1167]],[[1167,1167],\"valid\"],[[1168,1168],\"mapped\",[1169]],[[1169,1169],\"valid\"],[[1170,1170],\"mapped\",[1171]],[[1171,1171],\"valid\"],[[1172,1172],\"mapped\",[1173]],[[1173,1173],\"valid\"],[[1174,1174],\"mapped\",[1175]],[[1175,1175],\"valid\"],[[1176,1176],\"mapped\",[1177]],[[1177,1177],\"valid\"],[[1178,1178],\"mapped\",[1179]],[[1179,1179],\"valid\"],[[1180,1180],\"mapped\",[1181]],[[1181,1181],\"valid\"],[[1182,1182],\"mapped\",[1183]],[[1183,1183],\"valid\"],[[1184,1184],\"mapped\",[1185]],[[1185,1185],\"valid\"],[[1186,1186],\"mapped\",[1187]],[[1187,1187],\"valid\"],[[1188,1188],\"mapped\",[1189]],[[1189,1189],\"valid\"],[[1190,1190],\"mapped\",[1191]],[[1191,1191],\"valid\"],[[1192,1192],\"mapped\",[1193]],[[1193,1193],\"valid\"],[[1194,1194],\"mapped\",[1195]],[[1195,1195],\"valid\"],[[1196,1196],\"mapped\",[1197]],[[1197,1197],\"valid\"],[[1198,1198],\"mapped\",[1199]],[[1199,1199],\"valid\"],[[1200,1200],\"mapped\",[1201]],[[1201,1201],\"valid\"],[[1202,1202],\"mapped\",[1203]],[[1203,1203],\"valid\"],[[1204,1204],\"mapped\",[1205]],[[1205,1205],\"valid\"],[[1206,1206],\"mapped\",[1207]],[[1207,1207],\"valid\"],[[1208,1208],\"mapped\",[1209]],[[1209,1209],\"valid\"],[[1210,1210],\"mapped\",[1211]],[[1211,1211],\"valid\"],[[1212,1212],\"mapped\",[1213]],[[1213,1213],\"valid\"],[[1214,1214],\"mapped\",[1215]],[[1215,1215],\"valid\"],[[1216,1216],\"disallowed\"],[[1217,1217],\"mapped\",[1218]],[[1218,1218],\"valid\"],[[1219,1219],\"mapped\",[1220]],[[1220,1220],\"valid\"],[[1221,1221],\"mapped\",[1222]],[[1222,1222],\"valid\"],[[1223,1223],\"mapped\",[1224]],[[1224,1224],\"valid\"],[[1225,1225],\"mapped\",[1226]],[[1226,1226],\"valid\"],[[1227,1227],\"mapped\",[1228]],[[1228,1228],\"valid\"],[[1229,1229],\"mapped\",[1230]],[[1230,1230],\"valid\"],[[1231,1231],\"valid\"],[[1232,1232],\"mapped\",[1233]],[[1233,1233],\"valid\"],[[1234,1234],\"mapped\",[1235]],[[1235,1235],\"valid\"],[[1236,1236],\"mapped\",[1237]],[[1237,1237],\"valid\"],[[1238,1238],\"mapped\",[1239]],[[1239,1239],\"valid\"],[[1240,1240],\"mapped\",[1241]],[[1241,1241],\"valid\"],[[1242,1242],\"mapped\",[1243]],[[1243,1243],\"valid\"],[[1244,1244],\"mapped\",[1245]],[[1245,1245],\"valid\"],[[1246,1246],\"mapped\",[1247]],[[1247,1247],\"valid\"],[[1248,1248],\"mapped\",[1249]],[[1249,1249],\"valid\"],[[1250,1250],\"mapped\",[1251]],[[1251,1251],\"valid\"],[[1252,1252],\"mapped\",[1253]],[[1253,1253],\"valid\"],[[1254,1254],\"mapped\",[1255]],[[1255,1255],\"valid\"],[[1256,1256],\"mapped\",[1257]],[[1257,1257],\"valid\"],[[1258,1258],\"mapped\",[1259]],[[1259,1259],\"valid\"],[[1260,1260],\"mapped\",[1261]],[[1261,1261],\"valid\"],[[1262,1262],\"mapped\",[1263]],[[1263,1263],\"valid\"],[[1264,1264],\"mapped\",[1265]],[[1265,1265],\"valid\"],[[1266,1266],\"mapped\",[1267]],[[1267,1267],\"valid\"],[[1268,1268],\"mapped\",[1269]],[[1269,1269],\"valid\"],[[1270,1270],\"mapped\",[1271]],[[1271,1271],\"valid\"],[[1272,1272],\"mapped\",[1273]],[[1273,1273],\"valid\"],[[1274,1274],\"mapped\",[1275]],[[1275,1275],\"valid\"],[[1276,1276],\"mapped\",[1277]],[[1277,1277],\"valid\"],[[1278,1278],\"mapped\",[1279]],[[1279,1279],\"valid\"],[[1280,1280],\"mapped\",[1281]],[[1281,1281],\"valid\"],[[1282,1282],\"mapped\",[1283]],[[1283,1283],\"valid\"],[[1284,1284],\"mapped\",[1285]],[[1285,1285],\"valid\"],[[1286,1286],\"mapped\",[1287]],[[1287,1287],\"valid\"],[[1288,1288],\"mapped\",[1289]],[[1289,1289],\"valid\"],[[1290,1290],\"mapped\",[1291]],[[1291,1291],\"valid\"],[[1292,1292],\"mapped\",[1293]],[[1293,1293],\"valid\"],[[1294,1294],\"mapped\",[1295]],[[1295,1295],\"valid\"],[[1296,1296],\"mapped\",[1297]],[[1297,1297],\"valid\"],[[1298,1298],\"mapped\",[1299]],[[1299,1299],\"valid\"],[[1300,1300],\"mapped\",[1301]],[[1301,1301],\"valid\"],[[1302,1302],\"mapped\",[1303]],[[1303,1303],\"valid\"],[[1304,1304],\"mapped\",[1305]],[[1305,1305],\"valid\"],[[1306,1306],\"mapped\",[1307]],[[1307,1307],\"valid\"],[[1308,1308],\"mapped\",[1309]],[[1309,1309],\"valid\"],[[1310,1310],\"mapped\",[1311]],[[1311,1311],\"valid\"],[[1312,1312],\"mapped\",[1313]],[[1313,1313],\"valid\"],[[1314,1314],\"mapped\",[1315]],[[1315,1315],\"valid\"],[[1316,1316],\"mapped\",[1317]],[[1317,1317],\"valid\"],[[1318,1318],\"mapped\",[1319]],[[1319,1319],\"valid\"],[[1320,1320],\"mapped\",[1321]],[[1321,1321],\"valid\"],[[1322,1322],\"mapped\",[1323]],[[1323,1323],\"valid\"],[[1324,1324],\"mapped\",[1325]],[[1325,1325],\"valid\"],[[1326,1326],\"mapped\",[1327]],[[1327,1327],\"valid\"],[[1328,1328],\"disallowed\"],[[1329,1329],\"mapped\",[1377]],[[1330,1330],\"mapped\",[1378]],[[1331,1331],\"mapped\",[1379]],[[1332,1332],\"mapped\",[1380]],[[1333,1333],\"mapped\",[1381]],[[1334,1334],\"mapped\",[1382]],[[1335,1335],\"mapped\",[1383]],[[1336,1336],\"mapped\",[1384]],[[1337,1337],\"mapped\",[1385]],[[1338,1338],\"mapped\",[1386]],[[1339,1339],\"mapped\",[1387]],[[1340,1340],\"mapped\",[1388]],[[1341,1341],\"mapped\",[1389]],[[1342,1342],\"mapped\",[1390]],[[1343,1343],\"mapped\",[1391]],[[1344,1344],\"mapped\",[1392]],[[1345,1345],\"mapped\",[1393]],[[1346,1346],\"mapped\",[1394]],[[1347,1347],\"mapped\",[1395]],[[1348,1348],\"mapped\",[1396]],[[1349,1349],\"mapped\",[1397]],[[1350,1350],\"mapped\",[1398]],[[1351,1351],\"mapped\",[1399]],[[1352,1352],\"mapped\",[1400]],[[1353,1353],\"mapped\",[1401]],[[1354,1354],\"mapped\",[1402]],[[1355,1355],\"mapped\",[1403]],[[1356,1356],\"mapped\",[1404]],[[1357,1357],\"mapped\",[1405]],[[1358,1358],\"mapped\",[1406]],[[1359,1359],\"mapped\",[1407]],[[1360,1360],\"mapped\",[1408]],[[1361,1361],\"mapped\",[1409]],[[1362,1362],\"mapped\",[1410]],[[1363,1363],\"mapped\",[1411]],[[1364,1364],\"mapped\",[1412]],[[1365,1365],\"mapped\",[1413]],[[1366,1366],\"mapped\",[1414]],[[1367,1368],\"disallowed\"],[[1369,1369],\"valid\"],[[1370,1375],\"valid\",[],\"NV8\"],[[1376,1376],\"disallowed\"],[[1377,1414],\"valid\"],[[1415,1415],\"mapped\",[1381,1410]],[[1416,1416],\"disallowed\"],[[1417,1417],\"valid\",[],\"NV8\"],[[1418,1418],\"valid\",[],\"NV8\"],[[1419,1420],\"disallowed\"],[[1421,1422],\"valid\",[],\"NV8\"],[[1423,1423],\"valid\",[],\"NV8\"],[[1424,1424],\"disallowed\"],[[1425,1441],\"valid\"],[[1442,1442],\"valid\"],[[1443,1455],\"valid\"],[[1456,1465],\"valid\"],[[1466,1466],\"valid\"],[[1467,1469],\"valid\"],[[1470,1470],\"valid\",[],\"NV8\"],[[1471,1471],\"valid\"],[[1472,1472],\"valid\",[],\"NV8\"],[[1473,1474],\"valid\"],[[1475,1475],\"valid\",[],\"NV8\"],[[1476,1476],\"valid\"],[[1477,1477],\"valid\"],[[1478,1478],\"valid\",[],\"NV8\"],[[1479,1479],\"valid\"],[[1480,1487],\"disallowed\"],[[1488,1514],\"valid\"],[[1515,1519],\"disallowed\"],[[1520,1524],\"valid\"],[[1525,1535],\"disallowed\"],[[1536,1539],\"disallowed\"],[[1540,1540],\"disallowed\"],[[1541,1541],\"disallowed\"],[[1542,1546],\"valid\",[],\"NV8\"],[[1547,1547],\"valid\",[],\"NV8\"],[[1548,1548],\"valid\",[],\"NV8\"],[[1549,1551],\"valid\",[],\"NV8\"],[[1552,1557],\"valid\"],[[1558,1562],\"valid\"],[[1563,1563],\"valid\",[],\"NV8\"],[[1564,1564],\"disallowed\"],[[1565,1565],\"disallowed\"],[[1566,1566],\"valid\",[],\"NV8\"],[[1567,1567],\"valid\",[],\"NV8\"],[[1568,1568],\"valid\"],[[1569,1594],\"valid\"],[[1595,1599],\"valid\"],[[1600,1600],\"valid\",[],\"NV8\"],[[1601,1618],\"valid\"],[[1619,1621],\"valid\"],[[1622,1624],\"valid\"],[[1625,1630],\"valid\"],[[1631,1631],\"valid\"],[[1632,1641],\"valid\"],[[1642,1645],\"valid\",[],\"NV8\"],[[1646,1647],\"valid\"],[[1648,1652],\"valid\"],[[1653,1653],\"mapped\",[1575,1652]],[[1654,1654],\"mapped\",[1608,1652]],[[1655,1655],\"mapped\",[1735,1652]],[[1656,1656],\"mapped\",[1610,1652]],[[1657,1719],\"valid\"],[[1720,1721],\"valid\"],[[1722,1726],\"valid\"],[[1727,1727],\"valid\"],[[1728,1742],\"valid\"],[[1743,1743],\"valid\"],[[1744,1747],\"valid\"],[[1748,1748],\"valid\",[],\"NV8\"],[[1749,1756],\"valid\"],[[1757,1757],\"disallowed\"],[[1758,1758],\"valid\",[],\"NV8\"],[[1759,1768],\"valid\"],[[1769,1769],\"valid\",[],\"NV8\"],[[1770,1773],\"valid\"],[[1774,1775],\"valid\"],[[1776,1785],\"valid\"],[[1786,1790],\"valid\"],[[1791,1791],\"valid\"],[[1792,1805],\"valid\",[],\"NV8\"],[[1806,1806],\"disallowed\"],[[1807,1807],\"disallowed\"],[[1808,1836],\"valid\"],[[1837,1839],\"valid\"],[[1840,1866],\"valid\"],[[1867,1868],\"disallowed\"],[[1869,1871],\"valid\"],[[1872,1901],\"valid\"],[[1902,1919],\"valid\"],[[1920,1968],\"valid\"],[[1969,1969],\"valid\"],[[1970,1983],\"disallowed\"],[[1984,2037],\"valid\"],[[2038,2042],\"valid\",[],\"NV8\"],[[2043,2047],\"disallowed\"],[[2048,2093],\"valid\"],[[2094,2095],\"disallowed\"],[[2096,2110],\"valid\",[],\"NV8\"],[[2111,2111],\"disallowed\"],[[2112,2139],\"valid\"],[[2140,2141],\"disallowed\"],[[2142,2142],\"valid\",[],\"NV8\"],[[2143,2207],\"disallowed\"],[[2208,2208],\"valid\"],[[2209,2209],\"valid\"],[[2210,2220],\"valid\"],[[2221,2226],\"valid\"],[[2227,2228],\"valid\"],[[2229,2274],\"disallowed\"],[[2275,2275],\"valid\"],[[2276,2302],\"valid\"],[[2303,2303],\"valid\"],[[2304,2304],\"valid\"],[[2305,2307],\"valid\"],[[2308,2308],\"valid\"],[[2309,2361],\"valid\"],[[2362,2363],\"valid\"],[[2364,2381],\"valid\"],[[2382,2382],\"valid\"],[[2383,2383],\"valid\"],[[2384,2388],\"valid\"],[[2389,2389],\"valid\"],[[2390,2391],\"valid\"],[[2392,2392],\"mapped\",[2325,2364]],[[2393,2393],\"mapped\",[2326,2364]],[[2394,2394],\"mapped\",[2327,2364]],[[2395,2395],\"mapped\",[2332,2364]],[[2396,2396],\"mapped\",[2337,2364]],[[2397,2397],\"mapped\",[2338,2364]],[[2398,2398],\"mapped\",[2347,2364]],[[2399,2399],\"mapped\",[2351,2364]],[[2400,2403],\"valid\"],[[2404,2405],\"valid\",[],\"NV8\"],[[2406,2415],\"valid\"],[[2416,2416],\"valid\",[],\"NV8\"],[[2417,2418],\"valid\"],[[2419,2423],\"valid\"],[[2424,2424],\"valid\"],[[2425,2426],\"valid\"],[[2427,2428],\"valid\"],[[2429,2429],\"valid\"],[[2430,2431],\"valid\"],[[2432,2432],\"valid\"],[[2433,2435],\"valid\"],[[2436,2436],\"disallowed\"],[[2437,2444],\"valid\"],[[2445,2446],\"disallowed\"],[[2447,2448],\"valid\"],[[2449,2450],\"disallowed\"],[[2451,2472],\"valid\"],[[2473,2473],\"disallowed\"],[[2474,2480],\"valid\"],[[2481,2481],\"disallowed\"],[[2482,2482],\"valid\"],[[2483,2485],\"disallowed\"],[[2486,2489],\"valid\"],[[2490,2491],\"disallowed\"],[[2492,2492],\"valid\"],[[2493,2493],\"valid\"],[[2494,2500],\"valid\"],[[2501,2502],\"disallowed\"],[[2503,2504],\"valid\"],[[2505,2506],\"disallowed\"],[[2507,2509],\"valid\"],[[2510,2510],\"valid\"],[[2511,2518],\"disallowed\"],[[2519,2519],\"valid\"],[[2520,2523],\"disallowed\"],[[2524,2524],\"mapped\",[2465,2492]],[[2525,2525],\"mapped\",[2466,2492]],[[2526,2526],\"disallowed\"],[[2527,2527],\"mapped\",[2479,2492]],[[2528,2531],\"valid\"],[[2532,2533],\"disallowed\"],[[2534,2545],\"valid\"],[[2546,2554],\"valid\",[],\"NV8\"],[[2555,2555],\"valid\",[],\"NV8\"],[[2556,2560],\"disallowed\"],[[2561,2561],\"valid\"],[[2562,2562],\"valid\"],[[2563,2563],\"valid\"],[[2564,2564],\"disallowed\"],[[2565,2570],\"valid\"],[[2571,2574],\"disallowed\"],[[2575,2576],\"valid\"],[[2577,2578],\"disallowed\"],[[2579,2600],\"valid\"],[[2601,2601],\"disallowed\"],[[2602,2608],\"valid\"],[[2609,2609],\"disallowed\"],[[2610,2610],\"valid\"],[[2611,2611],\"mapped\",[2610,2620]],[[2612,2612],\"disallowed\"],[[2613,2613],\"valid\"],[[2614,2614],\"mapped\",[2616,2620]],[[2615,2615],\"disallowed\"],[[2616,2617],\"valid\"],[[2618,2619],\"disallowed\"],[[2620,2620],\"valid\"],[[2621,2621],\"disallowed\"],[[2622,2626],\"valid\"],[[2627,2630],\"disallowed\"],[[2631,2632],\"valid\"],[[2633,2634],\"disallowed\"],[[2635,2637],\"valid\"],[[2638,2640],\"disallowed\"],[[2641,2641],\"valid\"],[[2642,2648],\"disallowed\"],[[2649,2649],\"mapped\",[2582,2620]],[[2650,2650],\"mapped\",[2583,2620]],[[2651,2651],\"mapped\",[2588,2620]],[[2652,2652],\"valid\"],[[2653,2653],\"disallowed\"],[[2654,2654],\"mapped\",[2603,2620]],[[2655,2661],\"disallowed\"],[[2662,2676],\"valid\"],[[2677,2677],\"valid\"],[[2678,2688],\"disallowed\"],[[2689,2691],\"valid\"],[[2692,2692],\"disallowed\"],[[2693,2699],\"valid\"],[[2700,2700],\"valid\"],[[2701,2701],\"valid\"],[[2702,2702],\"disallowed\"],[[2703,2705],\"valid\"],[[2706,2706],\"disallowed\"],[[2707,2728],\"valid\"],[[2729,2729],\"disallowed\"],[[2730,2736],\"valid\"],[[2737,2737],\"disallowed\"],[[2738,2739],\"valid\"],[[2740,2740],\"disallowed\"],[[2741,2745],\"valid\"],[[2746,2747],\"disallowed\"],[[2748,2757],\"valid\"],[[2758,2758],\"disallowed\"],[[2759,2761],\"valid\"],[[2762,2762],\"disallowed\"],[[2763,2765],\"valid\"],[[2766,2767],\"disallowed\"],[[2768,2768],\"valid\"],[[2769,2783],\"disallowed\"],[[2784,2784],\"valid\"],[[2785,2787],\"valid\"],[[2788,2789],\"disallowed\"],[[2790,2799],\"valid\"],[[2800,2800],\"valid\",[],\"NV8\"],[[2801,2801],\"valid\",[],\"NV8\"],[[2802,2808],\"disallowed\"],[[2809,2809],\"valid\"],[[2810,2816],\"disallowed\"],[[2817,2819],\"valid\"],[[2820,2820],\"disallowed\"],[[2821,2828],\"valid\"],[[2829,2830],\"disallowed\"],[[2831,2832],\"valid\"],[[2833,2834],\"disallowed\"],[[2835,2856],\"valid\"],[[2857,2857],\"disallowed\"],[[2858,2864],\"valid\"],[[2865,2865],\"disallowed\"],[[2866,2867],\"valid\"],[[2868,2868],\"disallowed\"],[[2869,2869],\"valid\"],[[2870,2873],\"valid\"],[[2874,2875],\"disallowed\"],[[2876,2883],\"valid\"],[[2884,2884],\"valid\"],[[2885,2886],\"disallowed\"],[[2887,2888],\"valid\"],[[2889,2890],\"disallowed\"],[[2891,2893],\"valid\"],[[2894,2901],\"disallowed\"],[[2902,2903],\"valid\"],[[2904,2907],\"disallowed\"],[[2908,2908],\"mapped\",[2849,2876]],[[2909,2909],\"mapped\",[2850,2876]],[[2910,2910],\"disallowed\"],[[2911,2913],\"valid\"],[[2914,2915],\"valid\"],[[2916,2917],\"disallowed\"],[[2918,2927],\"valid\"],[[2928,2928],\"valid\",[],\"NV8\"],[[2929,2929],\"valid\"],[[2930,2935],\"valid\",[],\"NV8\"],[[2936,2945],\"disallowed\"],[[2946,2947],\"valid\"],[[2948,2948],\"disallowed\"],[[2949,2954],\"valid\"],[[2955,2957],\"disallowed\"],[[2958,2960],\"valid\"],[[2961,2961],\"disallowed\"],[[2962,2965],\"valid\"],[[2966,2968],\"disallowed\"],[[2969,2970],\"valid\"],[[2971,2971],\"disallowed\"],[[2972,2972],\"valid\"],[[2973,2973],\"disallowed\"],[[2974,2975],\"valid\"],[[2976,2978],\"disallowed\"],[[2979,2980],\"valid\"],[[2981,2983],\"disallowed\"],[[2984,2986],\"valid\"],[[2987,2989],\"disallowed\"],[[2990,2997],\"valid\"],[[2998,2998],\"valid\"],[[2999,3001],\"valid\"],[[3002,3005],\"disallowed\"],[[3006,3010],\"valid\"],[[3011,3013],\"disallowed\"],[[3014,3016],\"valid\"],[[3017,3017],\"disallowed\"],[[3018,3021],\"valid\"],[[3022,3023],\"disallowed\"],[[3024,3024],\"valid\"],[[3025,3030],\"disallowed\"],[[3031,3031],\"valid\"],[[3032,3045],\"disallowed\"],[[3046,3046],\"valid\"],[[3047,3055],\"valid\"],[[3056,3058],\"valid\",[],\"NV8\"],[[3059,3066],\"valid\",[],\"NV8\"],[[3067,3071],\"disallowed\"],[[3072,3072],\"valid\"],[[3073,3075],\"valid\"],[[3076,3076],\"disallowed\"],[[3077,3084],\"valid\"],[[3085,3085],\"disallowed\"],[[3086,3088],\"valid\"],[[3089,3089],\"disallowed\"],[[3090,3112],\"valid\"],[[3113,3113],\"disallowed\"],[[3114,3123],\"valid\"],[[3124,3124],\"valid\"],[[3125,3129],\"valid\"],[[3130,3132],\"disallowed\"],[[3133,3133],\"valid\"],[[3134,3140],\"valid\"],[[3141,3141],\"disallowed\"],[[3142,3144],\"valid\"],[[3145,3145],\"disallowed\"],[[3146,3149],\"valid\"],[[3150,3156],\"disallowed\"],[[3157,3158],\"valid\"],[[3159,3159],\"disallowed\"],[[3160,3161],\"valid\"],[[3162,3162],\"valid\"],[[3163,3167],\"disallowed\"],[[3168,3169],\"valid\"],[[3170,3171],\"valid\"],[[3172,3173],\"disallowed\"],[[3174,3183],\"valid\"],[[3184,3191],\"disallowed\"],[[3192,3199],\"valid\",[],\"NV8\"],[[3200,3200],\"disallowed\"],[[3201,3201],\"valid\"],[[3202,3203],\"valid\"],[[3204,3204],\"disallowed\"],[[3205,3212],\"valid\"],[[3213,3213],\"disallowed\"],[[3214,3216],\"valid\"],[[3217,3217],\"disallowed\"],[[3218,3240],\"valid\"],[[3241,3241],\"disallowed\"],[[3242,3251],\"valid\"],[[3252,3252],\"disallowed\"],[[3253,3257],\"valid\"],[[3258,3259],\"disallowed\"],[[3260,3261],\"valid\"],[[3262,3268],\"valid\"],[[3269,3269],\"disallowed\"],[[3270,3272],\"valid\"],[[3273,3273],\"disallowed\"],[[3274,3277],\"valid\"],[[3278,3284],\"disallowed\"],[[3285,3286],\"valid\"],[[3287,3293],\"disallowed\"],[[3294,3294],\"valid\"],[[3295,3295],\"disallowed\"],[[3296,3297],\"valid\"],[[3298,3299],\"valid\"],[[3300,3301],\"disallowed\"],[[3302,3311],\"valid\"],[[3312,3312],\"disallowed\"],[[3313,3314],\"valid\"],[[3315,3328],\"disallowed\"],[[3329,3329],\"valid\"],[[3330,3331],\"valid\"],[[3332,3332],\"disallowed\"],[[3333,3340],\"valid\"],[[3341,3341],\"disallowed\"],[[3342,3344],\"valid\"],[[3345,3345],\"disallowed\"],[[3346,3368],\"valid\"],[[3369,3369],\"valid\"],[[3370,3385],\"valid\"],[[3386,3386],\"valid\"],[[3387,3388],\"disallowed\"],[[3389,3389],\"valid\"],[[3390,3395],\"valid\"],[[3396,3396],\"valid\"],[[3397,3397],\"disallowed\"],[[3398,3400],\"valid\"],[[3401,3401],\"disallowed\"],[[3402,3405],\"valid\"],[[3406,3406],\"valid\"],[[3407,3414],\"disallowed\"],[[3415,3415],\"valid\"],[[3416,3422],\"disallowed\"],[[3423,3423],\"valid\"],[[3424,3425],\"valid\"],[[3426,3427],\"valid\"],[[3428,3429],\"disallowed\"],[[3430,3439],\"valid\"],[[3440,3445],\"valid\",[],\"NV8\"],[[3446,3448],\"disallowed\"],[[3449,3449],\"valid\",[],\"NV8\"],[[3450,3455],\"valid\"],[[3456,3457],\"disallowed\"],[[3458,3459],\"valid\"],[[3460,3460],\"disallowed\"],[[3461,3478],\"valid\"],[[3479,3481],\"disallowed\"],[[3482,3505],\"valid\"],[[3506,3506],\"disallowed\"],[[3507,3515],\"valid\"],[[3516,3516],\"disallowed\"],[[3517,3517],\"valid\"],[[3518,3519],\"disallowed\"],[[3520,3526],\"valid\"],[[3527,3529],\"disallowed\"],[[3530,3530],\"valid\"],[[3531,3534],\"disallowed\"],[[3535,3540],\"valid\"],[[3541,3541],\"disallowed\"],[[3542,3542],\"valid\"],[[3543,3543],\"disallowed\"],[[3544,3551],\"valid\"],[[3552,3557],\"disallowed\"],[[3558,3567],\"valid\"],[[3568,3569],\"disallowed\"],[[3570,3571],\"valid\"],[[3572,3572],\"valid\",[],\"NV8\"],[[3573,3584],\"disallowed\"],[[3585,3634],\"valid\"],[[3635,3635],\"mapped\",[3661,3634]],[[3636,3642],\"valid\"],[[3643,3646],\"disallowed\"],[[3647,3647],\"valid\",[],\"NV8\"],[[3648,3662],\"valid\"],[[3663,3663],\"valid\",[],\"NV8\"],[[3664,3673],\"valid\"],[[3674,3675],\"valid\",[],\"NV8\"],[[3676,3712],\"disallowed\"],[[3713,3714],\"valid\"],[[3715,3715],\"disallowed\"],[[3716,3716],\"valid\"],[[3717,3718],\"disallowed\"],[[3719,3720],\"valid\"],[[3721,3721],\"disallowed\"],[[3722,3722],\"valid\"],[[3723,3724],\"disallowed\"],[[3725,3725],\"valid\"],[[3726,3731],\"disallowed\"],[[3732,3735],\"valid\"],[[3736,3736],\"disallowed\"],[[3737,3743],\"valid\"],[[3744,3744],\"disallowed\"],[[3745,3747],\"valid\"],[[3748,3748],\"disallowed\"],[[3749,3749],\"valid\"],[[3750,3750],\"disallowed\"],[[3751,3751],\"valid\"],[[3752,3753],\"disallowed\"],[[3754,3755],\"valid\"],[[3756,3756],\"disallowed\"],[[3757,3762],\"valid\"],[[3763,3763],\"mapped\",[3789,3762]],[[3764,3769],\"valid\"],[[3770,3770],\"disallowed\"],[[3771,3773],\"valid\"],[[3774,3775],\"disallowed\"],[[3776,3780],\"valid\"],[[3781,3781],\"disallowed\"],[[3782,3782],\"valid\"],[[3783,3783],\"disallowed\"],[[3784,3789],\"valid\"],[[3790,3791],\"disallowed\"],[[3792,3801],\"valid\"],[[3802,3803],\"disallowed\"],[[3804,3804],\"mapped\",[3755,3737]],[[3805,3805],\"mapped\",[3755,3745]],[[3806,3807],\"valid\"],[[3808,3839],\"disallowed\"],[[3840,3840],\"valid\"],[[3841,3850],\"valid\",[],\"NV8\"],[[3851,3851],\"valid\"],[[3852,3852],\"mapped\",[3851]],[[3853,3863],\"valid\",[],\"NV8\"],[[3864,3865],\"valid\"],[[3866,3871],\"valid\",[],\"NV8\"],[[3872,3881],\"valid\"],[[3882,3892],\"valid\",[],\"NV8\"],[[3893,3893],\"valid\"],[[3894,3894],\"valid\",[],\"NV8\"],[[3895,3895],\"valid\"],[[3896,3896],\"valid\",[],\"NV8\"],[[3897,3897],\"valid\"],[[3898,3901],\"valid\",[],\"NV8\"],[[3902,3906],\"valid\"],[[3907,3907],\"mapped\",[3906,4023]],[[3908,3911],\"valid\"],[[3912,3912],\"disallowed\"],[[3913,3916],\"valid\"],[[3917,3917],\"mapped\",[3916,4023]],[[3918,3921],\"valid\"],[[3922,3922],\"mapped\",[3921,4023]],[[3923,3926],\"valid\"],[[3927,3927],\"mapped\",[3926,4023]],[[3928,3931],\"valid\"],[[3932,3932],\"mapped\",[3931,4023]],[[3933,3944],\"valid\"],[[3945,3945],\"mapped\",[3904,4021]],[[3946,3946],\"valid\"],[[3947,3948],\"valid\"],[[3949,3952],\"disallowed\"],[[3953,3954],\"valid\"],[[3955,3955],\"mapped\",[3953,3954]],[[3956,3956],\"valid\"],[[3957,3957],\"mapped\",[3953,3956]],[[3958,3958],\"mapped\",[4018,3968]],[[3959,3959],\"mapped\",[4018,3953,3968]],[[3960,3960],\"mapped\",[4019,3968]],[[3961,3961],\"mapped\",[4019,3953,3968]],[[3962,3968],\"valid\"],[[3969,3969],\"mapped\",[3953,3968]],[[3970,3972],\"valid\"],[[3973,3973],\"valid\",[],\"NV8\"],[[3974,3979],\"valid\"],[[3980,3983],\"valid\"],[[3984,3986],\"valid\"],[[3987,3987],\"mapped\",[3986,4023]],[[3988,3989],\"valid\"],[[3990,3990],\"valid\"],[[3991,3991],\"valid\"],[[3992,3992],\"disallowed\"],[[3993,3996],\"valid\"],[[3997,3997],\"mapped\",[3996,4023]],[[3998,4001],\"valid\"],[[4002,4002],\"mapped\",[4001,4023]],[[4003,4006],\"valid\"],[[4007,4007],\"mapped\",[4006,4023]],[[4008,4011],\"valid\"],[[4012,4012],\"mapped\",[4011,4023]],[[4013,4013],\"valid\"],[[4014,4016],\"valid\"],[[4017,4023],\"valid\"],[[4024,4024],\"valid\"],[[4025,4025],\"mapped\",[3984,4021]],[[4026,4028],\"valid\"],[[4029,4029],\"disallowed\"],[[4030,4037],\"valid\",[],\"NV8\"],[[4038,4038],\"valid\"],[[4039,4044],\"valid\",[],\"NV8\"],[[4045,4045],\"disallowed\"],[[4046,4046],\"valid\",[],\"NV8\"],[[4047,4047],\"valid\",[],\"NV8\"],[[4048,4049],\"valid\",[],\"NV8\"],[[4050,4052],\"valid\",[],\"NV8\"],[[4053,4056],\"valid\",[],\"NV8\"],[[4057,4058],\"valid\",[],\"NV8\"],[[4059,4095],\"disallowed\"],[[4096,4129],\"valid\"],[[4130,4130],\"valid\"],[[4131,4135],\"valid\"],[[4136,4136],\"valid\"],[[4137,4138],\"valid\"],[[4139,4139],\"valid\"],[[4140,4146],\"valid\"],[[4147,4149],\"valid\"],[[4150,4153],\"valid\"],[[4154,4159],\"valid\"],[[4160,4169],\"valid\"],[[4170,4175],\"valid\",[],\"NV8\"],[[4176,4185],\"valid\"],[[4186,4249],\"valid\"],[[4250,4253],\"valid\"],[[4254,4255],\"valid\",[],\"NV8\"],[[4256,4293],\"disallowed\"],[[4294,4294],\"disallowed\"],[[4295,4295],\"mapped\",[11559]],[[4296,4300],\"disallowed\"],[[4301,4301],\"mapped\",[11565]],[[4302,4303],\"disallowed\"],[[4304,4342],\"valid\"],[[4343,4344],\"valid\"],[[4345,4346],\"valid\"],[[4347,4347],\"valid\",[],\"NV8\"],[[4348,4348],\"mapped\",[4316]],[[4349,4351],\"valid\"],[[4352,4441],\"valid\",[],\"NV8\"],[[4442,4446],\"valid\",[],\"NV8\"],[[4447,4448],\"disallowed\"],[[4449,4514],\"valid\",[],\"NV8\"],[[4515,4519],\"valid\",[],\"NV8\"],[[4520,4601],\"valid\",[],\"NV8\"],[[4602,4607],\"valid\",[],\"NV8\"],[[4608,4614],\"valid\"],[[4615,4615],\"valid\"],[[4616,4678],\"valid\"],[[4679,4679],\"valid\"],[[4680,4680],\"valid\"],[[4681,4681],\"disallowed\"],[[4682,4685],\"valid\"],[[4686,4687],\"disallowed\"],[[4688,4694],\"valid\"],[[4695,4695],\"disallowed\"],[[4696,4696],\"valid\"],[[4697,4697],\"disallowed\"],[[4698,4701],\"valid\"],[[4702,4703],\"disallowed\"],[[4704,4742],\"valid\"],[[4743,4743],\"valid\"],[[4744,4744],\"valid\"],[[4745,4745],\"disallowed\"],[[4746,4749],\"valid\"],[[4750,4751],\"disallowed\"],[[4752,4782],\"valid\"],[[4783,4783],\"valid\"],[[4784,4784],\"valid\"],[[4785,4785],\"disallowed\"],[[4786,4789],\"valid\"],[[4790,4791],\"disallowed\"],[[4792,4798],\"valid\"],[[4799,4799],\"disallowed\"],[[4800,4800],\"valid\"],[[4801,4801],\"disallowed\"],[[4802,4805],\"valid\"],[[4806,4807],\"disallowed\"],[[4808,4814],\"valid\"],[[4815,4815],\"valid\"],[[4816,4822],\"valid\"],[[4823,4823],\"disallowed\"],[[4824,4846],\"valid\"],[[4847,4847],\"valid\"],[[4848,4878],\"valid\"],[[4879,4879],\"valid\"],[[4880,4880],\"valid\"],[[4881,4881],\"disallowed\"],[[4882,4885],\"valid\"],[[4886,4887],\"disallowed\"],[[4888,4894],\"valid\"],[[4895,4895],\"valid\"],[[4896,4934],\"valid\"],[[4935,4935],\"valid\"],[[4936,4954],\"valid\"],[[4955,4956],\"disallowed\"],[[4957,4958],\"valid\"],[[4959,4959],\"valid\"],[[4960,4960],\"valid\",[],\"NV8\"],[[4961,4988],\"valid\",[],\"NV8\"],[[4989,4991],\"disallowed\"],[[4992,5007],\"valid\"],[[5008,5017],\"valid\",[],\"NV8\"],[[5018,5023],\"disallowed\"],[[5024,5108],\"valid\"],[[5109,5109],\"valid\"],[[5110,5111],\"disallowed\"],[[5112,5112],\"mapped\",[5104]],[[5113,5113],\"mapped\",[5105]],[[5114,5114],\"mapped\",[5106]],[[5115,5115],\"mapped\",[5107]],[[5116,5116],\"mapped\",[5108]],[[5117,5117],\"mapped\",[5109]],[[5118,5119],\"disallowed\"],[[5120,5120],\"valid\",[],\"NV8\"],[[5121,5740],\"valid\"],[[5741,5742],\"valid\",[],\"NV8\"],[[5743,5750],\"valid\"],[[5751,5759],\"valid\"],[[5760,5760],\"disallowed\"],[[5761,5786],\"valid\"],[[5787,5788],\"valid\",[],\"NV8\"],[[5789,5791],\"disallowed\"],[[5792,5866],\"valid\"],[[5867,5872],\"valid\",[],\"NV8\"],[[5873,5880],\"valid\"],[[5881,5887],\"disallowed\"],[[5888,5900],\"valid\"],[[5901,5901],\"disallowed\"],[[5902,5908],\"valid\"],[[5909,5919],\"disallowed\"],[[5920,5940],\"valid\"],[[5941,5942],\"valid\",[],\"NV8\"],[[5943,5951],\"disallowed\"],[[5952,5971],\"valid\"],[[5972,5983],\"disallowed\"],[[5984,5996],\"valid\"],[[5997,5997],\"disallowed\"],[[5998,6000],\"valid\"],[[6001,6001],\"disallowed\"],[[6002,6003],\"valid\"],[[6004,6015],\"disallowed\"],[[6016,6067],\"valid\"],[[6068,6069],\"disallowed\"],[[6070,6099],\"valid\"],[[6100,6102],\"valid\",[],\"NV8\"],[[6103,6103],\"valid\"],[[6104,6107],\"valid\",[],\"NV8\"],[[6108,6108],\"valid\"],[[6109,6109],\"valid\"],[[6110,6111],\"disallowed\"],[[6112,6121],\"valid\"],[[6122,6127],\"disallowed\"],[[6128,6137],\"valid\",[],\"NV8\"],[[6138,6143],\"disallowed\"],[[6144,6149],\"valid\",[],\"NV8\"],[[6150,6150],\"disallowed\"],[[6151,6154],\"valid\",[],\"NV8\"],[[6155,6157],\"ignored\"],[[6158,6158],\"disallowed\"],[[6159,6159],\"disallowed\"],[[6160,6169],\"valid\"],[[6170,6175],\"disallowed\"],[[6176,6263],\"valid\"],[[6264,6271],\"disallowed\"],[[6272,6313],\"valid\"],[[6314,6314],\"valid\"],[[6315,6319],\"disallowed\"],[[6320,6389],\"valid\"],[[6390,6399],\"disallowed\"],[[6400,6428],\"valid\"],[[6429,6430],\"valid\"],[[6431,6431],\"disallowed\"],[[6432,6443],\"valid\"],[[6444,6447],\"disallowed\"],[[6448,6459],\"valid\"],[[6460,6463],\"disallowed\"],[[6464,6464],\"valid\",[],\"NV8\"],[[6465,6467],\"disallowed\"],[[6468,6469],\"valid\",[],\"NV8\"],[[6470,6509],\"valid\"],[[6510,6511],\"disallowed\"],[[6512,6516],\"valid\"],[[6517,6527],\"disallowed\"],[[6528,6569],\"valid\"],[[6570,6571],\"valid\"],[[6572,6575],\"disallowed\"],[[6576,6601],\"valid\"],[[6602,6607],\"disallowed\"],[[6608,6617],\"valid\"],[[6618,6618],\"valid\",[],\"XV8\"],[[6619,6621],\"disallowed\"],[[6622,6623],\"valid\",[],\"NV8\"],[[6624,6655],\"valid\",[],\"NV8\"],[[6656,6683],\"valid\"],[[6684,6685],\"disallowed\"],[[6686,6687],\"valid\",[],\"NV8\"],[[6688,6750],\"valid\"],[[6751,6751],\"disallowed\"],[[6752,6780],\"valid\"],[[6781,6782],\"disallowed\"],[[6783,6793],\"valid\"],[[6794,6799],\"disallowed\"],[[6800,6809],\"valid\"],[[6810,6815],\"disallowed\"],[[6816,6822],\"valid\",[],\"NV8\"],[[6823,6823],\"valid\"],[[6824,6829],\"valid\",[],\"NV8\"],[[6830,6831],\"disallowed\"],[[6832,6845],\"valid\"],[[6846,6846],\"valid\",[],\"NV8\"],[[6847,6911],\"disallowed\"],[[6912,6987],\"valid\"],[[6988,6991],\"disallowed\"],[[6992,7001],\"valid\"],[[7002,7018],\"valid\",[],\"NV8\"],[[7019,7027],\"valid\"],[[7028,7036],\"valid\",[],\"NV8\"],[[7037,7039],\"disallowed\"],[[7040,7082],\"valid\"],[[7083,7085],\"valid\"],[[7086,7097],\"valid\"],[[7098,7103],\"valid\"],[[7104,7155],\"valid\"],[[7156,7163],\"disallowed\"],[[7164,7167],\"valid\",[],\"NV8\"],[[7168,7223],\"valid\"],[[7224,7226],\"disallowed\"],[[7227,7231],\"valid\",[],\"NV8\"],[[7232,7241],\"valid\"],[[7242,7244],\"disallowed\"],[[7245,7293],\"valid\"],[[7294,7295],\"valid\",[],\"NV8\"],[[7296,7359],\"disallowed\"],[[7360,7367],\"valid\",[],\"NV8\"],[[7368,7375],\"disallowed\"],[[7376,7378],\"valid\"],[[7379,7379],\"valid\",[],\"NV8\"],[[7380,7410],\"valid\"],[[7411,7414],\"valid\"],[[7415,7415],\"disallowed\"],[[7416,7417],\"valid\"],[[7418,7423],\"disallowed\"],[[7424,7467],\"valid\"],[[7468,7468],\"mapped\",[97]],[[7469,7469],\"mapped\",[230]],[[7470,7470],\"mapped\",[98]],[[7471,7471],\"valid\"],[[7472,7472],\"mapped\",[100]],[[7473,7473],\"mapped\",[101]],[[7474,7474],\"mapped\",[477]],[[7475,7475],\"mapped\",[103]],[[7476,7476],\"mapped\",[104]],[[7477,7477],\"mapped\",[105]],[[7478,7478],\"mapped\",[106]],[[7479,7479],\"mapped\",[107]],[[7480,7480],\"mapped\",[108]],[[7481,7481],\"mapped\",[109]],[[7482,7482],\"mapped\",[110]],[[7483,7483],\"valid\"],[[7484,7484],\"mapped\",[111]],[[7485,7485],\"mapped\",[547]],[[7486,7486],\"mapped\",[112]],[[7487,7487],\"mapped\",[114]],[[7488,7488],\"mapped\",[116]],[[7489,7489],\"mapped\",[117]],[[7490,7490],\"mapped\",[119]],[[7491,7491],\"mapped\",[97]],[[7492,7492],\"mapped\",[592]],[[7493,7493],\"mapped\",[593]],[[7494,7494],\"mapped\",[7426]],[[7495,7495],\"mapped\",[98]],[[7496,7496],\"mapped\",[100]],[[7497,7497],\"mapped\",[101]],[[7498,7498],\"mapped\",[601]],[[7499,7499],\"mapped\",[603]],[[7500,7500],\"mapped\",[604]],[[7501,7501],\"mapped\",[103]],[[7502,7502],\"valid\"],[[7503,7503],\"mapped\",[107]],[[7504,7504],\"mapped\",[109]],[[7505,7505],\"mapped\",[331]],[[7506,7506],\"mapped\",[111]],[[7507,7507],\"mapped\",[596]],[[7508,7508],\"mapped\",[7446]],[[7509,7509],\"mapped\",[7447]],[[7510,7510],\"mapped\",[112]],[[7511,7511],\"mapped\",[116]],[[7512,7512],\"mapped\",[117]],[[7513,7513],\"mapped\",[7453]],[[7514,7514],\"mapped\",[623]],[[7515,7515],\"mapped\",[118]],[[7516,7516],\"mapped\",[7461]],[[7517,7517],\"mapped\",[946]],[[7518,7518],\"mapped\",[947]],[[7519,7519],\"mapped\",[948]],[[7520,7520],\"mapped\",[966]],[[7521,7521],\"mapped\",[967]],[[7522,7522],\"mapped\",[105]],[[7523,7523],\"mapped\",[114]],[[7524,7524],\"mapped\",[117]],[[7525,7525],\"mapped\",[118]],[[7526,7526],\"mapped\",[946]],[[7527,7527],\"mapped\",[947]],[[7528,7528],\"mapped\",[961]],[[7529,7529],\"mapped\",[966]],[[7530,7530],\"mapped\",[967]],[[7531,7531],\"valid\"],[[7532,7543],\"valid\"],[[7544,7544],\"mapped\",[1085]],[[7545,7578],\"valid\"],[[7579,7579],\"mapped\",[594]],[[7580,7580],\"mapped\",[99]],[[7581,7581],\"mapped\",[597]],[[7582,7582],\"mapped\",[240]],[[7583,7583],\"mapped\",[604]],[[7584,7584],\"mapped\",[102]],[[7585,7585],\"mapped\",[607]],[[7586,7586],\"mapped\",[609]],[[7587,7587],\"mapped\",[613]],[[7588,7588],\"mapped\",[616]],[[7589,7589],\"mapped\",[617]],[[7590,7590],\"mapped\",[618]],[[7591,7591],\"mapped\",[7547]],[[7592,7592],\"mapped\",[669]],[[7593,7593],\"mapped\",[621]],[[7594,7594],\"mapped\",[7557]],[[7595,7595],\"mapped\",[671]],[[7596,7596],\"mapped\",[625]],[[7597,7597],\"mapped\",[624]],[[7598,7598],\"mapped\",[626]],[[7599,7599],\"mapped\",[627]],[[7600,7600],\"mapped\",[628]],[[7601,7601],\"mapped\",[629]],[[7602,7602],\"mapped\",[632]],[[7603,7603],\"mapped\",[642]],[[7604,7604],\"mapped\",[643]],[[7605,7605],\"mapped\",[427]],[[7606,7606],\"mapped\",[649]],[[7607,7607],\"mapped\",[650]],[[7608,7608],\"mapped\",[7452]],[[7609,7609],\"mapped\",[651]],[[7610,7610],\"mapped\",[652]],[[7611,7611],\"mapped\",[122]],[[7612,7612],\"mapped\",[656]],[[7613,7613],\"mapped\",[657]],[[7614,7614],\"mapped\",[658]],[[7615,7615],\"mapped\",[952]],[[7616,7619],\"valid\"],[[7620,7626],\"valid\"],[[7627,7654],\"valid\"],[[7655,7669],\"valid\"],[[7670,7675],\"disallowed\"],[[7676,7676],\"valid\"],[[7677,7677],\"valid\"],[[7678,7679],\"valid\"],[[7680,7680],\"mapped\",[7681]],[[7681,7681],\"valid\"],[[7682,7682],\"mapped\",[7683]],[[7683,7683],\"valid\"],[[7684,7684],\"mapped\",[7685]],[[7685,7685],\"valid\"],[[7686,7686],\"mapped\",[7687]],[[7687,7687],\"valid\"],[[7688,7688],\"mapped\",[7689]],[[7689,7689],\"valid\"],[[7690,7690],\"mapped\",[7691]],[[7691,7691],\"valid\"],[[7692,7692],\"mapped\",[7693]],[[7693,7693],\"valid\"],[[7694,7694],\"mapped\",[7695]],[[7695,7695],\"valid\"],[[7696,7696],\"mapped\",[7697]],[[7697,7697],\"valid\"],[[7698,7698],\"mapped\",[7699]],[[7699,7699],\"valid\"],[[7700,7700],\"mapped\",[7701]],[[7701,7701],\"valid\"],[[7702,7702],\"mapped\",[7703]],[[7703,7703],\"valid\"],[[7704,7704],\"mapped\",[7705]],[[7705,7705],\"valid\"],[[7706,7706],\"mapped\",[7707]],[[7707,7707],\"valid\"],[[7708,7708],\"mapped\",[7709]],[[7709,7709],\"valid\"],[[7710,7710],\"mapped\",[7711]],[[7711,7711],\"valid\"],[[7712,7712],\"mapped\",[7713]],[[7713,7713],\"valid\"],[[7714,7714],\"mapped\",[7715]],[[7715,7715],\"valid\"],[[7716,7716],\"mapped\",[7717]],[[7717,7717],\"valid\"],[[7718,7718],\"mapped\",[7719]],[[7719,7719],\"valid\"],[[7720,7720],\"mapped\",[7721]],[[7721,7721],\"valid\"],[[7722,7722],\"mapped\",[7723]],[[7723,7723],\"valid\"],[[7724,7724],\"mapped\",[7725]],[[7725,7725],\"valid\"],[[7726,7726],\"mapped\",[7727]],[[7727,7727],\"valid\"],[[7728,7728],\"mapped\",[7729]],[[7729,7729],\"valid\"],[[7730,7730],\"mapped\",[7731]],[[7731,7731],\"valid\"],[[7732,7732],\"mapped\",[7733]],[[7733,7733],\"valid\"],[[7734,7734],\"mapped\",[7735]],[[7735,7735],\"valid\"],[[7736,7736],\"mapped\",[7737]],[[7737,7737],\"valid\"],[[7738,7738],\"mapped\",[7739]],[[7739,7739],\"valid\"],[[7740,7740],\"mapped\",[7741]],[[7741,7741],\"valid\"],[[7742,7742],\"mapped\",[7743]],[[7743,7743],\"valid\"],[[7744,7744],\"mapped\",[7745]],[[7745,7745],\"valid\"],[[7746,7746],\"mapped\",[7747]],[[7747,7747],\"valid\"],[[7748,7748],\"mapped\",[7749]],[[7749,7749],\"valid\"],[[7750,7750],\"mapped\",[7751]],[[7751,7751],\"valid\"],[[7752,7752],\"mapped\",[7753]],[[7753,7753],\"valid\"],[[7754,7754],\"mapped\",[7755]],[[7755,7755],\"valid\"],[[7756,7756],\"mapped\",[7757]],[[7757,7757],\"valid\"],[[7758,7758],\"mapped\",[7759]],[[7759,7759],\"valid\"],[[7760,7760],\"mapped\",[7761]],[[7761,7761],\"valid\"],[[7762,7762],\"mapped\",[7763]],[[7763,7763],\"valid\"],[[7764,7764],\"mapped\",[7765]],[[7765,7765],\"valid\"],[[7766,7766],\"mapped\",[7767]],[[7767,7767],\"valid\"],[[7768,7768],\"mapped\",[7769]],[[7769,7769],\"valid\"],[[7770,7770],\"mapped\",[7771]],[[7771,7771],\"valid\"],[[7772,7772],\"mapped\",[7773]],[[7773,7773],\"valid\"],[[7774,7774],\"mapped\",[7775]],[[7775,7775],\"valid\"],[[7776,7776],\"mapped\",[7777]],[[7777,7777],\"valid\"],[[7778,7778],\"mapped\",[7779]],[[7779,7779],\"valid\"],[[7780,7780],\"mapped\",[7781]],[[7781,7781],\"valid\"],[[7782,7782],\"mapped\",[7783]],[[7783,7783],\"valid\"],[[7784,7784],\"mapped\",[7785]],[[7785,7785],\"valid\"],[[7786,7786],\"mapped\",[7787]],[[7787,7787],\"valid\"],[[7788,7788],\"mapped\",[7789]],[[7789,7789],\"valid\"],[[7790,7790],\"mapped\",[7791]],[[7791,7791],\"valid\"],[[7792,7792],\"mapped\",[7793]],[[7793,7793],\"valid\"],[[7794,7794],\"mapped\",[7795]],[[7795,7795],\"valid\"],[[7796,7796],\"mapped\",[7797]],[[7797,7797],\"valid\"],[[7798,7798],\"mapped\",[7799]],[[7799,7799],\"valid\"],[[7800,7800],\"mapped\",[7801]],[[7801,7801],\"valid\"],[[7802,7802],\"mapped\",[7803]],[[7803,7803],\"valid\"],[[7804,7804],\"mapped\",[7805]],[[7805,7805],\"valid\"],[[7806,7806],\"mapped\",[7807]],[[7807,7807],\"valid\"],[[7808,7808],\"mapped\",[7809]],[[7809,7809],\"valid\"],[[7810,7810],\"mapped\",[7811]],[[7811,7811],\"valid\"],[[7812,7812],\"mapped\",[7813]],[[7813,7813],\"valid\"],[[7814,7814],\"mapped\",[7815]],[[7815,7815],\"valid\"],[[7816,7816],\"mapped\",[7817]],[[7817,7817],\"valid\"],[[7818,7818],\"mapped\",[7819]],[[7819,7819],\"valid\"],[[7820,7820],\"mapped\",[7821]],[[7821,7821],\"valid\"],[[7822,7822],\"mapped\",[7823]],[[7823,7823],\"valid\"],[[7824,7824],\"mapped\",[7825]],[[7825,7825],\"valid\"],[[7826,7826],\"mapped\",[7827]],[[7827,7827],\"valid\"],[[7828,7828],\"mapped\",[7829]],[[7829,7833],\"valid\"],[[7834,7834],\"mapped\",[97,702]],[[7835,7835],\"mapped\",[7777]],[[7836,7837],\"valid\"],[[7838,7838],\"mapped\",[115,115]],[[7839,7839],\"valid\"],[[7840,7840],\"mapped\",[7841]],[[7841,7841],\"valid\"],[[7842,7842],\"mapped\",[7843]],[[7843,7843],\"valid\"],[[7844,7844],\"mapped\",[7845]],[[7845,7845],\"valid\"],[[7846,7846],\"mapped\",[7847]],[[7847,7847],\"valid\"],[[7848,7848],\"mapped\",[7849]],[[7849,7849],\"valid\"],[[7850,7850],\"mapped\",[7851]],[[7851,7851],\"valid\"],[[7852,7852],\"mapped\",[7853]],[[7853,7853],\"valid\"],[[7854,7854],\"mapped\",[7855]],[[7855,7855],\"valid\"],[[7856,7856],\"mapped\",[7857]],[[7857,7857],\"valid\"],[[7858,7858],\"mapped\",[7859]],[[7859,7859],\"valid\"],[[7860,7860],\"mapped\",[7861]],[[7861,7861],\"valid\"],[[7862,7862],\"mapped\",[7863]],[[7863,7863],\"valid\"],[[7864,7864],\"mapped\",[7865]],[[7865,7865],\"valid\"],[[7866,7866],\"mapped\",[7867]],[[7867,7867],\"valid\"],[[7868,7868],\"mapped\",[7869]],[[7869,7869],\"valid\"],[[7870,7870],\"mapped\",[7871]],[[7871,7871],\"valid\"],[[7872,7872],\"mapped\",[7873]],[[7873,7873],\"valid\"],[[7874,7874],\"mapped\",[7875]],[[7875,7875],\"valid\"],[[7876,7876],\"mapped\",[7877]],[[7877,7877],\"valid\"],[[7878,7878],\"mapped\",[7879]],[[7879,7879],\"valid\"],[[7880,7880],\"mapped\",[7881]],[[7881,7881],\"valid\"],[[7882,7882],\"mapped\",[7883]],[[7883,7883],\"valid\"],[[7884,7884],\"mapped\",[7885]],[[7885,7885],\"valid\"],[[7886,7886],\"mapped\",[7887]],[[7887,7887],\"valid\"],[[7888,7888],\"mapped\",[7889]],[[7889,7889],\"valid\"],[[7890,7890],\"mapped\",[7891]],[[7891,7891],\"valid\"],[[7892,7892],\"mapped\",[7893]],[[7893,7893],\"valid\"],[[7894,7894],\"mapped\",[7895]],[[7895,7895],\"valid\"],[[7896,7896],\"mapped\",[7897]],[[7897,7897],\"valid\"],[[7898,7898],\"mapped\",[7899]],[[7899,7899],\"valid\"],[[7900,7900],\"mapped\",[7901]],[[7901,7901],\"valid\"],[[7902,7902],\"mapped\",[7903]],[[7903,7903],\"valid\"],[[7904,7904],\"mapped\",[7905]],[[7905,7905],\"valid\"],[[7906,7906],\"mapped\",[7907]],[[7907,7907],\"valid\"],[[7908,7908],\"mapped\",[7909]],[[7909,7909],\"valid\"],[[7910,7910],\"mapped\",[7911]],[[7911,7911],\"valid\"],[[7912,7912],\"mapped\",[7913]],[[7913,7913],\"valid\"],[[7914,7914],\"mapped\",[7915]],[[7915,7915],\"valid\"],[[7916,7916],\"mapped\",[7917]],[[7917,7917],\"valid\"],[[7918,7918],\"mapped\",[7919]],[[7919,7919],\"valid\"],[[7920,7920],\"mapped\",[7921]],[[7921,7921],\"valid\"],[[7922,7922],\"mapped\",[7923]],[[7923,7923],\"valid\"],[[7924,7924],\"mapped\",[7925]],[[7925,7925],\"valid\"],[[7926,7926],\"mapped\",[7927]],[[7927,7927],\"valid\"],[[7928,7928],\"mapped\",[7929]],[[7929,7929],\"valid\"],[[7930,7930],\"mapped\",[7931]],[[7931,7931],\"valid\"],[[7932,7932],\"mapped\",[7933]],[[7933,7933],\"valid\"],[[7934,7934],\"mapped\",[7935]],[[7935,7935],\"valid\"],[[7936,7943],\"valid\"],[[7944,7944],\"mapped\",[7936]],[[7945,7945],\"mapped\",[7937]],[[7946,7946],\"mapped\",[7938]],[[7947,7947],\"mapped\",[7939]],[[7948,7948],\"mapped\",[7940]],[[7949,7949],\"mapped\",[7941]],[[7950,7950],\"mapped\",[7942]],[[7951,7951],\"mapped\",[7943]],[[7952,7957],\"valid\"],[[7958,7959],\"disallowed\"],[[7960,7960],\"mapped\",[7952]],[[7961,7961],\"mapped\",[7953]],[[7962,7962],\"mapped\",[7954]],[[7963,7963],\"mapped\",[7955]],[[7964,7964],\"mapped\",[7956]],[[7965,7965],\"mapped\",[7957]],[[7966,7967],\"disallowed\"],[[7968,7975],\"valid\"],[[7976,7976],\"mapped\",[7968]],[[7977,7977],\"mapped\",[7969]],[[7978,7978],\"mapped\",[7970]],[[7979,7979],\"mapped\",[7971]],[[7980,7980],\"mapped\",[7972]],[[7981,7981],\"mapped\",[7973]],[[7982,7982],\"mapped\",[7974]],[[7983,7983],\"mapped\",[7975]],[[7984,7991],\"valid\"],[[7992,7992],\"mapped\",[7984]],[[7993,7993],\"mapped\",[7985]],[[7994,7994],\"mapped\",[7986]],[[7995,7995],\"mapped\",[7987]],[[7996,7996],\"mapped\",[7988]],[[7997,7997],\"mapped\",[7989]],[[7998,7998],\"mapped\",[7990]],[[7999,7999],\"mapped\",[7991]],[[8000,8005],\"valid\"],[[8006,8007],\"disallowed\"],[[8008,8008],\"mapped\",[8000]],[[8009,8009],\"mapped\",[8001]],[[8010,8010],\"mapped\",[8002]],[[8011,8011],\"mapped\",[8003]],[[8012,8012],\"mapped\",[8004]],[[8013,8013],\"mapped\",[8005]],[[8014,8015],\"disallowed\"],[[8016,8023],\"valid\"],[[8024,8024],\"disallowed\"],[[8025,8025],\"mapped\",[8017]],[[8026,8026],\"disallowed\"],[[8027,8027],\"mapped\",[8019]],[[8028,8028],\"disallowed\"],[[8029,8029],\"mapped\",[8021]],[[8030,8030],\"disallowed\"],[[8031,8031],\"mapped\",[8023]],[[8032,8039],\"valid\"],[[8040,8040],\"mapped\",[8032]],[[8041,8041],\"mapped\",[8033]],[[8042,8042],\"mapped\",[8034]],[[8043,8043],\"mapped\",[8035]],[[8044,8044],\"mapped\",[8036]],[[8045,8045],\"mapped\",[8037]],[[8046,8046],\"mapped\",[8038]],[[8047,8047],\"mapped\",[8039]],[[8048,8048],\"valid\"],[[8049,8049],\"mapped\",[940]],[[8050,8050],\"valid\"],[[8051,8051],\"mapped\",[941]],[[8052,8052],\"valid\"],[[8053,8053],\"mapped\",[942]],[[8054,8054],\"valid\"],[[8055,8055],\"mapped\",[943]],[[8056,8056],\"valid\"],[[8057,8057],\"mapped\",[972]],[[8058,8058],\"valid\"],[[8059,8059],\"mapped\",[973]],[[8060,8060],\"valid\"],[[8061,8061],\"mapped\",[974]],[[8062,8063],\"disallowed\"],[[8064,8064],\"mapped\",[7936,953]],[[8065,8065],\"mapped\",[7937,953]],[[8066,8066],\"mapped\",[7938,953]],[[8067,8067],\"mapped\",[7939,953]],[[8068,8068],\"mapped\",[7940,953]],[[8069,8069],\"mapped\",[7941,953]],[[8070,8070],\"mapped\",[7942,953]],[[8071,8071],\"mapped\",[7943,953]],[[8072,8072],\"mapped\",[7936,953]],[[8073,8073],\"mapped\",[7937,953]],[[8074,8074],\"mapped\",[7938,953]],[[8075,8075],\"mapped\",[7939,953]],[[8076,8076],\"mapped\",[7940,953]],[[8077,8077],\"mapped\",[7941,953]],[[8078,8078],\"mapped\",[7942,953]],[[8079,8079],\"mapped\",[7943,953]],[[8080,8080],\"mapped\",[7968,953]],[[8081,8081],\"mapped\",[7969,953]],[[8082,8082],\"mapped\",[7970,953]],[[8083,8083],\"mapped\",[7971,953]],[[8084,8084],\"mapped\",[7972,953]],[[8085,8085],\"mapped\",[7973,953]],[[8086,8086],\"mapped\",[7974,953]],[[8087,8087],\"mapped\",[7975,953]],[[8088,8088],\"mapped\",[7968,953]],[[8089,8089],\"mapped\",[7969,953]],[[8090,8090],\"mapped\",[7970,953]],[[8091,8091],\"mapped\",[7971,953]],[[8092,8092],\"mapped\",[7972,953]],[[8093,8093],\"mapped\",[7973,953]],[[8094,8094],\"mapped\",[7974,953]],[[8095,8095],\"mapped\",[7975,953]],[[8096,8096],\"mapped\",[8032,953]],[[8097,8097],\"mapped\",[8033,953]],[[8098,8098],\"mapped\",[8034,953]],[[8099,8099],\"mapped\",[8035,953]],[[8100,8100],\"mapped\",[8036,953]],[[8101,8101],\"mapped\",[8037,953]],[[8102,8102],\"mapped\",[8038,953]],[[8103,8103],\"mapped\",[8039,953]],[[8104,8104],\"mapped\",[8032,953]],[[8105,8105],\"mapped\",[8033,953]],[[8106,8106],\"mapped\",[8034,953]],[[8107,8107],\"mapped\",[8035,953]],[[8108,8108],\"mapped\",[8036,953]],[[8109,8109],\"mapped\",[8037,953]],[[8110,8110],\"mapped\",[8038,953]],[[8111,8111],\"mapped\",[8039,953]],[[8112,8113],\"valid\"],[[8114,8114],\"mapped\",[8048,953]],[[8115,8115],\"mapped\",[945,953]],[[8116,8116],\"mapped\",[940,953]],[[8117,8117],\"disallowed\"],[[8118,8118],\"valid\"],[[8119,8119],\"mapped\",[8118,953]],[[8120,8120],\"mapped\",[8112]],[[8121,8121],\"mapped\",[8113]],[[8122,8122],\"mapped\",[8048]],[[8123,8123],\"mapped\",[940]],[[8124,8124],\"mapped\",[945,953]],[[8125,8125],\"disallowed_STD3_mapped\",[32,787]],[[8126,8126],\"mapped\",[953]],[[8127,8127],\"disallowed_STD3_mapped\",[32,787]],[[8128,8128],\"disallowed_STD3_mapped\",[32,834]],[[8129,8129],\"disallowed_STD3_mapped\",[32,776,834]],[[8130,8130],\"mapped\",[8052,953]],[[8131,8131],\"mapped\",[951,953]],[[8132,8132],\"mapped\",[942,953]],[[8133,8133],\"disallowed\"],[[8134,8134],\"valid\"],[[8135,8135],\"mapped\",[8134,953]],[[8136,8136],\"mapped\",[8050]],[[8137,8137],\"mapped\",[941]],[[8138,8138],\"mapped\",[8052]],[[8139,8139],\"mapped\",[942]],[[8140,8140],\"mapped\",[951,953]],[[8141,8141],\"disallowed_STD3_mapped\",[32,787,768]],[[8142,8142],\"disallowed_STD3_mapped\",[32,787,769]],[[8143,8143],\"disallowed_STD3_mapped\",[32,787,834]],[[8144,8146],\"valid\"],[[8147,8147],\"mapped\",[912]],[[8148,8149],\"disallowed\"],[[8150,8151],\"valid\"],[[8152,8152],\"mapped\",[8144]],[[8153,8153],\"mapped\",[8145]],[[8154,8154],\"mapped\",[8054]],[[8155,8155],\"mapped\",[943]],[[8156,8156],\"disallowed\"],[[8157,8157],\"disallowed_STD3_mapped\",[32,788,768]],[[8158,8158],\"disallowed_STD3_mapped\",[32,788,769]],[[8159,8159],\"disallowed_STD3_mapped\",[32,788,834]],[[8160,8162],\"valid\"],[[8163,8163],\"mapped\",[944]],[[8164,8167],\"valid\"],[[8168,8168],\"mapped\",[8160]],[[8169,8169],\"mapped\",[8161]],[[8170,8170],\"mapped\",[8058]],[[8171,8171],\"mapped\",[973]],[[8172,8172],\"mapped\",[8165]],[[8173,8173],\"disallowed_STD3_mapped\",[32,776,768]],[[8174,8174],\"disallowed_STD3_mapped\",[32,776,769]],[[8175,8175],\"disallowed_STD3_mapped\",[96]],[[8176,8177],\"disallowed\"],[[8178,8178],\"mapped\",[8060,953]],[[8179,8179],\"mapped\",[969,953]],[[8180,8180],\"mapped\",[974,953]],[[8181,8181],\"disallowed\"],[[8182,8182],\"valid\"],[[8183,8183],\"mapped\",[8182,953]],[[8184,8184],\"mapped\",[8056]],[[8185,8185],\"mapped\",[972]],[[8186,8186],\"mapped\",[8060]],[[8187,8187],\"mapped\",[974]],[[8188,8188],\"mapped\",[969,953]],[[8189,8189],\"disallowed_STD3_mapped\",[32,769]],[[8190,8190],\"disallowed_STD3_mapped\",[32,788]],[[8191,8191],\"disallowed\"],[[8192,8202],\"disallowed_STD3_mapped\",[32]],[[8203,8203],\"ignored\"],[[8204,8205],\"deviation\",[]],[[8206,8207],\"disallowed\"],[[8208,8208],\"valid\",[],\"NV8\"],[[8209,8209],\"mapped\",[8208]],[[8210,8214],\"valid\",[],\"NV8\"],[[8215,8215],\"disallowed_STD3_mapped\",[32,819]],[[8216,8227],\"valid\",[],\"NV8\"],[[8228,8230],\"disallowed\"],[[8231,8231],\"valid\",[],\"NV8\"],[[8232,8238],\"disallowed\"],[[8239,8239],\"disallowed_STD3_mapped\",[32]],[[8240,8242],\"valid\",[],\"NV8\"],[[8243,8243],\"mapped\",[8242,8242]],[[8244,8244],\"mapped\",[8242,8242,8242]],[[8245,8245],\"valid\",[],\"NV8\"],[[8246,8246],\"mapped\",[8245,8245]],[[8247,8247],\"mapped\",[8245,8245,8245]],[[8248,8251],\"valid\",[],\"NV8\"],[[8252,8252],\"disallowed_STD3_mapped\",[33,33]],[[8253,8253],\"valid\",[],\"NV8\"],[[8254,8254],\"disallowed_STD3_mapped\",[32,773]],[[8255,8262],\"valid\",[],\"NV8\"],[[8263,8263],\"disallowed_STD3_mapped\",[63,63]],[[8264,8264],\"disallowed_STD3_mapped\",[63,33]],[[8265,8265],\"disallowed_STD3_mapped\",[33,63]],[[8266,8269],\"valid\",[],\"NV8\"],[[8270,8274],\"valid\",[],\"NV8\"],[[8275,8276],\"valid\",[],\"NV8\"],[[8277,8278],\"valid\",[],\"NV8\"],[[8279,8279],\"mapped\",[8242,8242,8242,8242]],[[8280,8286],\"valid\",[],\"NV8\"],[[8287,8287],\"disallowed_STD3_mapped\",[32]],[[8288,8288],\"ignored\"],[[8289,8291],\"disallowed\"],[[8292,8292],\"ignored\"],[[8293,8293],\"disallowed\"],[[8294,8297],\"disallowed\"],[[8298,8303],\"disallowed\"],[[8304,8304],\"mapped\",[48]],[[8305,8305],\"mapped\",[105]],[[8306,8307],\"disallowed\"],[[8308,8308],\"mapped\",[52]],[[8309,8309],\"mapped\",[53]],[[8310,8310],\"mapped\",[54]],[[8311,8311],\"mapped\",[55]],[[8312,8312],\"mapped\",[56]],[[8313,8313],\"mapped\",[57]],[[8314,8314],\"disallowed_STD3_mapped\",[43]],[[8315,8315],\"mapped\",[8722]],[[8316,8316],\"disallowed_STD3_mapped\",[61]],[[8317,8317],\"disallowed_STD3_mapped\",[40]],[[8318,8318],\"disallowed_STD3_mapped\",[41]],[[8319,8319],\"mapped\",[110]],[[8320,8320],\"mapped\",[48]],[[8321,8321],\"mapped\",[49]],[[8322,8322],\"mapped\",[50]],[[8323,8323],\"mapped\",[51]],[[8324,8324],\"mapped\",[52]],[[8325,8325],\"mapped\",[53]],[[8326,8326],\"mapped\",[54]],[[8327,8327],\"mapped\",[55]],[[8328,8328],\"mapped\",[56]],[[8329,8329],\"mapped\",[57]],[[8330,8330],\"disallowed_STD3_mapped\",[43]],[[8331,8331],\"mapped\",[8722]],[[8332,8332],\"disallowed_STD3_mapped\",[61]],[[8333,8333],\"disallowed_STD3_mapped\",[40]],[[8334,8334],\"disallowed_STD3_mapped\",[41]],[[8335,8335],\"disallowed\"],[[8336,8336],\"mapped\",[97]],[[8337,8337],\"mapped\",[101]],[[8338,8338],\"mapped\",[111]],[[8339,8339],\"mapped\",[120]],[[8340,8340],\"mapped\",[601]],[[8341,8341],\"mapped\",[104]],[[8342,8342],\"mapped\",[107]],[[8343,8343],\"mapped\",[108]],[[8344,8344],\"mapped\",[109]],[[8345,8345],\"mapped\",[110]],[[8346,8346],\"mapped\",[112]],[[8347,8347],\"mapped\",[115]],[[8348,8348],\"mapped\",[116]],[[8349,8351],\"disallowed\"],[[8352,8359],\"valid\",[],\"NV8\"],[[8360,8360],\"mapped\",[114,115]],[[8361,8362],\"valid\",[],\"NV8\"],[[8363,8363],\"valid\",[],\"NV8\"],[[8364,8364],\"valid\",[],\"NV8\"],[[8365,8367],\"valid\",[],\"NV8\"],[[8368,8369],\"valid\",[],\"NV8\"],[[8370,8373],\"valid\",[],\"NV8\"],[[8374,8376],\"valid\",[],\"NV8\"],[[8377,8377],\"valid\",[],\"NV8\"],[[8378,8378],\"valid\",[],\"NV8\"],[[8379,8381],\"valid\",[],\"NV8\"],[[8382,8382],\"valid\",[],\"NV8\"],[[8383,8399],\"disallowed\"],[[8400,8417],\"valid\",[],\"NV8\"],[[8418,8419],\"valid\",[],\"NV8\"],[[8420,8426],\"valid\",[],\"NV8\"],[[8427,8427],\"valid\",[],\"NV8\"],[[8428,8431],\"valid\",[],\"NV8\"],[[8432,8432],\"valid\",[],\"NV8\"],[[8433,8447],\"disallowed\"],[[8448,8448],\"disallowed_STD3_mapped\",[97,47,99]],[[8449,8449],\"disallowed_STD3_mapped\",[97,47,115]],[[8450,8450],\"mapped\",[99]],[[8451,8451],\"mapped\",[176,99]],[[8452,8452],\"valid\",[],\"NV8\"],[[8453,8453],\"disallowed_STD3_mapped\",[99,47,111]],[[8454,8454],\"disallowed_STD3_mapped\",[99,47,117]],[[8455,8455],\"mapped\",[603]],[[8456,8456],\"valid\",[],\"NV8\"],[[8457,8457],\"mapped\",[176,102]],[[8458,8458],\"mapped\",[103]],[[8459,8462],\"mapped\",[104]],[[8463,8463],\"mapped\",[295]],[[8464,8465],\"mapped\",[105]],[[8466,8467],\"mapped\",[108]],[[8468,8468],\"valid\",[],\"NV8\"],[[8469,8469],\"mapped\",[110]],[[8470,8470],\"mapped\",[110,111]],[[8471,8472],\"valid\",[],\"NV8\"],[[8473,8473],\"mapped\",[112]],[[8474,8474],\"mapped\",[113]],[[8475,8477],\"mapped\",[114]],[[8478,8479],\"valid\",[],\"NV8\"],[[8480,8480],\"mapped\",[115,109]],[[8481,8481],\"mapped\",[116,101,108]],[[8482,8482],\"mapped\",[116,109]],[[8483,8483],\"valid\",[],\"NV8\"],[[8484,8484],\"mapped\",[122]],[[8485,8485],\"valid\",[],\"NV8\"],[[8486,8486],\"mapped\",[969]],[[8487,8487],\"valid\",[],\"NV8\"],[[8488,8488],\"mapped\",[122]],[[8489,8489],\"valid\",[],\"NV8\"],[[8490,8490],\"mapped\",[107]],[[8491,8491],\"mapped\",[229]],[[8492,8492],\"mapped\",[98]],[[8493,8493],\"mapped\",[99]],[[8494,8494],\"valid\",[],\"NV8\"],[[8495,8496],\"mapped\",[101]],[[8497,8497],\"mapped\",[102]],[[8498,8498],\"disallowed\"],[[8499,8499],\"mapped\",[109]],[[8500,8500],\"mapped\",[111]],[[8501,8501],\"mapped\",[1488]],[[8502,8502],\"mapped\",[1489]],[[8503,8503],\"mapped\",[1490]],[[8504,8504],\"mapped\",[1491]],[[8505,8505],\"mapped\",[105]],[[8506,8506],\"valid\",[],\"NV8\"],[[8507,8507],\"mapped\",[102,97,120]],[[8508,8508],\"mapped\",[960]],[[8509,8510],\"mapped\",[947]],[[8511,8511],\"mapped\",[960]],[[8512,8512],\"mapped\",[8721]],[[8513,8516],\"valid\",[],\"NV8\"],[[8517,8518],\"mapped\",[100]],[[8519,8519],\"mapped\",[101]],[[8520,8520],\"mapped\",[105]],[[8521,8521],\"mapped\",[106]],[[8522,8523],\"valid\",[],\"NV8\"],[[8524,8524],\"valid\",[],\"NV8\"],[[8525,8525],\"valid\",[],\"NV8\"],[[8526,8526],\"valid\"],[[8527,8527],\"valid\",[],\"NV8\"],[[8528,8528],\"mapped\",[49,8260,55]],[[8529,8529],\"mapped\",[49,8260,57]],[[8530,8530],\"mapped\",[49,8260,49,48]],[[8531,8531],\"mapped\",[49,8260,51]],[[8532,8532],\"mapped\",[50,8260,51]],[[8533,8533],\"mapped\",[49,8260,53]],[[8534,8534],\"mapped\",[50,8260,53]],[[8535,8535],\"mapped\",[51,8260,53]],[[8536,8536],\"mapped\",[52,8260,53]],[[8537,8537],\"mapped\",[49,8260,54]],[[8538,8538],\"mapped\",[53,8260,54]],[[8539,8539],\"mapped\",[49,8260,56]],[[8540,8540],\"mapped\",[51,8260,56]],[[8541,8541],\"mapped\",[53,8260,56]],[[8542,8542],\"mapped\",[55,8260,56]],[[8543,8543],\"mapped\",[49,8260]],[[8544,8544],\"mapped\",[105]],[[8545,8545],\"mapped\",[105,105]],[[8546,8546],\"mapped\",[105,105,105]],[[8547,8547],\"mapped\",[105,118]],[[8548,8548],\"mapped\",[118]],[[8549,8549],\"mapped\",[118,105]],[[8550,8550],\"mapped\",[118,105,105]],[[8551,8551],\"mapped\",[118,105,105,105]],[[8552,8552],\"mapped\",[105,120]],[[8553,8553],\"mapped\",[120]],[[8554,8554],\"mapped\",[120,105]],[[8555,8555],\"mapped\",[120,105,105]],[[8556,8556],\"mapped\",[108]],[[8557,8557],\"mapped\",[99]],[[8558,8558],\"mapped\",[100]],[[8559,8559],\"mapped\",[109]],[[8560,8560],\"mapped\",[105]],[[8561,8561],\"mapped\",[105,105]],[[8562,8562],\"mapped\",[105,105,105]],[[8563,8563],\"mapped\",[105,118]],[[8564,8564],\"mapped\",[118]],[[8565,8565],\"mapped\",[118,105]],[[8566,8566],\"mapped\",[118,105,105]],[[8567,8567],\"mapped\",[118,105,105,105]],[[8568,8568],\"mapped\",[105,120]],[[8569,8569],\"mapped\",[120]],[[8570,8570],\"mapped\",[120,105]],[[8571,8571],\"mapped\",[120,105,105]],[[8572,8572],\"mapped\",[108]],[[8573,8573],\"mapped\",[99]],[[8574,8574],\"mapped\",[100]],[[8575,8575],\"mapped\",[109]],[[8576,8578],\"valid\",[],\"NV8\"],[[8579,8579],\"disallowed\"],[[8580,8580],\"valid\"],[[8581,8584],\"valid\",[],\"NV8\"],[[8585,8585],\"mapped\",[48,8260,51]],[[8586,8587],\"valid\",[],\"NV8\"],[[8588,8591],\"disallowed\"],[[8592,8682],\"valid\",[],\"NV8\"],[[8683,8691],\"valid\",[],\"NV8\"],[[8692,8703],\"valid\",[],\"NV8\"],[[8704,8747],\"valid\",[],\"NV8\"],[[8748,8748],\"mapped\",[8747,8747]],[[8749,8749],\"mapped\",[8747,8747,8747]],[[8750,8750],\"valid\",[],\"NV8\"],[[8751,8751],\"mapped\",[8750,8750]],[[8752,8752],\"mapped\",[8750,8750,8750]],[[8753,8799],\"valid\",[],\"NV8\"],[[8800,8800],\"disallowed_STD3_valid\"],[[8801,8813],\"valid\",[],\"NV8\"],[[8814,8815],\"disallowed_STD3_valid\"],[[8816,8945],\"valid\",[],\"NV8\"],[[8946,8959],\"valid\",[],\"NV8\"],[[8960,8960],\"valid\",[],\"NV8\"],[[8961,8961],\"valid\",[],\"NV8\"],[[8962,9000],\"valid\",[],\"NV8\"],[[9001,9001],\"mapped\",[12296]],[[9002,9002],\"mapped\",[12297]],[[9003,9082],\"valid\",[],\"NV8\"],[[9083,9083],\"valid\",[],\"NV8\"],[[9084,9084],\"valid\",[],\"NV8\"],[[9085,9114],\"valid\",[],\"NV8\"],[[9115,9166],\"valid\",[],\"NV8\"],[[9167,9168],\"valid\",[],\"NV8\"],[[9169,9179],\"valid\",[],\"NV8\"],[[9180,9191],\"valid\",[],\"NV8\"],[[9192,9192],\"valid\",[],\"NV8\"],[[9193,9203],\"valid\",[],\"NV8\"],[[9204,9210],\"valid\",[],\"NV8\"],[[9211,9215],\"disallowed\"],[[9216,9252],\"valid\",[],\"NV8\"],[[9253,9254],\"valid\",[],\"NV8\"],[[9255,9279],\"disallowed\"],[[9280,9290],\"valid\",[],\"NV8\"],[[9291,9311],\"disallowed\"],[[9312,9312],\"mapped\",[49]],[[9313,9313],\"mapped\",[50]],[[9314,9314],\"mapped\",[51]],[[9315,9315],\"mapped\",[52]],[[9316,9316],\"mapped\",[53]],[[9317,9317],\"mapped\",[54]],[[9318,9318],\"mapped\",[55]],[[9319,9319],\"mapped\",[56]],[[9320,9320],\"mapped\",[57]],[[9321,9321],\"mapped\",[49,48]],[[9322,9322],\"mapped\",[49,49]],[[9323,9323],\"mapped\",[49,50]],[[9324,9324],\"mapped\",[49,51]],[[9325,9325],\"mapped\",[49,52]],[[9326,9326],\"mapped\",[49,53]],[[9327,9327],\"mapped\",[49,54]],[[9328,9328],\"mapped\",[49,55]],[[9329,9329],\"mapped\",[49,56]],[[9330,9330],\"mapped\",[49,57]],[[9331,9331],\"mapped\",[50,48]],[[9332,9332],\"disallowed_STD3_mapped\",[40,49,41]],[[9333,9333],\"disallowed_STD3_mapped\",[40,50,41]],[[9334,9334],\"disallowed_STD3_mapped\",[40,51,41]],[[9335,9335],\"disallowed_STD3_mapped\",[40,52,41]],[[9336,9336],\"disallowed_STD3_mapped\",[40,53,41]],[[9337,9337],\"disallowed_STD3_mapped\",[40,54,41]],[[9338,9338],\"disallowed_STD3_mapped\",[40,55,41]],[[9339,9339],\"disallowed_STD3_mapped\",[40,56,41]],[[9340,9340],\"disallowed_STD3_mapped\",[40,57,41]],[[9341,9341],\"disallowed_STD3_mapped\",[40,49,48,41]],[[9342,9342],\"disallowed_STD3_mapped\",[40,49,49,41]],[[9343,9343],\"disallowed_STD3_mapped\",[40,49,50,41]],[[9344,9344],\"disallowed_STD3_mapped\",[40,49,51,41]],[[9345,9345],\"disallowed_STD3_mapped\",[40,49,52,41]],[[9346,9346],\"disallowed_STD3_mapped\",[40,49,53,41]],[[9347,9347],\"disallowed_STD3_mapped\",[40,49,54,41]],[[9348,9348],\"disallowed_STD3_mapped\",[40,49,55,41]],[[9349,9349],\"disallowed_STD3_mapped\",[40,49,56,41]],[[9350,9350],\"disallowed_STD3_mapped\",[40,49,57,41]],[[9351,9351],\"disallowed_STD3_mapped\",[40,50,48,41]],[[9352,9371],\"disallowed\"],[[9372,9372],\"disallowed_STD3_mapped\",[40,97,41]],[[9373,9373],\"disallowed_STD3_mapped\",[40,98,41]],[[9374,9374],\"disallowed_STD3_mapped\",[40,99,41]],[[9375,9375],\"disallowed_STD3_mapped\",[40,100,41]],[[9376,9376],\"disallowed_STD3_mapped\",[40,101,41]],[[9377,9377],\"disallowed_STD3_mapped\",[40,102,41]],[[9378,9378],\"disallowed_STD3_mapped\",[40,103,41]],[[9379,9379],\"disallowed_STD3_mapped\",[40,104,41]],[[9380,9380],\"disallowed_STD3_mapped\",[40,105,41]],[[9381,9381],\"disallowed_STD3_mapped\",[40,106,41]],[[9382,9382],\"disallowed_STD3_mapped\",[40,107,41]],[[9383,9383],\"disallowed_STD3_mapped\",[40,108,41]],[[9384,9384],\"disallowed_STD3_mapped\",[40,109,41]],[[9385,9385],\"disallowed_STD3_mapped\",[40,110,41]],[[9386,9386],\"disallowed_STD3_mapped\",[40,111,41]],[[9387,9387],\"disallowed_STD3_mapped\",[40,112,41]],[[9388,9388],\"disallowed_STD3_mapped\",[40,113,41]],[[9389,9389],\"disallowed_STD3_mapped\",[40,114,41]],[[9390,9390],\"disallowed_STD3_mapped\",[40,115,41]],[[9391,9391],\"disallowed_STD3_mapped\",[40,116,41]],[[9392,9392],\"disallowed_STD3_mapped\",[40,117,41]],[[9393,9393],\"disallowed_STD3_mapped\",[40,118,41]],[[9394,9394],\"disallowed_STD3_mapped\",[40,119,41]],[[9395,9395],\"disallowed_STD3_mapped\",[40,120,41]],[[9396,9396],\"disallowed_STD3_mapped\",[40,121,41]],[[9397,9397],\"disallowed_STD3_mapped\",[40,122,41]],[[9398,9398],\"mapped\",[97]],[[9399,9399],\"mapped\",[98]],[[9400,9400],\"mapped\",[99]],[[9401,9401],\"mapped\",[100]],[[9402,9402],\"mapped\",[101]],[[9403,9403],\"mapped\",[102]],[[9404,9404],\"mapped\",[103]],[[9405,9405],\"mapped\",[104]],[[9406,9406],\"mapped\",[105]],[[9407,9407],\"mapped\",[106]],[[9408,9408],\"mapped\",[107]],[[9409,9409],\"mapped\",[108]],[[9410,9410],\"mapped\",[109]],[[9411,9411],\"mapped\",[110]],[[9412,9412],\"mapped\",[111]],[[9413,9413],\"mapped\",[112]],[[9414,9414],\"mapped\",[113]],[[9415,9415],\"mapped\",[114]],[[9416,9416],\"mapped\",[115]],[[9417,9417],\"mapped\",[116]],[[9418,9418],\"mapped\",[117]],[[9419,9419],\"mapped\",[118]],[[9420,9420],\"mapped\",[119]],[[9421,9421],\"mapped\",[120]],[[9422,9422],\"mapped\",[121]],[[9423,9423],\"mapped\",[122]],[[9424,9424],\"mapped\",[97]],[[9425,9425],\"mapped\",[98]],[[9426,9426],\"mapped\",[99]],[[9427,9427],\"mapped\",[100]],[[9428,9428],\"mapped\",[101]],[[9429,9429],\"mapped\",[102]],[[9430,9430],\"mapped\",[103]],[[9431,9431],\"mapped\",[104]],[[9432,9432],\"mapped\",[105]],[[9433,9433],\"mapped\",[106]],[[9434,9434],\"mapped\",[107]],[[9435,9435],\"mapped\",[108]],[[9436,9436],\"mapped\",[109]],[[9437,9437],\"mapped\",[110]],[[9438,9438],\"mapped\",[111]],[[9439,9439],\"mapped\",[112]],[[9440,9440],\"mapped\",[113]],[[9441,9441],\"mapped\",[114]],[[9442,9442],\"mapped\",[115]],[[9443,9443],\"mapped\",[116]],[[9444,9444],\"mapped\",[117]],[[9445,9445],\"mapped\",[118]],[[9446,9446],\"mapped\",[119]],[[9447,9447],\"mapped\",[120]],[[9448,9448],\"mapped\",[121]],[[9449,9449],\"mapped\",[122]],[[9450,9450],\"mapped\",[48]],[[9451,9470],\"valid\",[],\"NV8\"],[[9471,9471],\"valid\",[],\"NV8\"],[[9472,9621],\"valid\",[],\"NV8\"],[[9622,9631],\"valid\",[],\"NV8\"],[[9632,9711],\"valid\",[],\"NV8\"],[[9712,9719],\"valid\",[],\"NV8\"],[[9720,9727],\"valid\",[],\"NV8\"],[[9728,9747],\"valid\",[],\"NV8\"],[[9748,9749],\"valid\",[],\"NV8\"],[[9750,9751],\"valid\",[],\"NV8\"],[[9752,9752],\"valid\",[],\"NV8\"],[[9753,9753],\"valid\",[],\"NV8\"],[[9754,9839],\"valid\",[],\"NV8\"],[[9840,9841],\"valid\",[],\"NV8\"],[[9842,9853],\"valid\",[],\"NV8\"],[[9854,9855],\"valid\",[],\"NV8\"],[[9856,9865],\"valid\",[],\"NV8\"],[[9866,9873],\"valid\",[],\"NV8\"],[[9874,9884],\"valid\",[],\"NV8\"],[[9885,9885],\"valid\",[],\"NV8\"],[[9886,9887],\"valid\",[],\"NV8\"],[[9888,9889],\"valid\",[],\"NV8\"],[[9890,9905],\"valid\",[],\"NV8\"],[[9906,9906],\"valid\",[],\"NV8\"],[[9907,9916],\"valid\",[],\"NV8\"],[[9917,9919],\"valid\",[],\"NV8\"],[[9920,9923],\"valid\",[],\"NV8\"],[[9924,9933],\"valid\",[],\"NV8\"],[[9934,9934],\"valid\",[],\"NV8\"],[[9935,9953],\"valid\",[],\"NV8\"],[[9954,9954],\"valid\",[],\"NV8\"],[[9955,9955],\"valid\",[],\"NV8\"],[[9956,9959],\"valid\",[],\"NV8\"],[[9960,9983],\"valid\",[],\"NV8\"],[[9984,9984],\"valid\",[],\"NV8\"],[[9985,9988],\"valid\",[],\"NV8\"],[[9989,9989],\"valid\",[],\"NV8\"],[[9990,9993],\"valid\",[],\"NV8\"],[[9994,9995],\"valid\",[],\"NV8\"],[[9996,10023],\"valid\",[],\"NV8\"],[[10024,10024],\"valid\",[],\"NV8\"],[[10025,10059],\"valid\",[],\"NV8\"],[[10060,10060],\"valid\",[],\"NV8\"],[[10061,10061],\"valid\",[],\"NV8\"],[[10062,10062],\"valid\",[],\"NV8\"],[[10063,10066],\"valid\",[],\"NV8\"],[[10067,10069],\"valid\",[],\"NV8\"],[[10070,10070],\"valid\",[],\"NV8\"],[[10071,10071],\"valid\",[],\"NV8\"],[[10072,10078],\"valid\",[],\"NV8\"],[[10079,10080],\"valid\",[],\"NV8\"],[[10081,10087],\"valid\",[],\"NV8\"],[[10088,10101],\"valid\",[],\"NV8\"],[[10102,10132],\"valid\",[],\"NV8\"],[[10133,10135],\"valid\",[],\"NV8\"],[[10136,10159],\"valid\",[],\"NV8\"],[[10160,10160],\"valid\",[],\"NV8\"],[[10161,10174],\"valid\",[],\"NV8\"],[[10175,10175],\"valid\",[],\"NV8\"],[[10176,10182],\"valid\",[],\"NV8\"],[[10183,10186],\"valid\",[],\"NV8\"],[[10187,10187],\"valid\",[],\"NV8\"],[[10188,10188],\"valid\",[],\"NV8\"],[[10189,10189],\"valid\",[],\"NV8\"],[[10190,10191],\"valid\",[],\"NV8\"],[[10192,10219],\"valid\",[],\"NV8\"],[[10220,10223],\"valid\",[],\"NV8\"],[[10224,10239],\"valid\",[],\"NV8\"],[[10240,10495],\"valid\",[],\"NV8\"],[[10496,10763],\"valid\",[],\"NV8\"],[[10764,10764],\"mapped\",[8747,8747,8747,8747]],[[10765,10867],\"valid\",[],\"NV8\"],[[10868,10868],\"disallowed_STD3_mapped\",[58,58,61]],[[10869,10869],\"disallowed_STD3_mapped\",[61,61]],[[10870,10870],\"disallowed_STD3_mapped\",[61,61,61]],[[10871,10971],\"valid\",[],\"NV8\"],[[10972,10972],\"mapped\",[10973,824]],[[10973,11007],\"valid\",[],\"NV8\"],[[11008,11021],\"valid\",[],\"NV8\"],[[11022,11027],\"valid\",[],\"NV8\"],[[11028,11034],\"valid\",[],\"NV8\"],[[11035,11039],\"valid\",[],\"NV8\"],[[11040,11043],\"valid\",[],\"NV8\"],[[11044,11084],\"valid\",[],\"NV8\"],[[11085,11087],\"valid\",[],\"NV8\"],[[11088,11092],\"valid\",[],\"NV8\"],[[11093,11097],\"valid\",[],\"NV8\"],[[11098,11123],\"valid\",[],\"NV8\"],[[11124,11125],\"disallowed\"],[[11126,11157],\"valid\",[],\"NV8\"],[[11158,11159],\"disallowed\"],[[11160,11193],\"valid\",[],\"NV8\"],[[11194,11196],\"disallowed\"],[[11197,11208],\"valid\",[],\"NV8\"],[[11209,11209],\"disallowed\"],[[11210,11217],\"valid\",[],\"NV8\"],[[11218,11243],\"disallowed\"],[[11244,11247],\"valid\",[],\"NV8\"],[[11248,11263],\"disallowed\"],[[11264,11264],\"mapped\",[11312]],[[11265,11265],\"mapped\",[11313]],[[11266,11266],\"mapped\",[11314]],[[11267,11267],\"mapped\",[11315]],[[11268,11268],\"mapped\",[11316]],[[11269,11269],\"mapped\",[11317]],[[11270,11270],\"mapped\",[11318]],[[11271,11271],\"mapped\",[11319]],[[11272,11272],\"mapped\",[11320]],[[11273,11273],\"mapped\",[11321]],[[11274,11274],\"mapped\",[11322]],[[11275,11275],\"mapped\",[11323]],[[11276,11276],\"mapped\",[11324]],[[11277,11277],\"mapped\",[11325]],[[11278,11278],\"mapped\",[11326]],[[11279,11279],\"mapped\",[11327]],[[11280,11280],\"mapped\",[11328]],[[11281,11281],\"mapped\",[11329]],[[11282,11282],\"mapped\",[11330]],[[11283,11283],\"mapped\",[11331]],[[11284,11284],\"mapped\",[11332]],[[11285,11285],\"mapped\",[11333]],[[11286,11286],\"mapped\",[11334]],[[11287,11287],\"mapped\",[11335]],[[11288,11288],\"mapped\",[11336]],[[11289,11289],\"mapped\",[11337]],[[11290,11290],\"mapped\",[11338]],[[11291,11291],\"mapped\",[11339]],[[11292,11292],\"mapped\",[11340]],[[11293,11293],\"mapped\",[11341]],[[11294,11294],\"mapped\",[11342]],[[11295,11295],\"mapped\",[11343]],[[11296,11296],\"mapped\",[11344]],[[11297,11297],\"mapped\",[11345]],[[11298,11298],\"mapped\",[11346]],[[11299,11299],\"mapped\",[11347]],[[11300,11300],\"mapped\",[11348]],[[11301,11301],\"mapped\",[11349]],[[11302,11302],\"mapped\",[11350]],[[11303,11303],\"mapped\",[11351]],[[11304,11304],\"mapped\",[11352]],[[11305,11305],\"mapped\",[11353]],[[11306,11306],\"mapped\",[11354]],[[11307,11307],\"mapped\",[11355]],[[11308,11308],\"mapped\",[11356]],[[11309,11309],\"mapped\",[11357]],[[11310,11310],\"mapped\",[11358]],[[11311,11311],\"disallowed\"],[[11312,11358],\"valid\"],[[11359,11359],\"disallowed\"],[[11360,11360],\"mapped\",[11361]],[[11361,11361],\"valid\"],[[11362,11362],\"mapped\",[619]],[[11363,11363],\"mapped\",[7549]],[[11364,11364],\"mapped\",[637]],[[11365,11366],\"valid\"],[[11367,11367],\"mapped\",[11368]],[[11368,11368],\"valid\"],[[11369,11369],\"mapped\",[11370]],[[11370,11370],\"valid\"],[[11371,11371],\"mapped\",[11372]],[[11372,11372],\"valid\"],[[11373,11373],\"mapped\",[593]],[[11374,11374],\"mapped\",[625]],[[11375,11375],\"mapped\",[592]],[[11376,11376],\"mapped\",[594]],[[11377,11377],\"valid\"],[[11378,11378],\"mapped\",[11379]],[[11379,11379],\"valid\"],[[11380,11380],\"valid\"],[[11381,11381],\"mapped\",[11382]],[[11382,11383],\"valid\"],[[11384,11387],\"valid\"],[[11388,11388],\"mapped\",[106]],[[11389,11389],\"mapped\",[118]],[[11390,11390],\"mapped\",[575]],[[11391,11391],\"mapped\",[576]],[[11392,11392],\"mapped\",[11393]],[[11393,11393],\"valid\"],[[11394,11394],\"mapped\",[11395]],[[11395,11395],\"valid\"],[[11396,11396],\"mapped\",[11397]],[[11397,11397],\"valid\"],[[11398,11398],\"mapped\",[11399]],[[11399,11399],\"valid\"],[[11400,11400],\"mapped\",[11401]],[[11401,11401],\"valid\"],[[11402,11402],\"mapped\",[11403]],[[11403,11403],\"valid\"],[[11404,11404],\"mapped\",[11405]],[[11405,11405],\"valid\"],[[11406,11406],\"mapped\",[11407]],[[11407,11407],\"valid\"],[[11408,11408],\"mapped\",[11409]],[[11409,11409],\"valid\"],[[11410,11410],\"mapped\",[11411]],[[11411,11411],\"valid\"],[[11412,11412],\"mapped\",[11413]],[[11413,11413],\"valid\"],[[11414,11414],\"mapped\",[11415]],[[11415,11415],\"valid\"],[[11416,11416],\"mapped\",[11417]],[[11417,11417],\"valid\"],[[11418,11418],\"mapped\",[11419]],[[11419,11419],\"valid\"],[[11420,11420],\"mapped\",[11421]],[[11421,11421],\"valid\"],[[11422,11422],\"mapped\",[11423]],[[11423,11423],\"valid\"],[[11424,11424],\"mapped\",[11425]],[[11425,11425],\"valid\"],[[11426,11426],\"mapped\",[11427]],[[11427,11427],\"valid\"],[[11428,11428],\"mapped\",[11429]],[[11429,11429],\"valid\"],[[11430,11430],\"mapped\",[11431]],[[11431,11431],\"valid\"],[[11432,11432],\"mapped\",[11433]],[[11433,11433],\"valid\"],[[11434,11434],\"mapped\",[11435]],[[11435,11435],\"valid\"],[[11436,11436],\"mapped\",[11437]],[[11437,11437],\"valid\"],[[11438,11438],\"mapped\",[11439]],[[11439,11439],\"valid\"],[[11440,11440],\"mapped\",[11441]],[[11441,11441],\"valid\"],[[11442,11442],\"mapped\",[11443]],[[11443,11443],\"valid\"],[[11444,11444],\"mapped\",[11445]],[[11445,11445],\"valid\"],[[11446,11446],\"mapped\",[11447]],[[11447,11447],\"valid\"],[[11448,11448],\"mapped\",[11449]],[[11449,11449],\"valid\"],[[11450,11450],\"mapped\",[11451]],[[11451,11451],\"valid\"],[[11452,11452],\"mapped\",[11453]],[[11453,11453],\"valid\"],[[11454,11454],\"mapped\",[11455]],[[11455,11455],\"valid\"],[[11456,11456],\"mapped\",[11457]],[[11457,11457],\"valid\"],[[11458,11458],\"mapped\",[11459]],[[11459,11459],\"valid\"],[[11460,11460],\"mapped\",[11461]],[[11461,11461],\"valid\"],[[11462,11462],\"mapped\",[11463]],[[11463,11463],\"valid\"],[[11464,11464],\"mapped\",[11465]],[[11465,11465],\"valid\"],[[11466,11466],\"mapped\",[11467]],[[11467,11467],\"valid\"],[[11468,11468],\"mapped\",[11469]],[[11469,11469],\"valid\"],[[11470,11470],\"mapped\",[11471]],[[11471,11471],\"valid\"],[[11472,11472],\"mapped\",[11473]],[[11473,11473],\"valid\"],[[11474,11474],\"mapped\",[11475]],[[11475,11475],\"valid\"],[[11476,11476],\"mapped\",[11477]],[[11477,11477],\"valid\"],[[11478,11478],\"mapped\",[11479]],[[11479,11479],\"valid\"],[[11480,11480],\"mapped\",[11481]],[[11481,11481],\"valid\"],[[11482,11482],\"mapped\",[11483]],[[11483,11483],\"valid\"],[[11484,11484],\"mapped\",[11485]],[[11485,11485],\"valid\"],[[11486,11486],\"mapped\",[11487]],[[11487,11487],\"valid\"],[[11488,11488],\"mapped\",[11489]],[[11489,11489],\"valid\"],[[11490,11490],\"mapped\",[11491]],[[11491,11492],\"valid\"],[[11493,11498],\"valid\",[],\"NV8\"],[[11499,11499],\"mapped\",[11500]],[[11500,11500],\"valid\"],[[11501,11501],\"mapped\",[11502]],[[11502,11505],\"valid\"],[[11506,11506],\"mapped\",[11507]],[[11507,11507],\"valid\"],[[11508,11512],\"disallowed\"],[[11513,11519],\"valid\",[],\"NV8\"],[[11520,11557],\"valid\"],[[11558,11558],\"disallowed\"],[[11559,11559],\"valid\"],[[11560,11564],\"disallowed\"],[[11565,11565],\"valid\"],[[11566,11567],\"disallowed\"],[[11568,11621],\"valid\"],[[11622,11623],\"valid\"],[[11624,11630],\"disallowed\"],[[11631,11631],\"mapped\",[11617]],[[11632,11632],\"valid\",[],\"NV8\"],[[11633,11646],\"disallowed\"],[[11647,11647],\"valid\"],[[11648,11670],\"valid\"],[[11671,11679],\"disallowed\"],[[11680,11686],\"valid\"],[[11687,11687],\"disallowed\"],[[11688,11694],\"valid\"],[[11695,11695],\"disallowed\"],[[11696,11702],\"valid\"],[[11703,11703],\"disallowed\"],[[11704,11710],\"valid\"],[[11711,11711],\"disallowed\"],[[11712,11718],\"valid\"],[[11719,11719],\"disallowed\"],[[11720,11726],\"valid\"],[[11727,11727],\"disallowed\"],[[11728,11734],\"valid\"],[[11735,11735],\"disallowed\"],[[11736,11742],\"valid\"],[[11743,11743],\"disallowed\"],[[11744,11775],\"valid\"],[[11776,11799],\"valid\",[],\"NV8\"],[[11800,11803],\"valid\",[],\"NV8\"],[[11804,11805],\"valid\",[],\"NV8\"],[[11806,11822],\"valid\",[],\"NV8\"],[[11823,11823],\"valid\"],[[11824,11824],\"valid\",[],\"NV8\"],[[11825,11825],\"valid\",[],\"NV8\"],[[11826,11835],\"valid\",[],\"NV8\"],[[11836,11842],\"valid\",[],\"NV8\"],[[11843,11903],\"disallowed\"],[[11904,11929],\"valid\",[],\"NV8\"],[[11930,11930],\"disallowed\"],[[11931,11934],\"valid\",[],\"NV8\"],[[11935,11935],\"mapped\",[27597]],[[11936,12018],\"valid\",[],\"NV8\"],[[12019,12019],\"mapped\",[40863]],[[12020,12031],\"disallowed\"],[[12032,12032],\"mapped\",[19968]],[[12033,12033],\"mapped\",[20008]],[[12034,12034],\"mapped\",[20022]],[[12035,12035],\"mapped\",[20031]],[[12036,12036],\"mapped\",[20057]],[[12037,12037],\"mapped\",[20101]],[[12038,12038],\"mapped\",[20108]],[[12039,12039],\"mapped\",[20128]],[[12040,12040],\"mapped\",[20154]],[[12041,12041],\"mapped\",[20799]],[[12042,12042],\"mapped\",[20837]],[[12043,12043],\"mapped\",[20843]],[[12044,12044],\"mapped\",[20866]],[[12045,12045],\"mapped\",[20886]],[[12046,12046],\"mapped\",[20907]],[[12047,12047],\"mapped\",[20960]],[[12048,12048],\"mapped\",[20981]],[[12049,12049],\"mapped\",[20992]],[[12050,12050],\"mapped\",[21147]],[[12051,12051],\"mapped\",[21241]],[[12052,12052],\"mapped\",[21269]],[[12053,12053],\"mapped\",[21274]],[[12054,12054],\"mapped\",[21304]],[[12055,12055],\"mapped\",[21313]],[[12056,12056],\"mapped\",[21340]],[[12057,12057],\"mapped\",[21353]],[[12058,12058],\"mapped\",[21378]],[[12059,12059],\"mapped\",[21430]],[[12060,12060],\"mapped\",[21448]],[[12061,12061],\"mapped\",[21475]],[[12062,12062],\"mapped\",[22231]],[[12063,12063],\"mapped\",[22303]],[[12064,12064],\"mapped\",[22763]],[[12065,12065],\"mapped\",[22786]],[[12066,12066],\"mapped\",[22794]],[[12067,12067],\"mapped\",[22805]],[[12068,12068],\"mapped\",[22823]],[[12069,12069],\"mapped\",[22899]],[[12070,12070],\"mapped\",[23376]],[[12071,12071],\"mapped\",[23424]],[[12072,12072],\"mapped\",[23544]],[[12073,12073],\"mapped\",[23567]],[[12074,12074],\"mapped\",[23586]],[[12075,12075],\"mapped\",[23608]],[[12076,12076],\"mapped\",[23662]],[[12077,12077],\"mapped\",[23665]],[[12078,12078],\"mapped\",[24027]],[[12079,12079],\"mapped\",[24037]],[[12080,12080],\"mapped\",[24049]],[[12081,12081],\"mapped\",[24062]],[[12082,12082],\"mapped\",[24178]],[[12083,12083],\"mapped\",[24186]],[[12084,12084],\"mapped\",[24191]],[[12085,12085],\"mapped\",[24308]],[[12086,12086],\"mapped\",[24318]],[[12087,12087],\"mapped\",[24331]],[[12088,12088],\"mapped\",[24339]],[[12089,12089],\"mapped\",[24400]],[[12090,12090],\"mapped\",[24417]],[[12091,12091],\"mapped\",[24435]],[[12092,12092],\"mapped\",[24515]],[[12093,12093],\"mapped\",[25096]],[[12094,12094],\"mapped\",[25142]],[[12095,12095],\"mapped\",[25163]],[[12096,12096],\"mapped\",[25903]],[[12097,12097],\"mapped\",[25908]],[[12098,12098],\"mapped\",[25991]],[[12099,12099],\"mapped\",[26007]],[[12100,12100],\"mapped\",[26020]],[[12101,12101],\"mapped\",[26041]],[[12102,12102],\"mapped\",[26080]],[[12103,12103],\"mapped\",[26085]],[[12104,12104],\"mapped\",[26352]],[[12105,12105],\"mapped\",[26376]],[[12106,12106],\"mapped\",[26408]],[[12107,12107],\"mapped\",[27424]],[[12108,12108],\"mapped\",[27490]],[[12109,12109],\"mapped\",[27513]],[[12110,12110],\"mapped\",[27571]],[[12111,12111],\"mapped\",[27595]],[[12112,12112],\"mapped\",[27604]],[[12113,12113],\"mapped\",[27611]],[[12114,12114],\"mapped\",[27663]],[[12115,12115],\"mapped\",[27668]],[[12116,12116],\"mapped\",[27700]],[[12117,12117],\"mapped\",[28779]],[[12118,12118],\"mapped\",[29226]],[[12119,12119],\"mapped\",[29238]],[[12120,12120],\"mapped\",[29243]],[[12121,12121],\"mapped\",[29247]],[[12122,12122],\"mapped\",[29255]],[[12123,12123],\"mapped\",[29273]],[[12124,12124],\"mapped\",[29275]],[[12125,12125],\"mapped\",[29356]],[[12126,12126],\"mapped\",[29572]],[[12127,12127],\"mapped\",[29577]],[[12128,12128],\"mapped\",[29916]],[[12129,12129],\"mapped\",[29926]],[[12130,12130],\"mapped\",[29976]],[[12131,12131],\"mapped\",[29983]],[[12132,12132],\"mapped\",[29992]],[[12133,12133],\"mapped\",[30000]],[[12134,12134],\"mapped\",[30091]],[[12135,12135],\"mapped\",[30098]],[[12136,12136],\"mapped\",[30326]],[[12137,12137],\"mapped\",[30333]],[[12138,12138],\"mapped\",[30382]],[[12139,12139],\"mapped\",[30399]],[[12140,12140],\"mapped\",[30446]],[[12141,12141],\"mapped\",[30683]],[[12142,12142],\"mapped\",[30690]],[[12143,12143],\"mapped\",[30707]],[[12144,12144],\"mapped\",[31034]],[[12145,12145],\"mapped\",[31160]],[[12146,12146],\"mapped\",[31166]],[[12147,12147],\"mapped\",[31348]],[[12148,12148],\"mapped\",[31435]],[[12149,12149],\"mapped\",[31481]],[[12150,12150],\"mapped\",[31859]],[[12151,12151],\"mapped\",[31992]],[[12152,12152],\"mapped\",[32566]],[[12153,12153],\"mapped\",[32593]],[[12154,12154],\"mapped\",[32650]],[[12155,12155],\"mapped\",[32701]],[[12156,12156],\"mapped\",[32769]],[[12157,12157],\"mapped\",[32780]],[[12158,12158],\"mapped\",[32786]],[[12159,12159],\"mapped\",[32819]],[[12160,12160],\"mapped\",[32895]],[[12161,12161],\"mapped\",[32905]],[[12162,12162],\"mapped\",[33251]],[[12163,12163],\"mapped\",[33258]],[[12164,12164],\"mapped\",[33267]],[[12165,12165],\"mapped\",[33276]],[[12166,12166],\"mapped\",[33292]],[[12167,12167],\"mapped\",[33307]],[[12168,12168],\"mapped\",[33311]],[[12169,12169],\"mapped\",[33390]],[[12170,12170],\"mapped\",[33394]],[[12171,12171],\"mapped\",[33400]],[[12172,12172],\"mapped\",[34381]],[[12173,12173],\"mapped\",[34411]],[[12174,12174],\"mapped\",[34880]],[[12175,12175],\"mapped\",[34892]],[[12176,12176],\"mapped\",[34915]],[[12177,12177],\"mapped\",[35198]],[[12178,12178],\"mapped\",[35211]],[[12179,12179],\"mapped\",[35282]],[[12180,12180],\"mapped\",[35328]],[[12181,12181],\"mapped\",[35895]],[[12182,12182],\"mapped\",[35910]],[[12183,12183],\"mapped\",[35925]],[[12184,12184],\"mapped\",[35960]],[[12185,12185],\"mapped\",[35997]],[[12186,12186],\"mapped\",[36196]],[[12187,12187],\"mapped\",[36208]],[[12188,12188],\"mapped\",[36275]],[[12189,12189],\"mapped\",[36523]],[[12190,12190],\"mapped\",[36554]],[[12191,12191],\"mapped\",[36763]],[[12192,12192],\"mapped\",[36784]],[[12193,12193],\"mapped\",[36789]],[[12194,12194],\"mapped\",[37009]],[[12195,12195],\"mapped\",[37193]],[[12196,12196],\"mapped\",[37318]],[[12197,12197],\"mapped\",[37324]],[[12198,12198],\"mapped\",[37329]],[[12199,12199],\"mapped\",[38263]],[[12200,12200],\"mapped\",[38272]],[[12201,12201],\"mapped\",[38428]],[[12202,12202],\"mapped\",[38582]],[[12203,12203],\"mapped\",[38585]],[[12204,12204],\"mapped\",[38632]],[[12205,12205],\"mapped\",[38737]],[[12206,12206],\"mapped\",[38750]],[[12207,12207],\"mapped\",[38754]],[[12208,12208],\"mapped\",[38761]],[[12209,12209],\"mapped\",[38859]],[[12210,12210],\"mapped\",[38893]],[[12211,12211],\"mapped\",[38899]],[[12212,12212],\"mapped\",[38913]],[[12213,12213],\"mapped\",[39080]],[[12214,12214],\"mapped\",[39131]],[[12215,12215],\"mapped\",[39135]],[[12216,12216],\"mapped\",[39318]],[[12217,12217],\"mapped\",[39321]],[[12218,12218],\"mapped\",[39340]],[[12219,12219],\"mapped\",[39592]],[[12220,12220],\"mapped\",[39640]],[[12221,12221],\"mapped\",[39647]],[[12222,12222],\"mapped\",[39717]],[[12223,12223],\"mapped\",[39727]],[[12224,12224],\"mapped\",[39730]],[[12225,12225],\"mapped\",[39740]],[[12226,12226],\"mapped\",[39770]],[[12227,12227],\"mapped\",[40165]],[[12228,12228],\"mapped\",[40565]],[[12229,12229],\"mapped\",[40575]],[[12230,12230],\"mapped\",[40613]],[[12231,12231],\"mapped\",[40635]],[[12232,12232],\"mapped\",[40643]],[[12233,12233],\"mapped\",[40653]],[[12234,12234],\"mapped\",[40657]],[[12235,12235],\"mapped\",[40697]],[[12236,12236],\"mapped\",[40701]],[[12237,12237],\"mapped\",[40718]],[[12238,12238],\"mapped\",[40723]],[[12239,12239],\"mapped\",[40736]],[[12240,12240],\"mapped\",[40763]],[[12241,12241],\"mapped\",[40778]],[[12242,12242],\"mapped\",[40786]],[[12243,12243],\"mapped\",[40845]],[[12244,12244],\"mapped\",[40860]],[[12245,12245],\"mapped\",[40864]],[[12246,12271],\"disallowed\"],[[12272,12283],\"disallowed\"],[[12284,12287],\"disallowed\"],[[12288,12288],\"disallowed_STD3_mapped\",[32]],[[12289,12289],\"valid\",[],\"NV8\"],[[12290,12290],\"mapped\",[46]],[[12291,12292],\"valid\",[],\"NV8\"],[[12293,12295],\"valid\"],[[12296,12329],\"valid\",[],\"NV8\"],[[12330,12333],\"valid\"],[[12334,12341],\"valid\",[],\"NV8\"],[[12342,12342],\"mapped\",[12306]],[[12343,12343],\"valid\",[],\"NV8\"],[[12344,12344],\"mapped\",[21313]],[[12345,12345],\"mapped\",[21316]],[[12346,12346],\"mapped\",[21317]],[[12347,12347],\"valid\",[],\"NV8\"],[[12348,12348],\"valid\"],[[12349,12349],\"valid\",[],\"NV8\"],[[12350,12350],\"valid\",[],\"NV8\"],[[12351,12351],\"valid\",[],\"NV8\"],[[12352,12352],\"disallowed\"],[[12353,12436],\"valid\"],[[12437,12438],\"valid\"],[[12439,12440],\"disallowed\"],[[12441,12442],\"valid\"],[[12443,12443],\"disallowed_STD3_mapped\",[32,12441]],[[12444,12444],\"disallowed_STD3_mapped\",[32,12442]],[[12445,12446],\"valid\"],[[12447,12447],\"mapped\",[12424,12426]],[[12448,12448],\"valid\",[],\"NV8\"],[[12449,12542],\"valid\"],[[12543,12543],\"mapped\",[12467,12488]],[[12544,12548],\"disallowed\"],[[12549,12588],\"valid\"],[[12589,12589],\"valid\"],[[12590,12592],\"disallowed\"],[[12593,12593],\"mapped\",[4352]],[[12594,12594],\"mapped\",[4353]],[[12595,12595],\"mapped\",[4522]],[[12596,12596],\"mapped\",[4354]],[[12597,12597],\"mapped\",[4524]],[[12598,12598],\"mapped\",[4525]],[[12599,12599],\"mapped\",[4355]],[[12600,12600],\"mapped\",[4356]],[[12601,12601],\"mapped\",[4357]],[[12602,12602],\"mapped\",[4528]],[[12603,12603],\"mapped\",[4529]],[[12604,12604],\"mapped\",[4530]],[[12605,12605],\"mapped\",[4531]],[[12606,12606],\"mapped\",[4532]],[[12607,12607],\"mapped\",[4533]],[[12608,12608],\"mapped\",[4378]],[[12609,12609],\"mapped\",[4358]],[[12610,12610],\"mapped\",[4359]],[[12611,12611],\"mapped\",[4360]],[[12612,12612],\"mapped\",[4385]],[[12613,12613],\"mapped\",[4361]],[[12614,12614],\"mapped\",[4362]],[[12615,12615],\"mapped\",[4363]],[[12616,12616],\"mapped\",[4364]],[[12617,12617],\"mapped\",[4365]],[[12618,12618],\"mapped\",[4366]],[[12619,12619],\"mapped\",[4367]],[[12620,12620],\"mapped\",[4368]],[[12621,12621],\"mapped\",[4369]],[[12622,12622],\"mapped\",[4370]],[[12623,12623],\"mapped\",[4449]],[[12624,12624],\"mapped\",[4450]],[[12625,12625],\"mapped\",[4451]],[[12626,12626],\"mapped\",[4452]],[[12627,12627],\"mapped\",[4453]],[[12628,12628],\"mapped\",[4454]],[[12629,12629],\"mapped\",[4455]],[[12630,12630],\"mapped\",[4456]],[[12631,12631],\"mapped\",[4457]],[[12632,12632],\"mapped\",[4458]],[[12633,12633],\"mapped\",[4459]],[[12634,12634],\"mapped\",[4460]],[[12635,12635],\"mapped\",[4461]],[[12636,12636],\"mapped\",[4462]],[[12637,12637],\"mapped\",[4463]],[[12638,12638],\"mapped\",[4464]],[[12639,12639],\"mapped\",[4465]],[[12640,12640],\"mapped\",[4466]],[[12641,12641],\"mapped\",[4467]],[[12642,12642],\"mapped\",[4468]],[[12643,12643],\"mapped\",[4469]],[[12644,12644],\"disallowed\"],[[12645,12645],\"mapped\",[4372]],[[12646,12646],\"mapped\",[4373]],[[12647,12647],\"mapped\",[4551]],[[12648,12648],\"mapped\",[4552]],[[12649,12649],\"mapped\",[4556]],[[12650,12650],\"mapped\",[4558]],[[12651,12651],\"mapped\",[4563]],[[12652,12652],\"mapped\",[4567]],[[12653,12653],\"mapped\",[4569]],[[12654,12654],\"mapped\",[4380]],[[12655,12655],\"mapped\",[4573]],[[12656,12656],\"mapped\",[4575]],[[12657,12657],\"mapped\",[4381]],[[12658,12658],\"mapped\",[4382]],[[12659,12659],\"mapped\",[4384]],[[12660,12660],\"mapped\",[4386]],[[12661,12661],\"mapped\",[4387]],[[12662,12662],\"mapped\",[4391]],[[12663,12663],\"mapped\",[4393]],[[12664,12664],\"mapped\",[4395]],[[12665,12665],\"mapped\",[4396]],[[12666,12666],\"mapped\",[4397]],[[12667,12667],\"mapped\",[4398]],[[12668,12668],\"mapped\",[4399]],[[12669,12669],\"mapped\",[4402]],[[12670,12670],\"mapped\",[4406]],[[12671,12671],\"mapped\",[4416]],[[12672,12672],\"mapped\",[4423]],[[12673,12673],\"mapped\",[4428]],[[12674,12674],\"mapped\",[4593]],[[12675,12675],\"mapped\",[4594]],[[12676,12676],\"mapped\",[4439]],[[12677,12677],\"mapped\",[4440]],[[12678,12678],\"mapped\",[4441]],[[12679,12679],\"mapped\",[4484]],[[12680,12680],\"mapped\",[4485]],[[12681,12681],\"mapped\",[4488]],[[12682,12682],\"mapped\",[4497]],[[12683,12683],\"mapped\",[4498]],[[12684,12684],\"mapped\",[4500]],[[12685,12685],\"mapped\",[4510]],[[12686,12686],\"mapped\",[4513]],[[12687,12687],\"disallowed\"],[[12688,12689],\"valid\",[],\"NV8\"],[[12690,12690],\"mapped\",[19968]],[[12691,12691],\"mapped\",[20108]],[[12692,12692],\"mapped\",[19977]],[[12693,12693],\"mapped\",[22235]],[[12694,12694],\"mapped\",[19978]],[[12695,12695],\"mapped\",[20013]],[[12696,12696],\"mapped\",[19979]],[[12697,12697],\"mapped\",[30002]],[[12698,12698],\"mapped\",[20057]],[[12699,12699],\"mapped\",[19993]],[[12700,12700],\"mapped\",[19969]],[[12701,12701],\"mapped\",[22825]],[[12702,12702],\"mapped\",[22320]],[[12703,12703],\"mapped\",[20154]],[[12704,12727],\"valid\"],[[12728,12730],\"valid\"],[[12731,12735],\"disallowed\"],[[12736,12751],\"valid\",[],\"NV8\"],[[12752,12771],\"valid\",[],\"NV8\"],[[12772,12783],\"disallowed\"],[[12784,12799],\"valid\"],[[12800,12800],\"disallowed_STD3_mapped\",[40,4352,41]],[[12801,12801],\"disallowed_STD3_mapped\",[40,4354,41]],[[12802,12802],\"disallowed_STD3_mapped\",[40,4355,41]],[[12803,12803],\"disallowed_STD3_mapped\",[40,4357,41]],[[12804,12804],\"disallowed_STD3_mapped\",[40,4358,41]],[[12805,12805],\"disallowed_STD3_mapped\",[40,4359,41]],[[12806,12806],\"disallowed_STD3_mapped\",[40,4361,41]],[[12807,12807],\"disallowed_STD3_mapped\",[40,4363,41]],[[12808,12808],\"disallowed_STD3_mapped\",[40,4364,41]],[[12809,12809],\"disallowed_STD3_mapped\",[40,4366,41]],[[12810,12810],\"disallowed_STD3_mapped\",[40,4367,41]],[[12811,12811],\"disallowed_STD3_mapped\",[40,4368,41]],[[12812,12812],\"disallowed_STD3_mapped\",[40,4369,41]],[[12813,12813],\"disallowed_STD3_mapped\",[40,4370,41]],[[12814,12814],\"disallowed_STD3_mapped\",[40,44032,41]],[[12815,12815],\"disallowed_STD3_mapped\",[40,45208,41]],[[12816,12816],\"disallowed_STD3_mapped\",[40,45796,41]],[[12817,12817],\"disallowed_STD3_mapped\",[40,46972,41]],[[12818,12818],\"disallowed_STD3_mapped\",[40,47560,41]],[[12819,12819],\"disallowed_STD3_mapped\",[40,48148,41]],[[12820,12820],\"disallowed_STD3_mapped\",[40,49324,41]],[[12821,12821],\"disallowed_STD3_mapped\",[40,50500,41]],[[12822,12822],\"disallowed_STD3_mapped\",[40,51088,41]],[[12823,12823],\"disallowed_STD3_mapped\",[40,52264,41]],[[12824,12824],\"disallowed_STD3_mapped\",[40,52852,41]],[[12825,12825],\"disallowed_STD3_mapped\",[40,53440,41]],[[12826,12826],\"disallowed_STD3_mapped\",[40,54028,41]],[[12827,12827],\"disallowed_STD3_mapped\",[40,54616,41]],[[12828,12828],\"disallowed_STD3_mapped\",[40,51452,41]],[[12829,12829],\"disallowed_STD3_mapped\",[40,50724,51204,41]],[[12830,12830],\"disallowed_STD3_mapped\",[40,50724,54980,41]],[[12831,12831],\"disallowed\"],[[12832,12832],\"disallowed_STD3_mapped\",[40,19968,41]],[[12833,12833],\"disallowed_STD3_mapped\",[40,20108,41]],[[12834,12834],\"disallowed_STD3_mapped\",[40,19977,41]],[[12835,12835],\"disallowed_STD3_mapped\",[40,22235,41]],[[12836,12836],\"disallowed_STD3_mapped\",[40,20116,41]],[[12837,12837],\"disallowed_STD3_mapped\",[40,20845,41]],[[12838,12838],\"disallowed_STD3_mapped\",[40,19971,41]],[[12839,12839],\"disallowed_STD3_mapped\",[40,20843,41]],[[12840,12840],\"disallowed_STD3_mapped\",[40,20061,41]],[[12841,12841],\"disallowed_STD3_mapped\",[40,21313,41]],[[12842,12842],\"disallowed_STD3_mapped\",[40,26376,41]],[[12843,12843],\"disallowed_STD3_mapped\",[40,28779,41]],[[12844,12844],\"disallowed_STD3_mapped\",[40,27700,41]],[[12845,12845],\"disallowed_STD3_mapped\",[40,26408,41]],[[12846,12846],\"disallowed_STD3_mapped\",[40,37329,41]],[[12847,12847],\"disallowed_STD3_mapped\",[40,22303,41]],[[12848,12848],\"disallowed_STD3_mapped\",[40,26085,41]],[[12849,12849],\"disallowed_STD3_mapped\",[40,26666,41]],[[12850,12850],\"disallowed_STD3_mapped\",[40,26377,41]],[[12851,12851],\"disallowed_STD3_mapped\",[40,31038,41]],[[12852,12852],\"disallowed_STD3_mapped\",[40,21517,41]],[[12853,12853],\"disallowed_STD3_mapped\",[40,29305,41]],[[12854,12854],\"disallowed_STD3_mapped\",[40,36001,41]],[[12855,12855],\"disallowed_STD3_mapped\",[40,31069,41]],[[12856,12856],\"disallowed_STD3_mapped\",[40,21172,41]],[[12857,12857],\"disallowed_STD3_mapped\",[40,20195,41]],[[12858,12858],\"disallowed_STD3_mapped\",[40,21628,41]],[[12859,12859],\"disallowed_STD3_mapped\",[40,23398,41]],[[12860,12860],\"disallowed_STD3_mapped\",[40,30435,41]],[[12861,12861],\"disallowed_STD3_mapped\",[40,20225,41]],[[12862,12862],\"disallowed_STD3_mapped\",[40,36039,41]],[[12863,12863],\"disallowed_STD3_mapped\",[40,21332,41]],[[12864,12864],\"disallowed_STD3_mapped\",[40,31085,41]],[[12865,12865],\"disallowed_STD3_mapped\",[40,20241,41]],[[12866,12866],\"disallowed_STD3_mapped\",[40,33258,41]],[[12867,12867],\"disallowed_STD3_mapped\",[40,33267,41]],[[12868,12868],\"mapped\",[21839]],[[12869,12869],\"mapped\",[24188]],[[12870,12870],\"mapped\",[25991]],[[12871,12871],\"mapped\",[31631]],[[12872,12879],\"valid\",[],\"NV8\"],[[12880,12880],\"mapped\",[112,116,101]],[[12881,12881],\"mapped\",[50,49]],[[12882,12882],\"mapped\",[50,50]],[[12883,12883],\"mapped\",[50,51]],[[12884,12884],\"mapped\",[50,52]],[[12885,12885],\"mapped\",[50,53]],[[12886,12886],\"mapped\",[50,54]],[[12887,12887],\"mapped\",[50,55]],[[12888,12888],\"mapped\",[50,56]],[[12889,12889],\"mapped\",[50,57]],[[12890,12890],\"mapped\",[51,48]],[[12891,12891],\"mapped\",[51,49]],[[12892,12892],\"mapped\",[51,50]],[[12893,12893],\"mapped\",[51,51]],[[12894,12894],\"mapped\",[51,52]],[[12895,12895],\"mapped\",[51,53]],[[12896,12896],\"mapped\",[4352]],[[12897,12897],\"mapped\",[4354]],[[12898,12898],\"mapped\",[4355]],[[12899,12899],\"mapped\",[4357]],[[12900,12900],\"mapped\",[4358]],[[12901,12901],\"mapped\",[4359]],[[12902,12902],\"mapped\",[4361]],[[12903,12903],\"mapped\",[4363]],[[12904,12904],\"mapped\",[4364]],[[12905,12905],\"mapped\",[4366]],[[12906,12906],\"mapped\",[4367]],[[12907,12907],\"mapped\",[4368]],[[12908,12908],\"mapped\",[4369]],[[12909,12909],\"mapped\",[4370]],[[12910,12910],\"mapped\",[44032]],[[12911,12911],\"mapped\",[45208]],[[12912,12912],\"mapped\",[45796]],[[12913,12913],\"mapped\",[46972]],[[12914,12914],\"mapped\",[47560]],[[12915,12915],\"mapped\",[48148]],[[12916,12916],\"mapped\",[49324]],[[12917,12917],\"mapped\",[50500]],[[12918,12918],\"mapped\",[51088]],[[12919,12919],\"mapped\",[52264]],[[12920,12920],\"mapped\",[52852]],[[12921,12921],\"mapped\",[53440]],[[12922,12922],\"mapped\",[54028]],[[12923,12923],\"mapped\",[54616]],[[12924,12924],\"mapped\",[52280,44256]],[[12925,12925],\"mapped\",[51452,51032]],[[12926,12926],\"mapped\",[50864]],[[12927,12927],\"valid\",[],\"NV8\"],[[12928,12928],\"mapped\",[19968]],[[12929,12929],\"mapped\",[20108]],[[12930,12930],\"mapped\",[19977]],[[12931,12931],\"mapped\",[22235]],[[12932,12932],\"mapped\",[20116]],[[12933,12933],\"mapped\",[20845]],[[12934,12934],\"mapped\",[19971]],[[12935,12935],\"mapped\",[20843]],[[12936,12936],\"mapped\",[20061]],[[12937,12937],\"mapped\",[21313]],[[12938,12938],\"mapped\",[26376]],[[12939,12939],\"mapped\",[28779]],[[12940,12940],\"mapped\",[27700]],[[12941,12941],\"mapped\",[26408]],[[12942,12942],\"mapped\",[37329]],[[12943,12943],\"mapped\",[22303]],[[12944,12944],\"mapped\",[26085]],[[12945,12945],\"mapped\",[26666]],[[12946,12946],\"mapped\",[26377]],[[12947,12947],\"mapped\",[31038]],[[12948,12948],\"mapped\",[21517]],[[12949,12949],\"mapped\",[29305]],[[12950,12950],\"mapped\",[36001]],[[12951,12951],\"mapped\",[31069]],[[12952,12952],\"mapped\",[21172]],[[12953,12953],\"mapped\",[31192]],[[12954,12954],\"mapped\",[30007]],[[12955,12955],\"mapped\",[22899]],[[12956,12956],\"mapped\",[36969]],[[12957,12957],\"mapped\",[20778]],[[12958,12958],\"mapped\",[21360]],[[12959,12959],\"mapped\",[27880]],[[12960,12960],\"mapped\",[38917]],[[12961,12961],\"mapped\",[20241]],[[12962,12962],\"mapped\",[20889]],[[12963,12963],\"mapped\",[27491]],[[12964,12964],\"mapped\",[19978]],[[12965,12965],\"mapped\",[20013]],[[12966,12966],\"mapped\",[19979]],[[12967,12967],\"mapped\",[24038]],[[12968,12968],\"mapped\",[21491]],[[12969,12969],\"mapped\",[21307]],[[12970,12970],\"mapped\",[23447]],[[12971,12971],\"mapped\",[23398]],[[12972,12972],\"mapped\",[30435]],[[12973,12973],\"mapped\",[20225]],[[12974,12974],\"mapped\",[36039]],[[12975,12975],\"mapped\",[21332]],[[12976,12976],\"mapped\",[22812]],[[12977,12977],\"mapped\",[51,54]],[[12978,12978],\"mapped\",[51,55]],[[12979,12979],\"mapped\",[51,56]],[[12980,12980],\"mapped\",[51,57]],[[12981,12981],\"mapped\",[52,48]],[[12982,12982],\"mapped\",[52,49]],[[12983,12983],\"mapped\",[52,50]],[[12984,12984],\"mapped\",[52,51]],[[12985,12985],\"mapped\",[52,52]],[[12986,12986],\"mapped\",[52,53]],[[12987,12987],\"mapped\",[52,54]],[[12988,12988],\"mapped\",[52,55]],[[12989,12989],\"mapped\",[52,56]],[[12990,12990],\"mapped\",[52,57]],[[12991,12991],\"mapped\",[53,48]],[[12992,12992],\"mapped\",[49,26376]],[[12993,12993],\"mapped\",[50,26376]],[[12994,12994],\"mapped\",[51,26376]],[[12995,12995],\"mapped\",[52,26376]],[[12996,12996],\"mapped\",[53,26376]],[[12997,12997],\"mapped\",[54,26376]],[[12998,12998],\"mapped\",[55,26376]],[[12999,12999],\"mapped\",[56,26376]],[[13000,13000],\"mapped\",[57,26376]],[[13001,13001],\"mapped\",[49,48,26376]],[[13002,13002],\"mapped\",[49,49,26376]],[[13003,13003],\"mapped\",[49,50,26376]],[[13004,13004],\"mapped\",[104,103]],[[13005,13005],\"mapped\",[101,114,103]],[[13006,13006],\"mapped\",[101,118]],[[13007,13007],\"mapped\",[108,116,100]],[[13008,13008],\"mapped\",[12450]],[[13009,13009],\"mapped\",[12452]],[[13010,13010],\"mapped\",[12454]],[[13011,13011],\"mapped\",[12456]],[[13012,13012],\"mapped\",[12458]],[[13013,13013],\"mapped\",[12459]],[[13014,13014],\"mapped\",[12461]],[[13015,13015],\"mapped\",[12463]],[[13016,13016],\"mapped\",[12465]],[[13017,13017],\"mapped\",[12467]],[[13018,13018],\"mapped\",[12469]],[[13019,13019],\"mapped\",[12471]],[[13020,13020],\"mapped\",[12473]],[[13021,13021],\"mapped\",[12475]],[[13022,13022],\"mapped\",[12477]],[[13023,13023],\"mapped\",[12479]],[[13024,13024],\"mapped\",[12481]],[[13025,13025],\"mapped\",[12484]],[[13026,13026],\"mapped\",[12486]],[[13027,13027],\"mapped\",[12488]],[[13028,13028],\"mapped\",[12490]],[[13029,13029],\"mapped\",[12491]],[[13030,13030],\"mapped\",[12492]],[[13031,13031],\"mapped\",[12493]],[[13032,13032],\"mapped\",[12494]],[[13033,13033],\"mapped\",[12495]],[[13034,13034],\"mapped\",[12498]],[[13035,13035],\"mapped\",[12501]],[[13036,13036],\"mapped\",[12504]],[[13037,13037],\"mapped\",[12507]],[[13038,13038],\"mapped\",[12510]],[[13039,13039],\"mapped\",[12511]],[[13040,13040],\"mapped\",[12512]],[[13041,13041],\"mapped\",[12513]],[[13042,13042],\"mapped\",[12514]],[[13043,13043],\"mapped\",[12516]],[[13044,13044],\"mapped\",[12518]],[[13045,13045],\"mapped\",[12520]],[[13046,13046],\"mapped\",[12521]],[[13047,13047],\"mapped\",[12522]],[[13048,13048],\"mapped\",[12523]],[[13049,13049],\"mapped\",[12524]],[[13050,13050],\"mapped\",[12525]],[[13051,13051],\"mapped\",[12527]],[[13052,13052],\"mapped\",[12528]],[[13053,13053],\"mapped\",[12529]],[[13054,13054],\"mapped\",[12530]],[[13055,13055],\"disallowed\"],[[13056,13056],\"mapped\",[12450,12497,12540,12488]],[[13057,13057],\"mapped\",[12450,12523,12501,12449]],[[13058,13058],\"mapped\",[12450,12531,12506,12450]],[[13059,13059],\"mapped\",[12450,12540,12523]],[[13060,13060],\"mapped\",[12452,12491,12531,12464]],[[13061,13061],\"mapped\",[12452,12531,12481]],[[13062,13062],\"mapped\",[12454,12457,12531]],[[13063,13063],\"mapped\",[12456,12473,12463,12540,12489]],[[13064,13064],\"mapped\",[12456,12540,12459,12540]],[[13065,13065],\"mapped\",[12458,12531,12473]],[[13066,13066],\"mapped\",[12458,12540,12512]],[[13067,13067],\"mapped\",[12459,12452,12522]],[[13068,13068],\"mapped\",[12459,12521,12483,12488]],[[13069,13069],\"mapped\",[12459,12525,12522,12540]],[[13070,13070],\"mapped\",[12460,12525,12531]],[[13071,13071],\"mapped\",[12460,12531,12510]],[[13072,13072],\"mapped\",[12462,12460]],[[13073,13073],\"mapped\",[12462,12491,12540]],[[13074,13074],\"mapped\",[12461,12517,12522,12540]],[[13075,13075],\"mapped\",[12462,12523,12480,12540]],[[13076,13076],\"mapped\",[12461,12525]],[[13077,13077],\"mapped\",[12461,12525,12464,12521,12512]],[[13078,13078],\"mapped\",[12461,12525,12513,12540,12488,12523]],[[13079,13079],\"mapped\",[12461,12525,12527,12483,12488]],[[13080,13080],\"mapped\",[12464,12521,12512]],[[13081,13081],\"mapped\",[12464,12521,12512,12488,12531]],[[13082,13082],\"mapped\",[12463,12523,12476,12452,12525]],[[13083,13083],\"mapped\",[12463,12525,12540,12493]],[[13084,13084],\"mapped\",[12465,12540,12473]],[[13085,13085],\"mapped\",[12467,12523,12490]],[[13086,13086],\"mapped\",[12467,12540,12509]],[[13087,13087],\"mapped\",[12469,12452,12463,12523]],[[13088,13088],\"mapped\",[12469,12531,12481,12540,12512]],[[13089,13089],\"mapped\",[12471,12522,12531,12464]],[[13090,13090],\"mapped\",[12475,12531,12481]],[[13091,13091],\"mapped\",[12475,12531,12488]],[[13092,13092],\"mapped\",[12480,12540,12473]],[[13093,13093],\"mapped\",[12487,12471]],[[13094,13094],\"mapped\",[12489,12523]],[[13095,13095],\"mapped\",[12488,12531]],[[13096,13096],\"mapped\",[12490,12494]],[[13097,13097],\"mapped\",[12494,12483,12488]],[[13098,13098],\"mapped\",[12495,12452,12484]],[[13099,13099],\"mapped\",[12497,12540,12475,12531,12488]],[[13100,13100],\"mapped\",[12497,12540,12484]],[[13101,13101],\"mapped\",[12496,12540,12524,12523]],[[13102,13102],\"mapped\",[12500,12450,12473,12488,12523]],[[13103,13103],\"mapped\",[12500,12463,12523]],[[13104,13104],\"mapped\",[12500,12467]],[[13105,13105],\"mapped\",[12499,12523]],[[13106,13106],\"mapped\",[12501,12449,12521,12483,12489]],[[13107,13107],\"mapped\",[12501,12451,12540,12488]],[[13108,13108],\"mapped\",[12502,12483,12471,12455,12523]],[[13109,13109],\"mapped\",[12501,12521,12531]],[[13110,13110],\"mapped\",[12504,12463,12479,12540,12523]],[[13111,13111],\"mapped\",[12506,12477]],[[13112,13112],\"mapped\",[12506,12491,12498]],[[13113,13113],\"mapped\",[12504,12523,12484]],[[13114,13114],\"mapped\",[12506,12531,12473]],[[13115,13115],\"mapped\",[12506,12540,12472]],[[13116,13116],\"mapped\",[12505,12540,12479]],[[13117,13117],\"mapped\",[12509,12452,12531,12488]],[[13118,13118],\"mapped\",[12508,12523,12488]],[[13119,13119],\"mapped\",[12507,12531]],[[13120,13120],\"mapped\",[12509,12531,12489]],[[13121,13121],\"mapped\",[12507,12540,12523]],[[13122,13122],\"mapped\",[12507,12540,12531]],[[13123,13123],\"mapped\",[12510,12452,12463,12525]],[[13124,13124],\"mapped\",[12510,12452,12523]],[[13125,13125],\"mapped\",[12510,12483,12495]],[[13126,13126],\"mapped\",[12510,12523,12463]],[[13127,13127],\"mapped\",[12510,12531,12471,12519,12531]],[[13128,13128],\"mapped\",[12511,12463,12525,12531]],[[13129,13129],\"mapped\",[12511,12522]],[[13130,13130],\"mapped\",[12511,12522,12496,12540,12523]],[[13131,13131],\"mapped\",[12513,12460]],[[13132,13132],\"mapped\",[12513,12460,12488,12531]],[[13133,13133],\"mapped\",[12513,12540,12488,12523]],[[13134,13134],\"mapped\",[12516,12540,12489]],[[13135,13135],\"mapped\",[12516,12540,12523]],[[13136,13136],\"mapped\",[12518,12450,12531]],[[13137,13137],\"mapped\",[12522,12483,12488,12523]],[[13138,13138],\"mapped\",[12522,12521]],[[13139,13139],\"mapped\",[12523,12500,12540]],[[13140,13140],\"mapped\",[12523,12540,12502,12523]],[[13141,13141],\"mapped\",[12524,12512]],[[13142,13142],\"mapped\",[12524,12531,12488,12466,12531]],[[13143,13143],\"mapped\",[12527,12483,12488]],[[13144,13144],\"mapped\",[48,28857]],[[13145,13145],\"mapped\",[49,28857]],[[13146,13146],\"mapped\",[50,28857]],[[13147,13147],\"mapped\",[51,28857]],[[13148,13148],\"mapped\",[52,28857]],[[13149,13149],\"mapped\",[53,28857]],[[13150,13150],\"mapped\",[54,28857]],[[13151,13151],\"mapped\",[55,28857]],[[13152,13152],\"mapped\",[56,28857]],[[13153,13153],\"mapped\",[57,28857]],[[13154,13154],\"mapped\",[49,48,28857]],[[13155,13155],\"mapped\",[49,49,28857]],[[13156,13156],\"mapped\",[49,50,28857]],[[13157,13157],\"mapped\",[49,51,28857]],[[13158,13158],\"mapped\",[49,52,28857]],[[13159,13159],\"mapped\",[49,53,28857]],[[13160,13160],\"mapped\",[49,54,28857]],[[13161,13161],\"mapped\",[49,55,28857]],[[13162,13162],\"mapped\",[49,56,28857]],[[13163,13163],\"mapped\",[49,57,28857]],[[13164,13164],\"mapped\",[50,48,28857]],[[13165,13165],\"mapped\",[50,49,28857]],[[13166,13166],\"mapped\",[50,50,28857]],[[13167,13167],\"mapped\",[50,51,28857]],[[13168,13168],\"mapped\",[50,52,28857]],[[13169,13169],\"mapped\",[104,112,97]],[[13170,13170],\"mapped\",[100,97]],[[13171,13171],\"mapped\",[97,117]],[[13172,13172],\"mapped\",[98,97,114]],[[13173,13173],\"mapped\",[111,118]],[[13174,13174],\"mapped\",[112,99]],[[13175,13175],\"mapped\",[100,109]],[[13176,13176],\"mapped\",[100,109,50]],[[13177,13177],\"mapped\",[100,109,51]],[[13178,13178],\"mapped\",[105,117]],[[13179,13179],\"mapped\",[24179,25104]],[[13180,13180],\"mapped\",[26157,21644]],[[13181,13181],\"mapped\",[22823,27491]],[[13182,13182],\"mapped\",[26126,27835]],[[13183,13183],\"mapped\",[26666,24335,20250,31038]],[[13184,13184],\"mapped\",[112,97]],[[13185,13185],\"mapped\",[110,97]],[[13186,13186],\"mapped\",[956,97]],[[13187,13187],\"mapped\",[109,97]],[[13188,13188],\"mapped\",[107,97]],[[13189,13189],\"mapped\",[107,98]],[[13190,13190],\"mapped\",[109,98]],[[13191,13191],\"mapped\",[103,98]],[[13192,13192],\"mapped\",[99,97,108]],[[13193,13193],\"mapped\",[107,99,97,108]],[[13194,13194],\"mapped\",[112,102]],[[13195,13195],\"mapped\",[110,102]],[[13196,13196],\"mapped\",[956,102]],[[13197,13197],\"mapped\",[956,103]],[[13198,13198],\"mapped\",[109,103]],[[13199,13199],\"mapped\",[107,103]],[[13200,13200],\"mapped\",[104,122]],[[13201,13201],\"mapped\",[107,104,122]],[[13202,13202],\"mapped\",[109,104,122]],[[13203,13203],\"mapped\",[103,104,122]],[[13204,13204],\"mapped\",[116,104,122]],[[13205,13205],\"mapped\",[956,108]],[[13206,13206],\"mapped\",[109,108]],[[13207,13207],\"mapped\",[100,108]],[[13208,13208],\"mapped\",[107,108]],[[13209,13209],\"mapped\",[102,109]],[[13210,13210],\"mapped\",[110,109]],[[13211,13211],\"mapped\",[956,109]],[[13212,13212],\"mapped\",[109,109]],[[13213,13213],\"mapped\",[99,109]],[[13214,13214],\"mapped\",[107,109]],[[13215,13215],\"mapped\",[109,109,50]],[[13216,13216],\"mapped\",[99,109,50]],[[13217,13217],\"mapped\",[109,50]],[[13218,13218],\"mapped\",[107,109,50]],[[13219,13219],\"mapped\",[109,109,51]],[[13220,13220],\"mapped\",[99,109,51]],[[13221,13221],\"mapped\",[109,51]],[[13222,13222],\"mapped\",[107,109,51]],[[13223,13223],\"mapped\",[109,8725,115]],[[13224,13224],\"mapped\",[109,8725,115,50]],[[13225,13225],\"mapped\",[112,97]],[[13226,13226],\"mapped\",[107,112,97]],[[13227,13227],\"mapped\",[109,112,97]],[[13228,13228],\"mapped\",[103,112,97]],[[13229,13229],\"mapped\",[114,97,100]],[[13230,13230],\"mapped\",[114,97,100,8725,115]],[[13231,13231],\"mapped\",[114,97,100,8725,115,50]],[[13232,13232],\"mapped\",[112,115]],[[13233,13233],\"mapped\",[110,115]],[[13234,13234],\"mapped\",[956,115]],[[13235,13235],\"mapped\",[109,115]],[[13236,13236],\"mapped\",[112,118]],[[13237,13237],\"mapped\",[110,118]],[[13238,13238],\"mapped\",[956,118]],[[13239,13239],\"mapped\",[109,118]],[[13240,13240],\"mapped\",[107,118]],[[13241,13241],\"mapped\",[109,118]],[[13242,13242],\"mapped\",[112,119]],[[13243,13243],\"mapped\",[110,119]],[[13244,13244],\"mapped\",[956,119]],[[13245,13245],\"mapped\",[109,119]],[[13246,13246],\"mapped\",[107,119]],[[13247,13247],\"mapped\",[109,119]],[[13248,13248],\"mapped\",[107,969]],[[13249,13249],\"mapped\",[109,969]],[[13250,13250],\"disallowed\"],[[13251,13251],\"mapped\",[98,113]],[[13252,13252],\"mapped\",[99,99]],[[13253,13253],\"mapped\",[99,100]],[[13254,13254],\"mapped\",[99,8725,107,103]],[[13255,13255],\"disallowed\"],[[13256,13256],\"mapped\",[100,98]],[[13257,13257],\"mapped\",[103,121]],[[13258,13258],\"mapped\",[104,97]],[[13259,13259],\"mapped\",[104,112]],[[13260,13260],\"mapped\",[105,110]],[[13261,13261],\"mapped\",[107,107]],[[13262,13262],\"mapped\",[107,109]],[[13263,13263],\"mapped\",[107,116]],[[13264,13264],\"mapped\",[108,109]],[[13265,13265],\"mapped\",[108,110]],[[13266,13266],\"mapped\",[108,111,103]],[[13267,13267],\"mapped\",[108,120]],[[13268,13268],\"mapped\",[109,98]],[[13269,13269],\"mapped\",[109,105,108]],[[13270,13270],\"mapped\",[109,111,108]],[[13271,13271],\"mapped\",[112,104]],[[13272,13272],\"disallowed\"],[[13273,13273],\"mapped\",[112,112,109]],[[13274,13274],\"mapped\",[112,114]],[[13275,13275],\"mapped\",[115,114]],[[13276,13276],\"mapped\",[115,118]],[[13277,13277],\"mapped\",[119,98]],[[13278,13278],\"mapped\",[118,8725,109]],[[13279,13279],\"mapped\",[97,8725,109]],[[13280,13280],\"mapped\",[49,26085]],[[13281,13281],\"mapped\",[50,26085]],[[13282,13282],\"mapped\",[51,26085]],[[13283,13283],\"mapped\",[52,26085]],[[13284,13284],\"mapped\",[53,26085]],[[13285,13285],\"mapped\",[54,26085]],[[13286,13286],\"mapped\",[55,26085]],[[13287,13287],\"mapped\",[56,26085]],[[13288,13288],\"mapped\",[57,26085]],[[13289,13289],\"mapped\",[49,48,26085]],[[13290,13290],\"mapped\",[49,49,26085]],[[13291,13291],\"mapped\",[49,50,26085]],[[13292,13292],\"mapped\",[49,51,26085]],[[13293,13293],\"mapped\",[49,52,26085]],[[13294,13294],\"mapped\",[49,53,26085]],[[13295,13295],\"mapped\",[49,54,26085]],[[13296,13296],\"mapped\",[49,55,26085]],[[13297,13297],\"mapped\",[49,56,26085]],[[13298,13298],\"mapped\",[49,57,26085]],[[13299,13299],\"mapped\",[50,48,26085]],[[13300,13300],\"mapped\",[50,49,26085]],[[13301,13301],\"mapped\",[50,50,26085]],[[13302,13302],\"mapped\",[50,51,26085]],[[13303,13303],\"mapped\",[50,52,26085]],[[13304,13304],\"mapped\",[50,53,26085]],[[13305,13305],\"mapped\",[50,54,26085]],[[13306,13306],\"mapped\",[50,55,26085]],[[13307,13307],\"mapped\",[50,56,26085]],[[13308,13308],\"mapped\",[50,57,26085]],[[13309,13309],\"mapped\",[51,48,26085]],[[13310,13310],\"mapped\",[51,49,26085]],[[13311,13311],\"mapped\",[103,97,108]],[[13312,19893],\"valid\"],[[19894,19903],\"disallowed\"],[[19904,19967],\"valid\",[],\"NV8\"],[[19968,40869],\"valid\"],[[40870,40891],\"valid\"],[[40892,40899],\"valid\"],[[40900,40907],\"valid\"],[[40908,40908],\"valid\"],[[40909,40917],\"valid\"],[[40918,40959],\"disallowed\"],[[40960,42124],\"valid\"],[[42125,42127],\"disallowed\"],[[42128,42145],\"valid\",[],\"NV8\"],[[42146,42147],\"valid\",[],\"NV8\"],[[42148,42163],\"valid\",[],\"NV8\"],[[42164,42164],\"valid\",[],\"NV8\"],[[42165,42176],\"valid\",[],\"NV8\"],[[42177,42177],\"valid\",[],\"NV8\"],[[42178,42180],\"valid\",[],\"NV8\"],[[42181,42181],\"valid\",[],\"NV8\"],[[42182,42182],\"valid\",[],\"NV8\"],[[42183,42191],\"disallowed\"],[[42192,42237],\"valid\"],[[42238,42239],\"valid\",[],\"NV8\"],[[42240,42508],\"valid\"],[[42509,42511],\"valid\",[],\"NV8\"],[[42512,42539],\"valid\"],[[42540,42559],\"disallowed\"],[[42560,42560],\"mapped\",[42561]],[[42561,42561],\"valid\"],[[42562,42562],\"mapped\",[42563]],[[42563,42563],\"valid\"],[[42564,42564],\"mapped\",[42565]],[[42565,42565],\"valid\"],[[42566,42566],\"mapped\",[42567]],[[42567,42567],\"valid\"],[[42568,42568],\"mapped\",[42569]],[[42569,42569],\"valid\"],[[42570,42570],\"mapped\",[42571]],[[42571,42571],\"valid\"],[[42572,42572],\"mapped\",[42573]],[[42573,42573],\"valid\"],[[42574,42574],\"mapped\",[42575]],[[42575,42575],\"valid\"],[[42576,42576],\"mapped\",[42577]],[[42577,42577],\"valid\"],[[42578,42578],\"mapped\",[42579]],[[42579,42579],\"valid\"],[[42580,42580],\"mapped\",[42581]],[[42581,42581],\"valid\"],[[42582,42582],\"mapped\",[42583]],[[42583,42583],\"valid\"],[[42584,42584],\"mapped\",[42585]],[[42585,42585],\"valid\"],[[42586,42586],\"mapped\",[42587]],[[42587,42587],\"valid\"],[[42588,42588],\"mapped\",[42589]],[[42589,42589],\"valid\"],[[42590,42590],\"mapped\",[42591]],[[42591,42591],\"valid\"],[[42592,42592],\"mapped\",[42593]],[[42593,42593],\"valid\"],[[42594,42594],\"mapped\",[42595]],[[42595,42595],\"valid\"],[[42596,42596],\"mapped\",[42597]],[[42597,42597],\"valid\"],[[42598,42598],\"mapped\",[42599]],[[42599,42599],\"valid\"],[[42600,42600],\"mapped\",[42601]],[[42601,42601],\"valid\"],[[42602,42602],\"mapped\",[42603]],[[42603,42603],\"valid\"],[[42604,42604],\"mapped\",[42605]],[[42605,42607],\"valid\"],[[42608,42611],\"valid\",[],\"NV8\"],[[42612,42619],\"valid\"],[[42620,42621],\"valid\"],[[42622,42622],\"valid\",[],\"NV8\"],[[42623,42623],\"valid\"],[[42624,42624],\"mapped\",[42625]],[[42625,42625],\"valid\"],[[42626,42626],\"mapped\",[42627]],[[42627,42627],\"valid\"],[[42628,42628],\"mapped\",[42629]],[[42629,42629],\"valid\"],[[42630,42630],\"mapped\",[42631]],[[42631,42631],\"valid\"],[[42632,42632],\"mapped\",[42633]],[[42633,42633],\"valid\"],[[42634,42634],\"mapped\",[42635]],[[42635,42635],\"valid\"],[[42636,42636],\"mapped\",[42637]],[[42637,42637],\"valid\"],[[42638,42638],\"mapped\",[42639]],[[42639,42639],\"valid\"],[[42640,42640],\"mapped\",[42641]],[[42641,42641],\"valid\"],[[42642,42642],\"mapped\",[42643]],[[42643,42643],\"valid\"],[[42644,42644],\"mapped\",[42645]],[[42645,42645],\"valid\"],[[42646,42646],\"mapped\",[42647]],[[42647,42647],\"valid\"],[[42648,42648],\"mapped\",[42649]],[[42649,42649],\"valid\"],[[42650,42650],\"mapped\",[42651]],[[42651,42651],\"valid\"],[[42652,42652],\"mapped\",[1098]],[[42653,42653],\"mapped\",[1100]],[[42654,42654],\"valid\"],[[42655,42655],\"valid\"],[[42656,42725],\"valid\"],[[42726,42735],\"valid\",[],\"NV8\"],[[42736,42737],\"valid\"],[[42738,42743],\"valid\",[],\"NV8\"],[[42744,42751],\"disallowed\"],[[42752,42774],\"valid\",[],\"NV8\"],[[42775,42778],\"valid\"],[[42779,42783],\"valid\"],[[42784,42785],\"valid\",[],\"NV8\"],[[42786,42786],\"mapped\",[42787]],[[42787,42787],\"valid\"],[[42788,42788],\"mapped\",[42789]],[[42789,42789],\"valid\"],[[42790,42790],\"mapped\",[42791]],[[42791,42791],\"valid\"],[[42792,42792],\"mapped\",[42793]],[[42793,42793],\"valid\"],[[42794,42794],\"mapped\",[42795]],[[42795,42795],\"valid\"],[[42796,42796],\"mapped\",[42797]],[[42797,42797],\"valid\"],[[42798,42798],\"mapped\",[42799]],[[42799,42801],\"valid\"],[[42802,42802],\"mapped\",[42803]],[[42803,42803],\"valid\"],[[42804,42804],\"mapped\",[42805]],[[42805,42805],\"valid\"],[[42806,42806],\"mapped\",[42807]],[[42807,42807],\"valid\"],[[42808,42808],\"mapped\",[42809]],[[42809,42809],\"valid\"],[[42810,42810],\"mapped\",[42811]],[[42811,42811],\"valid\"],[[42812,42812],\"mapped\",[42813]],[[42813,42813],\"valid\"],[[42814,42814],\"mapped\",[42815]],[[42815,42815],\"valid\"],[[42816,42816],\"mapped\",[42817]],[[42817,42817],\"valid\"],[[42818,42818],\"mapped\",[42819]],[[42819,42819],\"valid\"],[[42820,42820],\"mapped\",[42821]],[[42821,42821],\"valid\"],[[42822,42822],\"mapped\",[42823]],[[42823,42823],\"valid\"],[[42824,42824],\"mapped\",[42825]],[[42825,42825],\"valid\"],[[42826,42826],\"mapped\",[42827]],[[42827,42827],\"valid\"],[[42828,42828],\"mapped\",[42829]],[[42829,42829],\"valid\"],[[42830,42830],\"mapped\",[42831]],[[42831,42831],\"valid\"],[[42832,42832],\"mapped\",[42833]],[[42833,42833],\"valid\"],[[42834,42834],\"mapped\",[42835]],[[42835,42835],\"valid\"],[[42836,42836],\"mapped\",[42837]],[[42837,42837],\"valid\"],[[42838,42838],\"mapped\",[42839]],[[42839,42839],\"valid\"],[[42840,42840],\"mapped\",[42841]],[[42841,42841],\"valid\"],[[42842,42842],\"mapped\",[42843]],[[42843,42843],\"valid\"],[[42844,42844],\"mapped\",[42845]],[[42845,42845],\"valid\"],[[42846,42846],\"mapped\",[42847]],[[42847,42847],\"valid\"],[[42848,42848],\"mapped\",[42849]],[[42849,42849],\"valid\"],[[42850,42850],\"mapped\",[42851]],[[42851,42851],\"valid\"],[[42852,42852],\"mapped\",[42853]],[[42853,42853],\"valid\"],[[42854,42854],\"mapped\",[42855]],[[42855,42855],\"valid\"],[[42856,42856],\"mapped\",[42857]],[[42857,42857],\"valid\"],[[42858,42858],\"mapped\",[42859]],[[42859,42859],\"valid\"],[[42860,42860],\"mapped\",[42861]],[[42861,42861],\"valid\"],[[42862,42862],\"mapped\",[42863]],[[42863,42863],\"valid\"],[[42864,42864],\"mapped\",[42863]],[[42865,42872],\"valid\"],[[42873,42873],\"mapped\",[42874]],[[42874,42874],\"valid\"],[[42875,42875],\"mapped\",[42876]],[[42876,42876],\"valid\"],[[42877,42877],\"mapped\",[7545]],[[42878,42878],\"mapped\",[42879]],[[42879,42879],\"valid\"],[[42880,42880],\"mapped\",[42881]],[[42881,42881],\"valid\"],[[42882,42882],\"mapped\",[42883]],[[42883,42883],\"valid\"],[[42884,42884],\"mapped\",[42885]],[[42885,42885],\"valid\"],[[42886,42886],\"mapped\",[42887]],[[42887,42888],\"valid\"],[[42889,42890],\"valid\",[],\"NV8\"],[[42891,42891],\"mapped\",[42892]],[[42892,42892],\"valid\"],[[42893,42893],\"mapped\",[613]],[[42894,42894],\"valid\"],[[42895,42895],\"valid\"],[[42896,42896],\"mapped\",[42897]],[[42897,42897],\"valid\"],[[42898,42898],\"mapped\",[42899]],[[42899,42899],\"valid\"],[[42900,42901],\"valid\"],[[42902,42902],\"mapped\",[42903]],[[42903,42903],\"valid\"],[[42904,42904],\"mapped\",[42905]],[[42905,42905],\"valid\"],[[42906,42906],\"mapped\",[42907]],[[42907,42907],\"valid\"],[[42908,42908],\"mapped\",[42909]],[[42909,42909],\"valid\"],[[42910,42910],\"mapped\",[42911]],[[42911,42911],\"valid\"],[[42912,42912],\"mapped\",[42913]],[[42913,42913],\"valid\"],[[42914,42914],\"mapped\",[42915]],[[42915,42915],\"valid\"],[[42916,42916],\"mapped\",[42917]],[[42917,42917],\"valid\"],[[42918,42918],\"mapped\",[42919]],[[42919,42919],\"valid\"],[[42920,42920],\"mapped\",[42921]],[[42921,42921],\"valid\"],[[42922,42922],\"mapped\",[614]],[[42923,42923],\"mapped\",[604]],[[42924,42924],\"mapped\",[609]],[[42925,42925],\"mapped\",[620]],[[42926,42927],\"disallowed\"],[[42928,42928],\"mapped\",[670]],[[42929,42929],\"mapped\",[647]],[[42930,42930],\"mapped\",[669]],[[42931,42931],\"mapped\",[43859]],[[42932,42932],\"mapped\",[42933]],[[42933,42933],\"valid\"],[[42934,42934],\"mapped\",[42935]],[[42935,42935],\"valid\"],[[42936,42998],\"disallowed\"],[[42999,42999],\"valid\"],[[43000,43000],\"mapped\",[295]],[[43001,43001],\"mapped\",[339]],[[43002,43002],\"valid\"],[[43003,43007],\"valid\"],[[43008,43047],\"valid\"],[[43048,43051],\"valid\",[],\"NV8\"],[[43052,43055],\"disallowed\"],[[43056,43065],\"valid\",[],\"NV8\"],[[43066,43071],\"disallowed\"],[[43072,43123],\"valid\"],[[43124,43127],\"valid\",[],\"NV8\"],[[43128,43135],\"disallowed\"],[[43136,43204],\"valid\"],[[43205,43213],\"disallowed\"],[[43214,43215],\"valid\",[],\"NV8\"],[[43216,43225],\"valid\"],[[43226,43231],\"disallowed\"],[[43232,43255],\"valid\"],[[43256,43258],\"valid\",[],\"NV8\"],[[43259,43259],\"valid\"],[[43260,43260],\"valid\",[],\"NV8\"],[[43261,43261],\"valid\"],[[43262,43263],\"disallowed\"],[[43264,43309],\"valid\"],[[43310,43311],\"valid\",[],\"NV8\"],[[43312,43347],\"valid\"],[[43348,43358],\"disallowed\"],[[43359,43359],\"valid\",[],\"NV8\"],[[43360,43388],\"valid\",[],\"NV8\"],[[43389,43391],\"disallowed\"],[[43392,43456],\"valid\"],[[43457,43469],\"valid\",[],\"NV8\"],[[43470,43470],\"disallowed\"],[[43471,43481],\"valid\"],[[43482,43485],\"disallowed\"],[[43486,43487],\"valid\",[],\"NV8\"],[[43488,43518],\"valid\"],[[43519,43519],\"disallowed\"],[[43520,43574],\"valid\"],[[43575,43583],\"disallowed\"],[[43584,43597],\"valid\"],[[43598,43599],\"disallowed\"],[[43600,43609],\"valid\"],[[43610,43611],\"disallowed\"],[[43612,43615],\"valid\",[],\"NV8\"],[[43616,43638],\"valid\"],[[43639,43641],\"valid\",[],\"NV8\"],[[43642,43643],\"valid\"],[[43644,43647],\"valid\"],[[43648,43714],\"valid\"],[[43715,43738],\"disallowed\"],[[43739,43741],\"valid\"],[[43742,43743],\"valid\",[],\"NV8\"],[[43744,43759],\"valid\"],[[43760,43761],\"valid\",[],\"NV8\"],[[43762,43766],\"valid\"],[[43767,43776],\"disallowed\"],[[43777,43782],\"valid\"],[[43783,43784],\"disallowed\"],[[43785,43790],\"valid\"],[[43791,43792],\"disallowed\"],[[43793,43798],\"valid\"],[[43799,43807],\"disallowed\"],[[43808,43814],\"valid\"],[[43815,43815],\"disallowed\"],[[43816,43822],\"valid\"],[[43823,43823],\"disallowed\"],[[43824,43866],\"valid\"],[[43867,43867],\"valid\",[],\"NV8\"],[[43868,43868],\"mapped\",[42791]],[[43869,43869],\"mapped\",[43831]],[[43870,43870],\"mapped\",[619]],[[43871,43871],\"mapped\",[43858]],[[43872,43875],\"valid\"],[[43876,43877],\"valid\"],[[43878,43887],\"disallowed\"],[[43888,43888],\"mapped\",[5024]],[[43889,43889],\"mapped\",[5025]],[[43890,43890],\"mapped\",[5026]],[[43891,43891],\"mapped\",[5027]],[[43892,43892],\"mapped\",[5028]],[[43893,43893],\"mapped\",[5029]],[[43894,43894],\"mapped\",[5030]],[[43895,43895],\"mapped\",[5031]],[[43896,43896],\"mapped\",[5032]],[[43897,43897],\"mapped\",[5033]],[[43898,43898],\"mapped\",[5034]],[[43899,43899],\"mapped\",[5035]],[[43900,43900],\"mapped\",[5036]],[[43901,43901],\"mapped\",[5037]],[[43902,43902],\"mapped\",[5038]],[[43903,43903],\"mapped\",[5039]],[[43904,43904],\"mapped\",[5040]],[[43905,43905],\"mapped\",[5041]],[[43906,43906],\"mapped\",[5042]],[[43907,43907],\"mapped\",[5043]],[[43908,43908],\"mapped\",[5044]],[[43909,43909],\"mapped\",[5045]],[[43910,43910],\"mapped\",[5046]],[[43911,43911],\"mapped\",[5047]],[[43912,43912],\"mapped\",[5048]],[[43913,43913],\"mapped\",[5049]],[[43914,43914],\"mapped\",[5050]],[[43915,43915],\"mapped\",[5051]],[[43916,43916],\"mapped\",[5052]],[[43917,43917],\"mapped\",[5053]],[[43918,43918],\"mapped\",[5054]],[[43919,43919],\"mapped\",[5055]],[[43920,43920],\"mapped\",[5056]],[[43921,43921],\"mapped\",[5057]],[[43922,43922],\"mapped\",[5058]],[[43923,43923],\"mapped\",[5059]],[[43924,43924],\"mapped\",[5060]],[[43925,43925],\"mapped\",[5061]],[[43926,43926],\"mapped\",[5062]],[[43927,43927],\"mapped\",[5063]],[[43928,43928],\"mapped\",[5064]],[[43929,43929],\"mapped\",[5065]],[[43930,43930],\"mapped\",[5066]],[[43931,43931],\"mapped\",[5067]],[[43932,43932],\"mapped\",[5068]],[[43933,43933],\"mapped\",[5069]],[[43934,43934],\"mapped\",[5070]],[[43935,43935],\"mapped\",[5071]],[[43936,43936],\"mapped\",[5072]],[[43937,43937],\"mapped\",[5073]],[[43938,43938],\"mapped\",[5074]],[[43939,43939],\"mapped\",[5075]],[[43940,43940],\"mapped\",[5076]],[[43941,43941],\"mapped\",[5077]],[[43942,43942],\"mapped\",[5078]],[[43943,43943],\"mapped\",[5079]],[[43944,43944],\"mapped\",[5080]],[[43945,43945],\"mapped\",[5081]],[[43946,43946],\"mapped\",[5082]],[[43947,43947],\"mapped\",[5083]],[[43948,43948],\"mapped\",[5084]],[[43949,43949],\"mapped\",[5085]],[[43950,43950],\"mapped\",[5086]],[[43951,43951],\"mapped\",[5087]],[[43952,43952],\"mapped\",[5088]],[[43953,43953],\"mapped\",[5089]],[[43954,43954],\"mapped\",[5090]],[[43955,43955],\"mapped\",[5091]],[[43956,43956],\"mapped\",[5092]],[[43957,43957],\"mapped\",[5093]],[[43958,43958],\"mapped\",[5094]],[[43959,43959],\"mapped\",[5095]],[[43960,43960],\"mapped\",[5096]],[[43961,43961],\"mapped\",[5097]],[[43962,43962],\"mapped\",[5098]],[[43963,43963],\"mapped\",[5099]],[[43964,43964],\"mapped\",[5100]],[[43965,43965],\"mapped\",[5101]],[[43966,43966],\"mapped\",[5102]],[[43967,43967],\"mapped\",[5103]],[[43968,44010],\"valid\"],[[44011,44011],\"valid\",[],\"NV8\"],[[44012,44013],\"valid\"],[[44014,44015],\"disallowed\"],[[44016,44025],\"valid\"],[[44026,44031],\"disallowed\"],[[44032,55203],\"valid\"],[[55204,55215],\"disallowed\"],[[55216,55238],\"valid\",[],\"NV8\"],[[55239,55242],\"disallowed\"],[[55243,55291],\"valid\",[],\"NV8\"],[[55292,55295],\"disallowed\"],[[55296,57343],\"disallowed\"],[[57344,63743],\"disallowed\"],[[63744,63744],\"mapped\",[35912]],[[63745,63745],\"mapped\",[26356]],[[63746,63746],\"mapped\",[36554]],[[63747,63747],\"mapped\",[36040]],[[63748,63748],\"mapped\",[28369]],[[63749,63749],\"mapped\",[20018]],[[63750,63750],\"mapped\",[21477]],[[63751,63752],\"mapped\",[40860]],[[63753,63753],\"mapped\",[22865]],[[63754,63754],\"mapped\",[37329]],[[63755,63755],\"mapped\",[21895]],[[63756,63756],\"mapped\",[22856]],[[63757,63757],\"mapped\",[25078]],[[63758,63758],\"mapped\",[30313]],[[63759,63759],\"mapped\",[32645]],[[63760,63760],\"mapped\",[34367]],[[63761,63761],\"mapped\",[34746]],[[63762,63762],\"mapped\",[35064]],[[63763,63763],\"mapped\",[37007]],[[63764,63764],\"mapped\",[27138]],[[63765,63765],\"mapped\",[27931]],[[63766,63766],\"mapped\",[28889]],[[63767,63767],\"mapped\",[29662]],[[63768,63768],\"mapped\",[33853]],[[63769,63769],\"mapped\",[37226]],[[63770,63770],\"mapped\",[39409]],[[63771,63771],\"mapped\",[20098]],[[63772,63772],\"mapped\",[21365]],[[63773,63773],\"mapped\",[27396]],[[63774,63774],\"mapped\",[29211]],[[63775,63775],\"mapped\",[34349]],[[63776,63776],\"mapped\",[40478]],[[63777,63777],\"mapped\",[23888]],[[63778,63778],\"mapped\",[28651]],[[63779,63779],\"mapped\",[34253]],[[63780,63780],\"mapped\",[35172]],[[63781,63781],\"mapped\",[25289]],[[63782,63782],\"mapped\",[33240]],[[63783,63783],\"mapped\",[34847]],[[63784,63784],\"mapped\",[24266]],[[63785,63785],\"mapped\",[26391]],[[63786,63786],\"mapped\",[28010]],[[63787,63787],\"mapped\",[29436]],[[63788,63788],\"mapped\",[37070]],[[63789,63789],\"mapped\",[20358]],[[63790,63790],\"mapped\",[20919]],[[63791,63791],\"mapped\",[21214]],[[63792,63792],\"mapped\",[25796]],[[63793,63793],\"mapped\",[27347]],[[63794,63794],\"mapped\",[29200]],[[63795,63795],\"mapped\",[30439]],[[63796,63796],\"mapped\",[32769]],[[63797,63797],\"mapped\",[34310]],[[63798,63798],\"mapped\",[34396]],[[63799,63799],\"mapped\",[36335]],[[63800,63800],\"mapped\",[38706]],[[63801,63801],\"mapped\",[39791]],[[63802,63802],\"mapped\",[40442]],[[63803,63803],\"mapped\",[30860]],[[63804,63804],\"mapped\",[31103]],[[63805,63805],\"mapped\",[32160]],[[63806,63806],\"mapped\",[33737]],[[63807,63807],\"mapped\",[37636]],[[63808,63808],\"mapped\",[40575]],[[63809,63809],\"mapped\",[35542]],[[63810,63810],\"mapped\",[22751]],[[63811,63811],\"mapped\",[24324]],[[63812,63812],\"mapped\",[31840]],[[63813,63813],\"mapped\",[32894]],[[63814,63814],\"mapped\",[29282]],[[63815,63815],\"mapped\",[30922]],[[63816,63816],\"mapped\",[36034]],[[63817,63817],\"mapped\",[38647]],[[63818,63818],\"mapped\",[22744]],[[63819,63819],\"mapped\",[23650]],[[63820,63820],\"mapped\",[27155]],[[63821,63821],\"mapped\",[28122]],[[63822,63822],\"mapped\",[28431]],[[63823,63823],\"mapped\",[32047]],[[63824,63824],\"mapped\",[32311]],[[63825,63825],\"mapped\",[38475]],[[63826,63826],\"mapped\",[21202]],[[63827,63827],\"mapped\",[32907]],[[63828,63828],\"mapped\",[20956]],[[63829,63829],\"mapped\",[20940]],[[63830,63830],\"mapped\",[31260]],[[63831,63831],\"mapped\",[32190]],[[63832,63832],\"mapped\",[33777]],[[63833,63833],\"mapped\",[38517]],[[63834,63834],\"mapped\",[35712]],[[63835,63835],\"mapped\",[25295]],[[63836,63836],\"mapped\",[27138]],[[63837,63837],\"mapped\",[35582]],[[63838,63838],\"mapped\",[20025]],[[63839,63839],\"mapped\",[23527]],[[63840,63840],\"mapped\",[24594]],[[63841,63841],\"mapped\",[29575]],[[63842,63842],\"mapped\",[30064]],[[63843,63843],\"mapped\",[21271]],[[63844,63844],\"mapped\",[30971]],[[63845,63845],\"mapped\",[20415]],[[63846,63846],\"mapped\",[24489]],[[63847,63847],\"mapped\",[19981]],[[63848,63848],\"mapped\",[27852]],[[63849,63849],\"mapped\",[25976]],[[63850,63850],\"mapped\",[32034]],[[63851,63851],\"mapped\",[21443]],[[63852,63852],\"mapped\",[22622]],[[63853,63853],\"mapped\",[30465]],[[63854,63854],\"mapped\",[33865]],[[63855,63855],\"mapped\",[35498]],[[63856,63856],\"mapped\",[27578]],[[63857,63857],\"mapped\",[36784]],[[63858,63858],\"mapped\",[27784]],[[63859,63859],\"mapped\",[25342]],[[63860,63860],\"mapped\",[33509]],[[63861,63861],\"mapped\",[25504]],[[63862,63862],\"mapped\",[30053]],[[63863,63863],\"mapped\",[20142]],[[63864,63864],\"mapped\",[20841]],[[63865,63865],\"mapped\",[20937]],[[63866,63866],\"mapped\",[26753]],[[63867,63867],\"mapped\",[31975]],[[63868,63868],\"mapped\",[33391]],[[63869,63869],\"mapped\",[35538]],[[63870,63870],\"mapped\",[37327]],[[63871,63871],\"mapped\",[21237]],[[63872,63872],\"mapped\",[21570]],[[63873,63873],\"mapped\",[22899]],[[63874,63874],\"mapped\",[24300]],[[63875,63875],\"mapped\",[26053]],[[63876,63876],\"mapped\",[28670]],[[63877,63877],\"mapped\",[31018]],[[63878,63878],\"mapped\",[38317]],[[63879,63879],\"mapped\",[39530]],[[63880,63880],\"mapped\",[40599]],[[63881,63881],\"mapped\",[40654]],[[63882,63882],\"mapped\",[21147]],[[63883,63883],\"mapped\",[26310]],[[63884,63884],\"mapped\",[27511]],[[63885,63885],\"mapped\",[36706]],[[63886,63886],\"mapped\",[24180]],[[63887,63887],\"mapped\",[24976]],[[63888,63888],\"mapped\",[25088]],[[63889,63889],\"mapped\",[25754]],[[63890,63890],\"mapped\",[28451]],[[63891,63891],\"mapped\",[29001]],[[63892,63892],\"mapped\",[29833]],[[63893,63893],\"mapped\",[31178]],[[63894,63894],\"mapped\",[32244]],[[63895,63895],\"mapped\",[32879]],[[63896,63896],\"mapped\",[36646]],[[63897,63897],\"mapped\",[34030]],[[63898,63898],\"mapped\",[36899]],[[63899,63899],\"mapped\",[37706]],[[63900,63900],\"mapped\",[21015]],[[63901,63901],\"mapped\",[21155]],[[63902,63902],\"mapped\",[21693]],[[63903,63903],\"mapped\",[28872]],[[63904,63904],\"mapped\",[35010]],[[63905,63905],\"mapped\",[35498]],[[63906,63906],\"mapped\",[24265]],[[63907,63907],\"mapped\",[24565]],[[63908,63908],\"mapped\",[25467]],[[63909,63909],\"mapped\",[27566]],[[63910,63910],\"mapped\",[31806]],[[63911,63911],\"mapped\",[29557]],[[63912,63912],\"mapped\",[20196]],[[63913,63913],\"mapped\",[22265]],[[63914,63914],\"mapped\",[23527]],[[63915,63915],\"mapped\",[23994]],[[63916,63916],\"mapped\",[24604]],[[63917,63917],\"mapped\",[29618]],[[63918,63918],\"mapped\",[29801]],[[63919,63919],\"mapped\",[32666]],[[63920,63920],\"mapped\",[32838]],[[63921,63921],\"mapped\",[37428]],[[63922,63922],\"mapped\",[38646]],[[63923,63923],\"mapped\",[38728]],[[63924,63924],\"mapped\",[38936]],[[63925,63925],\"mapped\",[20363]],[[63926,63926],\"mapped\",[31150]],[[63927,63927],\"mapped\",[37300]],[[63928,63928],\"mapped\",[38584]],[[63929,63929],\"mapped\",[24801]],[[63930,63930],\"mapped\",[20102]],[[63931,63931],\"mapped\",[20698]],[[63932,63932],\"mapped\",[23534]],[[63933,63933],\"mapped\",[23615]],[[63934,63934],\"mapped\",[26009]],[[63935,63935],\"mapped\",[27138]],[[63936,63936],\"mapped\",[29134]],[[63937,63937],\"mapped\",[30274]],[[63938,63938],\"mapped\",[34044]],[[63939,63939],\"mapped\",[36988]],[[63940,63940],\"mapped\",[40845]],[[63941,63941],\"mapped\",[26248]],[[63942,63942],\"mapped\",[38446]],[[63943,63943],\"mapped\",[21129]],[[63944,63944],\"mapped\",[26491]],[[63945,63945],\"mapped\",[26611]],[[63946,63946],\"mapped\",[27969]],[[63947,63947],\"mapped\",[28316]],[[63948,63948],\"mapped\",[29705]],[[63949,63949],\"mapped\",[30041]],[[63950,63950],\"mapped\",[30827]],[[63951,63951],\"mapped\",[32016]],[[63952,63952],\"mapped\",[39006]],[[63953,63953],\"mapped\",[20845]],[[63954,63954],\"mapped\",[25134]],[[63955,63955],\"mapped\",[38520]],[[63956,63956],\"mapped\",[20523]],[[63957,63957],\"mapped\",[23833]],[[63958,63958],\"mapped\",[28138]],[[63959,63959],\"mapped\",[36650]],[[63960,63960],\"mapped\",[24459]],[[63961,63961],\"mapped\",[24900]],[[63962,63962],\"mapped\",[26647]],[[63963,63963],\"mapped\",[29575]],[[63964,63964],\"mapped\",[38534]],[[63965,63965],\"mapped\",[21033]],[[63966,63966],\"mapped\",[21519]],[[63967,63967],\"mapped\",[23653]],[[63968,63968],\"mapped\",[26131]],[[63969,63969],\"mapped\",[26446]],[[63970,63970],\"mapped\",[26792]],[[63971,63971],\"mapped\",[27877]],[[63972,63972],\"mapped\",[29702]],[[63973,63973],\"mapped\",[30178]],[[63974,63974],\"mapped\",[32633]],[[63975,63975],\"mapped\",[35023]],[[63976,63976],\"mapped\",[35041]],[[63977,63977],\"mapped\",[37324]],[[63978,63978],\"mapped\",[38626]],[[63979,63979],\"mapped\",[21311]],[[63980,63980],\"mapped\",[28346]],[[63981,63981],\"mapped\",[21533]],[[63982,63982],\"mapped\",[29136]],[[63983,63983],\"mapped\",[29848]],[[63984,63984],\"mapped\",[34298]],[[63985,63985],\"mapped\",[38563]],[[63986,63986],\"mapped\",[40023]],[[63987,63987],\"mapped\",[40607]],[[63988,63988],\"mapped\",[26519]],[[63989,63989],\"mapped\",[28107]],[[63990,63990],\"mapped\",[33256]],[[63991,63991],\"mapped\",[31435]],[[63992,63992],\"mapped\",[31520]],[[63993,63993],\"mapped\",[31890]],[[63994,63994],\"mapped\",[29376]],[[63995,63995],\"mapped\",[28825]],[[63996,63996],\"mapped\",[35672]],[[63997,63997],\"mapped\",[20160]],[[63998,63998],\"mapped\",[33590]],[[63999,63999],\"mapped\",[21050]],[[64000,64000],\"mapped\",[20999]],[[64001,64001],\"mapped\",[24230]],[[64002,64002],\"mapped\",[25299]],[[64003,64003],\"mapped\",[31958]],[[64004,64004],\"mapped\",[23429]],[[64005,64005],\"mapped\",[27934]],[[64006,64006],\"mapped\",[26292]],[[64007,64007],\"mapped\",[36667]],[[64008,64008],\"mapped\",[34892]],[[64009,64009],\"mapped\",[38477]],[[64010,64010],\"mapped\",[35211]],[[64011,64011],\"mapped\",[24275]],[[64012,64012],\"mapped\",[20800]],[[64013,64013],\"mapped\",[21952]],[[64014,64015],\"valid\"],[[64016,64016],\"mapped\",[22618]],[[64017,64017],\"valid\"],[[64018,64018],\"mapped\",[26228]],[[64019,64020],\"valid\"],[[64021,64021],\"mapped\",[20958]],[[64022,64022],\"mapped\",[29482]],[[64023,64023],\"mapped\",[30410]],[[64024,64024],\"mapped\",[31036]],[[64025,64025],\"mapped\",[31070]],[[64026,64026],\"mapped\",[31077]],[[64027,64027],\"mapped\",[31119]],[[64028,64028],\"mapped\",[38742]],[[64029,64029],\"mapped\",[31934]],[[64030,64030],\"mapped\",[32701]],[[64031,64031],\"valid\"],[[64032,64032],\"mapped\",[34322]],[[64033,64033],\"valid\"],[[64034,64034],\"mapped\",[35576]],[[64035,64036],\"valid\"],[[64037,64037],\"mapped\",[36920]],[[64038,64038],\"mapped\",[37117]],[[64039,64041],\"valid\"],[[64042,64042],\"mapped\",[39151]],[[64043,64043],\"mapped\",[39164]],[[64044,64044],\"mapped\",[39208]],[[64045,64045],\"mapped\",[40372]],[[64046,64046],\"mapped\",[37086]],[[64047,64047],\"mapped\",[38583]],[[64048,64048],\"mapped\",[20398]],[[64049,64049],\"mapped\",[20711]],[[64050,64050],\"mapped\",[20813]],[[64051,64051],\"mapped\",[21193]],[[64052,64052],\"mapped\",[21220]],[[64053,64053],\"mapped\",[21329]],[[64054,64054],\"mapped\",[21917]],[[64055,64055],\"mapped\",[22022]],[[64056,64056],\"mapped\",[22120]],[[64057,64057],\"mapped\",[22592]],[[64058,64058],\"mapped\",[22696]],[[64059,64059],\"mapped\",[23652]],[[64060,64060],\"mapped\",[23662]],[[64061,64061],\"mapped\",[24724]],[[64062,64062],\"mapped\",[24936]],[[64063,64063],\"mapped\",[24974]],[[64064,64064],\"mapped\",[25074]],[[64065,64065],\"mapped\",[25935]],[[64066,64066],\"mapped\",[26082]],[[64067,64067],\"mapped\",[26257]],[[64068,64068],\"mapped\",[26757]],[[64069,64069],\"mapped\",[28023]],[[64070,64070],\"mapped\",[28186]],[[64071,64071],\"mapped\",[28450]],[[64072,64072],\"mapped\",[29038]],[[64073,64073],\"mapped\",[29227]],[[64074,64074],\"mapped\",[29730]],[[64075,64075],\"mapped\",[30865]],[[64076,64076],\"mapped\",[31038]],[[64077,64077],\"mapped\",[31049]],[[64078,64078],\"mapped\",[31048]],[[64079,64079],\"mapped\",[31056]],[[64080,64080],\"mapped\",[31062]],[[64081,64081],\"mapped\",[31069]],[[64082,64082],\"mapped\",[31117]],[[64083,64083],\"mapped\",[31118]],[[64084,64084],\"mapped\",[31296]],[[64085,64085],\"mapped\",[31361]],[[64086,64086],\"mapped\",[31680]],[[64087,64087],\"mapped\",[32244]],[[64088,64088],\"mapped\",[32265]],[[64089,64089],\"mapped\",[32321]],[[64090,64090],\"mapped\",[32626]],[[64091,64091],\"mapped\",[32773]],[[64092,64092],\"mapped\",[33261]],[[64093,64094],\"mapped\",[33401]],[[64095,64095],\"mapped\",[33879]],[[64096,64096],\"mapped\",[35088]],[[64097,64097],\"mapped\",[35222]],[[64098,64098],\"mapped\",[35585]],[[64099,64099],\"mapped\",[35641]],[[64100,64100],\"mapped\",[36051]],[[64101,64101],\"mapped\",[36104]],[[64102,64102],\"mapped\",[36790]],[[64103,64103],\"mapped\",[36920]],[[64104,64104],\"mapped\",[38627]],[[64105,64105],\"mapped\",[38911]],[[64106,64106],\"mapped\",[38971]],[[64107,64107],\"mapped\",[24693]],[[64108,64108],\"mapped\",[148206]],[[64109,64109],\"mapped\",[33304]],[[64110,64111],\"disallowed\"],[[64112,64112],\"mapped\",[20006]],[[64113,64113],\"mapped\",[20917]],[[64114,64114],\"mapped\",[20840]],[[64115,64115],\"mapped\",[20352]],[[64116,64116],\"mapped\",[20805]],[[64117,64117],\"mapped\",[20864]],[[64118,64118],\"mapped\",[21191]],[[64119,64119],\"mapped\",[21242]],[[64120,64120],\"mapped\",[21917]],[[64121,64121],\"mapped\",[21845]],[[64122,64122],\"mapped\",[21913]],[[64123,64123],\"mapped\",[21986]],[[64124,64124],\"mapped\",[22618]],[[64125,64125],\"mapped\",[22707]],[[64126,64126],\"mapped\",[22852]],[[64127,64127],\"mapped\",[22868]],[[64128,64128],\"mapped\",[23138]],[[64129,64129],\"mapped\",[23336]],[[64130,64130],\"mapped\",[24274]],[[64131,64131],\"mapped\",[24281]],[[64132,64132],\"mapped\",[24425]],[[64133,64133],\"mapped\",[24493]],[[64134,64134],\"mapped\",[24792]],[[64135,64135],\"mapped\",[24910]],[[64136,64136],\"mapped\",[24840]],[[64137,64137],\"mapped\",[24974]],[[64138,64138],\"mapped\",[24928]],[[64139,64139],\"mapped\",[25074]],[[64140,64140],\"mapped\",[25140]],[[64141,64141],\"mapped\",[25540]],[[64142,64142],\"mapped\",[25628]],[[64143,64143],\"mapped\",[25682]],[[64144,64144],\"mapped\",[25942]],[[64145,64145],\"mapped\",[26228]],[[64146,64146],\"mapped\",[26391]],[[64147,64147],\"mapped\",[26395]],[[64148,64148],\"mapped\",[26454]],[[64149,64149],\"mapped\",[27513]],[[64150,64150],\"mapped\",[27578]],[[64151,64151],\"mapped\",[27969]],[[64152,64152],\"mapped\",[28379]],[[64153,64153],\"mapped\",[28363]],[[64154,64154],\"mapped\",[28450]],[[64155,64155],\"mapped\",[28702]],[[64156,64156],\"mapped\",[29038]],[[64157,64157],\"mapped\",[30631]],[[64158,64158],\"mapped\",[29237]],[[64159,64159],\"mapped\",[29359]],[[64160,64160],\"mapped\",[29482]],[[64161,64161],\"mapped\",[29809]],[[64162,64162],\"mapped\",[29958]],[[64163,64163],\"mapped\",[30011]],[[64164,64164],\"mapped\",[30237]],[[64165,64165],\"mapped\",[30239]],[[64166,64166],\"mapped\",[30410]],[[64167,64167],\"mapped\",[30427]],[[64168,64168],\"mapped\",[30452]],[[64169,64169],\"mapped\",[30538]],[[64170,64170],\"mapped\",[30528]],[[64171,64171],\"mapped\",[30924]],[[64172,64172],\"mapped\",[31409]],[[64173,64173],\"mapped\",[31680]],[[64174,64174],\"mapped\",[31867]],[[64175,64175],\"mapped\",[32091]],[[64176,64176],\"mapped\",[32244]],[[64177,64177],\"mapped\",[32574]],[[64178,64178],\"mapped\",[32773]],[[64179,64179],\"mapped\",[33618]],[[64180,64180],\"mapped\",[33775]],[[64181,64181],\"mapped\",[34681]],[[64182,64182],\"mapped\",[35137]],[[64183,64183],\"mapped\",[35206]],[[64184,64184],\"mapped\",[35222]],[[64185,64185],\"mapped\",[35519]],[[64186,64186],\"mapped\",[35576]],[[64187,64187],\"mapped\",[35531]],[[64188,64188],\"mapped\",[35585]],[[64189,64189],\"mapped\",[35582]],[[64190,64190],\"mapped\",[35565]],[[64191,64191],\"mapped\",[35641]],[[64192,64192],\"mapped\",[35722]],[[64193,64193],\"mapped\",[36104]],[[64194,64194],\"mapped\",[36664]],[[64195,64195],\"mapped\",[36978]],[[64196,64196],\"mapped\",[37273]],[[64197,64197],\"mapped\",[37494]],[[64198,64198],\"mapped\",[38524]],[[64199,64199],\"mapped\",[38627]],[[64200,64200],\"mapped\",[38742]],[[64201,64201],\"mapped\",[38875]],[[64202,64202],\"mapped\",[38911]],[[64203,64203],\"mapped\",[38923]],[[64204,64204],\"mapped\",[38971]],[[64205,64205],\"mapped\",[39698]],[[64206,64206],\"mapped\",[40860]],[[64207,64207],\"mapped\",[141386]],[[64208,64208],\"mapped\",[141380]],[[64209,64209],\"mapped\",[144341]],[[64210,64210],\"mapped\",[15261]],[[64211,64211],\"mapped\",[16408]],[[64212,64212],\"mapped\",[16441]],[[64213,64213],\"mapped\",[152137]],[[64214,64214],\"mapped\",[154832]],[[64215,64215],\"mapped\",[163539]],[[64216,64216],\"mapped\",[40771]],[[64217,64217],\"mapped\",[40846]],[[64218,64255],\"disallowed\"],[[64256,64256],\"mapped\",[102,102]],[[64257,64257],\"mapped\",[102,105]],[[64258,64258],\"mapped\",[102,108]],[[64259,64259],\"mapped\",[102,102,105]],[[64260,64260],\"mapped\",[102,102,108]],[[64261,64262],\"mapped\",[115,116]],[[64263,64274],\"disallowed\"],[[64275,64275],\"mapped\",[1396,1398]],[[64276,64276],\"mapped\",[1396,1381]],[[64277,64277],\"mapped\",[1396,1387]],[[64278,64278],\"mapped\",[1406,1398]],[[64279,64279],\"mapped\",[1396,1389]],[[64280,64284],\"disallowed\"],[[64285,64285],\"mapped\",[1497,1460]],[[64286,64286],\"valid\"],[[64287,64287],\"mapped\",[1522,1463]],[[64288,64288],\"mapped\",[1506]],[[64289,64289],\"mapped\",[1488]],[[64290,64290],\"mapped\",[1491]],[[64291,64291],\"mapped\",[1492]],[[64292,64292],\"mapped\",[1499]],[[64293,64293],\"mapped\",[1500]],[[64294,64294],\"mapped\",[1501]],[[64295,64295],\"mapped\",[1512]],[[64296,64296],\"mapped\",[1514]],[[64297,64297],\"disallowed_STD3_mapped\",[43]],[[64298,64298],\"mapped\",[1513,1473]],[[64299,64299],\"mapped\",[1513,1474]],[[64300,64300],\"mapped\",[1513,1468,1473]],[[64301,64301],\"mapped\",[1513,1468,1474]],[[64302,64302],\"mapped\",[1488,1463]],[[64303,64303],\"mapped\",[1488,1464]],[[64304,64304],\"mapped\",[1488,1468]],[[64305,64305],\"mapped\",[1489,1468]],[[64306,64306],\"mapped\",[1490,1468]],[[64307,64307],\"mapped\",[1491,1468]],[[64308,64308],\"mapped\",[1492,1468]],[[64309,64309],\"mapped\",[1493,1468]],[[64310,64310],\"mapped\",[1494,1468]],[[64311,64311],\"disallowed\"],[[64312,64312],\"mapped\",[1496,1468]],[[64313,64313],\"mapped\",[1497,1468]],[[64314,64314],\"mapped\",[1498,1468]],[[64315,64315],\"mapped\",[1499,1468]],[[64316,64316],\"mapped\",[1500,1468]],[[64317,64317],\"disallowed\"],[[64318,64318],\"mapped\",[1502,1468]],[[64319,64319],\"disallowed\"],[[64320,64320],\"mapped\",[1504,1468]],[[64321,64321],\"mapped\",[1505,1468]],[[64322,64322],\"disallowed\"],[[64323,64323],\"mapped\",[1507,1468]],[[64324,64324],\"mapped\",[1508,1468]],[[64325,64325],\"disallowed\"],[[64326,64326],\"mapped\",[1510,1468]],[[64327,64327],\"mapped\",[1511,1468]],[[64328,64328],\"mapped\",[1512,1468]],[[64329,64329],\"mapped\",[1513,1468]],[[64330,64330],\"mapped\",[1514,1468]],[[64331,64331],\"mapped\",[1493,1465]],[[64332,64332],\"mapped\",[1489,1471]],[[64333,64333],\"mapped\",[1499,1471]],[[64334,64334],\"mapped\",[1508,1471]],[[64335,64335],\"mapped\",[1488,1500]],[[64336,64337],\"mapped\",[1649]],[[64338,64341],\"mapped\",[1659]],[[64342,64345],\"mapped\",[1662]],[[64346,64349],\"mapped\",[1664]],[[64350,64353],\"mapped\",[1658]],[[64354,64357],\"mapped\",[1663]],[[64358,64361],\"mapped\",[1657]],[[64362,64365],\"mapped\",[1700]],[[64366,64369],\"mapped\",[1702]],[[64370,64373],\"mapped\",[1668]],[[64374,64377],\"mapped\",[1667]],[[64378,64381],\"mapped\",[1670]],[[64382,64385],\"mapped\",[1671]],[[64386,64387],\"mapped\",[1677]],[[64388,64389],\"mapped\",[1676]],[[64390,64391],\"mapped\",[1678]],[[64392,64393],\"mapped\",[1672]],[[64394,64395],\"mapped\",[1688]],[[64396,64397],\"mapped\",[1681]],[[64398,64401],\"mapped\",[1705]],[[64402,64405],\"mapped\",[1711]],[[64406,64409],\"mapped\",[1715]],[[64410,64413],\"mapped\",[1713]],[[64414,64415],\"mapped\",[1722]],[[64416,64419],\"mapped\",[1723]],[[64420,64421],\"mapped\",[1728]],[[64422,64425],\"mapped\",[1729]],[[64426,64429],\"mapped\",[1726]],[[64430,64431],\"mapped\",[1746]],[[64432,64433],\"mapped\",[1747]],[[64434,64449],\"valid\",[],\"NV8\"],[[64450,64466],\"disallowed\"],[[64467,64470],\"mapped\",[1709]],[[64471,64472],\"mapped\",[1735]],[[64473,64474],\"mapped\",[1734]],[[64475,64476],\"mapped\",[1736]],[[64477,64477],\"mapped\",[1735,1652]],[[64478,64479],\"mapped\",[1739]],[[64480,64481],\"mapped\",[1733]],[[64482,64483],\"mapped\",[1737]],[[64484,64487],\"mapped\",[1744]],[[64488,64489],\"mapped\",[1609]],[[64490,64491],\"mapped\",[1574,1575]],[[64492,64493],\"mapped\",[1574,1749]],[[64494,64495],\"mapped\",[1574,1608]],[[64496,64497],\"mapped\",[1574,1735]],[[64498,64499],\"mapped\",[1574,1734]],[[64500,64501],\"mapped\",[1574,1736]],[[64502,64504],\"mapped\",[1574,1744]],[[64505,64507],\"mapped\",[1574,1609]],[[64508,64511],\"mapped\",[1740]],[[64512,64512],\"mapped\",[1574,1580]],[[64513,64513],\"mapped\",[1574,1581]],[[64514,64514],\"mapped\",[1574,1605]],[[64515,64515],\"mapped\",[1574,1609]],[[64516,64516],\"mapped\",[1574,1610]],[[64517,64517],\"mapped\",[1576,1580]],[[64518,64518],\"mapped\",[1576,1581]],[[64519,64519],\"mapped\",[1576,1582]],[[64520,64520],\"mapped\",[1576,1605]],[[64521,64521],\"mapped\",[1576,1609]],[[64522,64522],\"mapped\",[1576,1610]],[[64523,64523],\"mapped\",[1578,1580]],[[64524,64524],\"mapped\",[1578,1581]],[[64525,64525],\"mapped\",[1578,1582]],[[64526,64526],\"mapped\",[1578,1605]],[[64527,64527],\"mapped\",[1578,1609]],[[64528,64528],\"mapped\",[1578,1610]],[[64529,64529],\"mapped\",[1579,1580]],[[64530,64530],\"mapped\",[1579,1605]],[[64531,64531],\"mapped\",[1579,1609]],[[64532,64532],\"mapped\",[1579,1610]],[[64533,64533],\"mapped\",[1580,1581]],[[64534,64534],\"mapped\",[1580,1605]],[[64535,64535],\"mapped\",[1581,1580]],[[64536,64536],\"mapped\",[1581,1605]],[[64537,64537],\"mapped\",[1582,1580]],[[64538,64538],\"mapped\",[1582,1581]],[[64539,64539],\"mapped\",[1582,1605]],[[64540,64540],\"mapped\",[1587,1580]],[[64541,64541],\"mapped\",[1587,1581]],[[64542,64542],\"mapped\",[1587,1582]],[[64543,64543],\"mapped\",[1587,1605]],[[64544,64544],\"mapped\",[1589,1581]],[[64545,64545],\"mapped\",[1589,1605]],[[64546,64546],\"mapped\",[1590,1580]],[[64547,64547],\"mapped\",[1590,1581]],[[64548,64548],\"mapped\",[1590,1582]],[[64549,64549],\"mapped\",[1590,1605]],[[64550,64550],\"mapped\",[1591,1581]],[[64551,64551],\"mapped\",[1591,1605]],[[64552,64552],\"mapped\",[1592,1605]],[[64553,64553],\"mapped\",[1593,1580]],[[64554,64554],\"mapped\",[1593,1605]],[[64555,64555],\"mapped\",[1594,1580]],[[64556,64556],\"mapped\",[1594,1605]],[[64557,64557],\"mapped\",[1601,1580]],[[64558,64558],\"mapped\",[1601,1581]],[[64559,64559],\"mapped\",[1601,1582]],[[64560,64560],\"mapped\",[1601,1605]],[[64561,64561],\"mapped\",[1601,1609]],[[64562,64562],\"mapped\",[1601,1610]],[[64563,64563],\"mapped\",[1602,1581]],[[64564,64564],\"mapped\",[1602,1605]],[[64565,64565],\"mapped\",[1602,1609]],[[64566,64566],\"mapped\",[1602,1610]],[[64567,64567],\"mapped\",[1603,1575]],[[64568,64568],\"mapped\",[1603,1580]],[[64569,64569],\"mapped\",[1603,1581]],[[64570,64570],\"mapped\",[1603,1582]],[[64571,64571],\"mapped\",[1603,1604]],[[64572,64572],\"mapped\",[1603,1605]],[[64573,64573],\"mapped\",[1603,1609]],[[64574,64574],\"mapped\",[1603,1610]],[[64575,64575],\"mapped\",[1604,1580]],[[64576,64576],\"mapped\",[1604,1581]],[[64577,64577],\"mapped\",[1604,1582]],[[64578,64578],\"mapped\",[1604,1605]],[[64579,64579],\"mapped\",[1604,1609]],[[64580,64580],\"mapped\",[1604,1610]],[[64581,64581],\"mapped\",[1605,1580]],[[64582,64582],\"mapped\",[1605,1581]],[[64583,64583],\"mapped\",[1605,1582]],[[64584,64584],\"mapped\",[1605,1605]],[[64585,64585],\"mapped\",[1605,1609]],[[64586,64586],\"mapped\",[1605,1610]],[[64587,64587],\"mapped\",[1606,1580]],[[64588,64588],\"mapped\",[1606,1581]],[[64589,64589],\"mapped\",[1606,1582]],[[64590,64590],\"mapped\",[1606,1605]],[[64591,64591],\"mapped\",[1606,1609]],[[64592,64592],\"mapped\",[1606,1610]],[[64593,64593],\"mapped\",[1607,1580]],[[64594,64594],\"mapped\",[1607,1605]],[[64595,64595],\"mapped\",[1607,1609]],[[64596,64596],\"mapped\",[1607,1610]],[[64597,64597],\"mapped\",[1610,1580]],[[64598,64598],\"mapped\",[1610,1581]],[[64599,64599],\"mapped\",[1610,1582]],[[64600,64600],\"mapped\",[1610,1605]],[[64601,64601],\"mapped\",[1610,1609]],[[64602,64602],\"mapped\",[1610,1610]],[[64603,64603],\"mapped\",[1584,1648]],[[64604,64604],\"mapped\",[1585,1648]],[[64605,64605],\"mapped\",[1609,1648]],[[64606,64606],\"disallowed_STD3_mapped\",[32,1612,1617]],[[64607,64607],\"disallowed_STD3_mapped\",[32,1613,1617]],[[64608,64608],\"disallowed_STD3_mapped\",[32,1614,1617]],[[64609,64609],\"disallowed_STD3_mapped\",[32,1615,1617]],[[64610,64610],\"disallowed_STD3_mapped\",[32,1616,1617]],[[64611,64611],\"disallowed_STD3_mapped\",[32,1617,1648]],[[64612,64612],\"mapped\",[1574,1585]],[[64613,64613],\"mapped\",[1574,1586]],[[64614,64614],\"mapped\",[1574,1605]],[[64615,64615],\"mapped\",[1574,1606]],[[64616,64616],\"mapped\",[1574,1609]],[[64617,64617],\"mapped\",[1574,1610]],[[64618,64618],\"mapped\",[1576,1585]],[[64619,64619],\"mapped\",[1576,1586]],[[64620,64620],\"mapped\",[1576,1605]],[[64621,64621],\"mapped\",[1576,1606]],[[64622,64622],\"mapped\",[1576,1609]],[[64623,64623],\"mapped\",[1576,1610]],[[64624,64624],\"mapped\",[1578,1585]],[[64625,64625],\"mapped\",[1578,1586]],[[64626,64626],\"mapped\",[1578,1605]],[[64627,64627],\"mapped\",[1578,1606]],[[64628,64628],\"mapped\",[1578,1609]],[[64629,64629],\"mapped\",[1578,1610]],[[64630,64630],\"mapped\",[1579,1585]],[[64631,64631],\"mapped\",[1579,1586]],[[64632,64632],\"mapped\",[1579,1605]],[[64633,64633],\"mapped\",[1579,1606]],[[64634,64634],\"mapped\",[1579,1609]],[[64635,64635],\"mapped\",[1579,1610]],[[64636,64636],\"mapped\",[1601,1609]],[[64637,64637],\"mapped\",[1601,1610]],[[64638,64638],\"mapped\",[1602,1609]],[[64639,64639],\"mapped\",[1602,1610]],[[64640,64640],\"mapped\",[1603,1575]],[[64641,64641],\"mapped\",[1603,1604]],[[64642,64642],\"mapped\",[1603,1605]],[[64643,64643],\"mapped\",[1603,1609]],[[64644,64644],\"mapped\",[1603,1610]],[[64645,64645],\"mapped\",[1604,1605]],[[64646,64646],\"mapped\",[1604,1609]],[[64647,64647],\"mapped\",[1604,1610]],[[64648,64648],\"mapped\",[1605,1575]],[[64649,64649],\"mapped\",[1605,1605]],[[64650,64650],\"mapped\",[1606,1585]],[[64651,64651],\"mapped\",[1606,1586]],[[64652,64652],\"mapped\",[1606,1605]],[[64653,64653],\"mapped\",[1606,1606]],[[64654,64654],\"mapped\",[1606,1609]],[[64655,64655],\"mapped\",[1606,1610]],[[64656,64656],\"mapped\",[1609,1648]],[[64657,64657],\"mapped\",[1610,1585]],[[64658,64658],\"mapped\",[1610,1586]],[[64659,64659],\"mapped\",[1610,1605]],[[64660,64660],\"mapped\",[1610,1606]],[[64661,64661],\"mapped\",[1610,1609]],[[64662,64662],\"mapped\",[1610,1610]],[[64663,64663],\"mapped\",[1574,1580]],[[64664,64664],\"mapped\",[1574,1581]],[[64665,64665],\"mapped\",[1574,1582]],[[64666,64666],\"mapped\",[1574,1605]],[[64667,64667],\"mapped\",[1574,1607]],[[64668,64668],\"mapped\",[1576,1580]],[[64669,64669],\"mapped\",[1576,1581]],[[64670,64670],\"mapped\",[1576,1582]],[[64671,64671],\"mapped\",[1576,1605]],[[64672,64672],\"mapped\",[1576,1607]],[[64673,64673],\"mapped\",[1578,1580]],[[64674,64674],\"mapped\",[1578,1581]],[[64675,64675],\"mapped\",[1578,1582]],[[64676,64676],\"mapped\",[1578,1605]],[[64677,64677],\"mapped\",[1578,1607]],[[64678,64678],\"mapped\",[1579,1605]],[[64679,64679],\"mapped\",[1580,1581]],[[64680,64680],\"mapped\",[1580,1605]],[[64681,64681],\"mapped\",[1581,1580]],[[64682,64682],\"mapped\",[1581,1605]],[[64683,64683],\"mapped\",[1582,1580]],[[64684,64684],\"mapped\",[1582,1605]],[[64685,64685],\"mapped\",[1587,1580]],[[64686,64686],\"mapped\",[1587,1581]],[[64687,64687],\"mapped\",[1587,1582]],[[64688,64688],\"mapped\",[1587,1605]],[[64689,64689],\"mapped\",[1589,1581]],[[64690,64690],\"mapped\",[1589,1582]],[[64691,64691],\"mapped\",[1589,1605]],[[64692,64692],\"mapped\",[1590,1580]],[[64693,64693],\"mapped\",[1590,1581]],[[64694,64694],\"mapped\",[1590,1582]],[[64695,64695],\"mapped\",[1590,1605]],[[64696,64696],\"mapped\",[1591,1581]],[[64697,64697],\"mapped\",[1592,1605]],[[64698,64698],\"mapped\",[1593,1580]],[[64699,64699],\"mapped\",[1593,1605]],[[64700,64700],\"mapped\",[1594,1580]],[[64701,64701],\"mapped\",[1594,1605]],[[64702,64702],\"mapped\",[1601,1580]],[[64703,64703],\"mapped\",[1601,1581]],[[64704,64704],\"mapped\",[1601,1582]],[[64705,64705],\"mapped\",[1601,1605]],[[64706,64706],\"mapped\",[1602,1581]],[[64707,64707],\"mapped\",[1602,1605]],[[64708,64708],\"mapped\",[1603,1580]],[[64709,64709],\"mapped\",[1603,1581]],[[64710,64710],\"mapped\",[1603,1582]],[[64711,64711],\"mapped\",[1603,1604]],[[64712,64712],\"mapped\",[1603,1605]],[[64713,64713],\"mapped\",[1604,1580]],[[64714,64714],\"mapped\",[1604,1581]],[[64715,64715],\"mapped\",[1604,1582]],[[64716,64716],\"mapped\",[1604,1605]],[[64717,64717],\"mapped\",[1604,1607]],[[64718,64718],\"mapped\",[1605,1580]],[[64719,64719],\"mapped\",[1605,1581]],[[64720,64720],\"mapped\",[1605,1582]],[[64721,64721],\"mapped\",[1605,1605]],[[64722,64722],\"mapped\",[1606,1580]],[[64723,64723],\"mapped\",[1606,1581]],[[64724,64724],\"mapped\",[1606,1582]],[[64725,64725],\"mapped\",[1606,1605]],[[64726,64726],\"mapped\",[1606,1607]],[[64727,64727],\"mapped\",[1607,1580]],[[64728,64728],\"mapped\",[1607,1605]],[[64729,64729],\"mapped\",[1607,1648]],[[64730,64730],\"mapped\",[1610,1580]],[[64731,64731],\"mapped\",[1610,1581]],[[64732,64732],\"mapped\",[1610,1582]],[[64733,64733],\"mapped\",[1610,1605]],[[64734,64734],\"mapped\",[1610,1607]],[[64735,64735],\"mapped\",[1574,1605]],[[64736,64736],\"mapped\",[1574,1607]],[[64737,64737],\"mapped\",[1576,1605]],[[64738,64738],\"mapped\",[1576,1607]],[[64739,64739],\"mapped\",[1578,1605]],[[64740,64740],\"mapped\",[1578,1607]],[[64741,64741],\"mapped\",[1579,1605]],[[64742,64742],\"mapped\",[1579,1607]],[[64743,64743],\"mapped\",[1587,1605]],[[64744,64744],\"mapped\",[1587,1607]],[[64745,64745],\"mapped\",[1588,1605]],[[64746,64746],\"mapped\",[1588,1607]],[[64747,64747],\"mapped\",[1603,1604]],[[64748,64748],\"mapped\",[1603,1605]],[[64749,64749],\"mapped\",[1604,1605]],[[64750,64750],\"mapped\",[1606,1605]],[[64751,64751],\"mapped\",[1606,1607]],[[64752,64752],\"mapped\",[1610,1605]],[[64753,64753],\"mapped\",[1610,1607]],[[64754,64754],\"mapped\",[1600,1614,1617]],[[64755,64755],\"mapped\",[1600,1615,1617]],[[64756,64756],\"mapped\",[1600,1616,1617]],[[64757,64757],\"mapped\",[1591,1609]],[[64758,64758],\"mapped\",[1591,1610]],[[64759,64759],\"mapped\",[1593,1609]],[[64760,64760],\"mapped\",[1593,1610]],[[64761,64761],\"mapped\",[1594,1609]],[[64762,64762],\"mapped\",[1594,1610]],[[64763,64763],\"mapped\",[1587,1609]],[[64764,64764],\"mapped\",[1587,1610]],[[64765,64765],\"mapped\",[1588,1609]],[[64766,64766],\"mapped\",[1588,1610]],[[64767,64767],\"mapped\",[1581,1609]],[[64768,64768],\"mapped\",[1581,1610]],[[64769,64769],\"mapped\",[1580,1609]],[[64770,64770],\"mapped\",[1580,1610]],[[64771,64771],\"mapped\",[1582,1609]],[[64772,64772],\"mapped\",[1582,1610]],[[64773,64773],\"mapped\",[1589,1609]],[[64774,64774],\"mapped\",[1589,1610]],[[64775,64775],\"mapped\",[1590,1609]],[[64776,64776],\"mapped\",[1590,1610]],[[64777,64777],\"mapped\",[1588,1580]],[[64778,64778],\"mapped\",[1588,1581]],[[64779,64779],\"mapped\",[1588,1582]],[[64780,64780],\"mapped\",[1588,1605]],[[64781,64781],\"mapped\",[1588,1585]],[[64782,64782],\"mapped\",[1587,1585]],[[64783,64783],\"mapped\",[1589,1585]],[[64784,64784],\"mapped\",[1590,1585]],[[64785,64785],\"mapped\",[1591,1609]],[[64786,64786],\"mapped\",[1591,1610]],[[64787,64787],\"mapped\",[1593,1609]],[[64788,64788],\"mapped\",[1593,1610]],[[64789,64789],\"mapped\",[1594,1609]],[[64790,64790],\"mapped\",[1594,1610]],[[64791,64791],\"mapped\",[1587,1609]],[[64792,64792],\"mapped\",[1587,1610]],[[64793,64793],\"mapped\",[1588,1609]],[[64794,64794],\"mapped\",[1588,1610]],[[64795,64795],\"mapped\",[1581,1609]],[[64796,64796],\"mapped\",[1581,1610]],[[64797,64797],\"mapped\",[1580,1609]],[[64798,64798],\"mapped\",[1580,1610]],[[64799,64799],\"mapped\",[1582,1609]],[[64800,64800],\"mapped\",[1582,1610]],[[64801,64801],\"mapped\",[1589,1609]],[[64802,64802],\"mapped\",[1589,1610]],[[64803,64803],\"mapped\",[1590,1609]],[[64804,64804],\"mapped\",[1590,1610]],[[64805,64805],\"mapped\",[1588,1580]],[[64806,64806],\"mapped\",[1588,1581]],[[64807,64807],\"mapped\",[1588,1582]],[[64808,64808],\"mapped\",[1588,1605]],[[64809,64809],\"mapped\",[1588,1585]],[[64810,64810],\"mapped\",[1587,1585]],[[64811,64811],\"mapped\",[1589,1585]],[[64812,64812],\"mapped\",[1590,1585]],[[64813,64813],\"mapped\",[1588,1580]],[[64814,64814],\"mapped\",[1588,1581]],[[64815,64815],\"mapped\",[1588,1582]],[[64816,64816],\"mapped\",[1588,1605]],[[64817,64817],\"mapped\",[1587,1607]],[[64818,64818],\"mapped\",[1588,1607]],[[64819,64819],\"mapped\",[1591,1605]],[[64820,64820],\"mapped\",[1587,1580]],[[64821,64821],\"mapped\",[1587,1581]],[[64822,64822],\"mapped\",[1587,1582]],[[64823,64823],\"mapped\",[1588,1580]],[[64824,64824],\"mapped\",[1588,1581]],[[64825,64825],\"mapped\",[1588,1582]],[[64826,64826],\"mapped\",[1591,1605]],[[64827,64827],\"mapped\",[1592,1605]],[[64828,64829],\"mapped\",[1575,1611]],[[64830,64831],\"valid\",[],\"NV8\"],[[64832,64847],\"disallowed\"],[[64848,64848],\"mapped\",[1578,1580,1605]],[[64849,64850],\"mapped\",[1578,1581,1580]],[[64851,64851],\"mapped\",[1578,1581,1605]],[[64852,64852],\"mapped\",[1578,1582,1605]],[[64853,64853],\"mapped\",[1578,1605,1580]],[[64854,64854],\"mapped\",[1578,1605,1581]],[[64855,64855],\"mapped\",[1578,1605,1582]],[[64856,64857],\"mapped\",[1580,1605,1581]],[[64858,64858],\"mapped\",[1581,1605,1610]],[[64859,64859],\"mapped\",[1581,1605,1609]],[[64860,64860],\"mapped\",[1587,1581,1580]],[[64861,64861],\"mapped\",[1587,1580,1581]],[[64862,64862],\"mapped\",[1587,1580,1609]],[[64863,64864],\"mapped\",[1587,1605,1581]],[[64865,64865],\"mapped\",[1587,1605,1580]],[[64866,64867],\"mapped\",[1587,1605,1605]],[[64868,64869],\"mapped\",[1589,1581,1581]],[[64870,64870],\"mapped\",[1589,1605,1605]],[[64871,64872],\"mapped\",[1588,1581,1605]],[[64873,64873],\"mapped\",[1588,1580,1610]],[[64874,64875],\"mapped\",[1588,1605,1582]],[[64876,64877],\"mapped\",[1588,1605,1605]],[[64878,64878],\"mapped\",[1590,1581,1609]],[[64879,64880],\"mapped\",[1590,1582,1605]],[[64881,64882],\"mapped\",[1591,1605,1581]],[[64883,64883],\"mapped\",[1591,1605,1605]],[[64884,64884],\"mapped\",[1591,1605,1610]],[[64885,64885],\"mapped\",[1593,1580,1605]],[[64886,64887],\"mapped\",[1593,1605,1605]],[[64888,64888],\"mapped\",[1593,1605,1609]],[[64889,64889],\"mapped\",[1594,1605,1605]],[[64890,64890],\"mapped\",[1594,1605,1610]],[[64891,64891],\"mapped\",[1594,1605,1609]],[[64892,64893],\"mapped\",[1601,1582,1605]],[[64894,64894],\"mapped\",[1602,1605,1581]],[[64895,64895],\"mapped\",[1602,1605,1605]],[[64896,64896],\"mapped\",[1604,1581,1605]],[[64897,64897],\"mapped\",[1604,1581,1610]],[[64898,64898],\"mapped\",[1604,1581,1609]],[[64899,64900],\"mapped\",[1604,1580,1580]],[[64901,64902],\"mapped\",[1604,1582,1605]],[[64903,64904],\"mapped\",[1604,1605,1581]],[[64905,64905],\"mapped\",[1605,1581,1580]],[[64906,64906],\"mapped\",[1605,1581,1605]],[[64907,64907],\"mapped\",[1605,1581,1610]],[[64908,64908],\"mapped\",[1605,1580,1581]],[[64909,64909],\"mapped\",[1605,1580,1605]],[[64910,64910],\"mapped\",[1605,1582,1580]],[[64911,64911],\"mapped\",[1605,1582,1605]],[[64912,64913],\"disallowed\"],[[64914,64914],\"mapped\",[1605,1580,1582]],[[64915,64915],\"mapped\",[1607,1605,1580]],[[64916,64916],\"mapped\",[1607,1605,1605]],[[64917,64917],\"mapped\",[1606,1581,1605]],[[64918,64918],\"mapped\",[1606,1581,1609]],[[64919,64920],\"mapped\",[1606,1580,1605]],[[64921,64921],\"mapped\",[1606,1580,1609]],[[64922,64922],\"mapped\",[1606,1605,1610]],[[64923,64923],\"mapped\",[1606,1605,1609]],[[64924,64925],\"mapped\",[1610,1605,1605]],[[64926,64926],\"mapped\",[1576,1582,1610]],[[64927,64927],\"mapped\",[1578,1580,1610]],[[64928,64928],\"mapped\",[1578,1580,1609]],[[64929,64929],\"mapped\",[1578,1582,1610]],[[64930,64930],\"mapped\",[1578,1582,1609]],[[64931,64931],\"mapped\",[1578,1605,1610]],[[64932,64932],\"mapped\",[1578,1605,1609]],[[64933,64933],\"mapped\",[1580,1605,1610]],[[64934,64934],\"mapped\",[1580,1581,1609]],[[64935,64935],\"mapped\",[1580,1605,1609]],[[64936,64936],\"mapped\",[1587,1582,1609]],[[64937,64937],\"mapped\",[1589,1581,1610]],[[64938,64938],\"mapped\",[1588,1581,1610]],[[64939,64939],\"mapped\",[1590,1581,1610]],[[64940,64940],\"mapped\",[1604,1580,1610]],[[64941,64941],\"mapped\",[1604,1605,1610]],[[64942,64942],\"mapped\",[1610,1581,1610]],[[64943,64943],\"mapped\",[1610,1580,1610]],[[64944,64944],\"mapped\",[1610,1605,1610]],[[64945,64945],\"mapped\",[1605,1605,1610]],[[64946,64946],\"mapped\",[1602,1605,1610]],[[64947,64947],\"mapped\",[1606,1581,1610]],[[64948,64948],\"mapped\",[1602,1605,1581]],[[64949,64949],\"mapped\",[1604,1581,1605]],[[64950,64950],\"mapped\",[1593,1605,1610]],[[64951,64951],\"mapped\",[1603,1605,1610]],[[64952,64952],\"mapped\",[1606,1580,1581]],[[64953,64953],\"mapped\",[1605,1582,1610]],[[64954,64954],\"mapped\",[1604,1580,1605]],[[64955,64955],\"mapped\",[1603,1605,1605]],[[64956,64956],\"mapped\",[1604,1580,1605]],[[64957,64957],\"mapped\",[1606,1580,1581]],[[64958,64958],\"mapped\",[1580,1581,1610]],[[64959,64959],\"mapped\",[1581,1580,1610]],[[64960,64960],\"mapped\",[1605,1580,1610]],[[64961,64961],\"mapped\",[1601,1605,1610]],[[64962,64962],\"mapped\",[1576,1581,1610]],[[64963,64963],\"mapped\",[1603,1605,1605]],[[64964,64964],\"mapped\",[1593,1580,1605]],[[64965,64965],\"mapped\",[1589,1605,1605]],[[64966,64966],\"mapped\",[1587,1582,1610]],[[64967,64967],\"mapped\",[1606,1580,1610]],[[64968,64975],\"disallowed\"],[[64976,65007],\"disallowed\"],[[65008,65008],\"mapped\",[1589,1604,1746]],[[65009,65009],\"mapped\",[1602,1604,1746]],[[65010,65010],\"mapped\",[1575,1604,1604,1607]],[[65011,65011],\"mapped\",[1575,1603,1576,1585]],[[65012,65012],\"mapped\",[1605,1581,1605,1583]],[[65013,65013],\"mapped\",[1589,1604,1593,1605]],[[65014,65014],\"mapped\",[1585,1587,1608,1604]],[[65015,65015],\"mapped\",[1593,1604,1610,1607]],[[65016,65016],\"mapped\",[1608,1587,1604,1605]],[[65017,65017],\"mapped\",[1589,1604,1609]],[[65018,65018],\"disallowed_STD3_mapped\",[1589,1604,1609,32,1575,1604,1604,1607,32,1593,1604,1610,1607,32,1608,1587,1604,1605]],[[65019,65019],\"disallowed_STD3_mapped\",[1580,1604,32,1580,1604,1575,1604,1607]],[[65020,65020],\"mapped\",[1585,1740,1575,1604]],[[65021,65021],\"valid\",[],\"NV8\"],[[65022,65023],\"disallowed\"],[[65024,65039],\"ignored\"],[[65040,65040],\"disallowed_STD3_mapped\",[44]],[[65041,65041],\"mapped\",[12289]],[[65042,65042],\"disallowed\"],[[65043,65043],\"disallowed_STD3_mapped\",[58]],[[65044,65044],\"disallowed_STD3_mapped\",[59]],[[65045,65045],\"disallowed_STD3_mapped\",[33]],[[65046,65046],\"disallowed_STD3_mapped\",[63]],[[65047,65047],\"mapped\",[12310]],[[65048,65048],\"mapped\",[12311]],[[65049,65049],\"disallowed\"],[[65050,65055],\"disallowed\"],[[65056,65059],\"valid\"],[[65060,65062],\"valid\"],[[65063,65069],\"valid\"],[[65070,65071],\"valid\"],[[65072,65072],\"disallowed\"],[[65073,65073],\"mapped\",[8212]],[[65074,65074],\"mapped\",[8211]],[[65075,65076],\"disallowed_STD3_mapped\",[95]],[[65077,65077],\"disallowed_STD3_mapped\",[40]],[[65078,65078],\"disallowed_STD3_mapped\",[41]],[[65079,65079],\"disallowed_STD3_mapped\",[123]],[[65080,65080],\"disallowed_STD3_mapped\",[125]],[[65081,65081],\"mapped\",[12308]],[[65082,65082],\"mapped\",[12309]],[[65083,65083],\"mapped\",[12304]],[[65084,65084],\"mapped\",[12305]],[[65085,65085],\"mapped\",[12298]],[[65086,65086],\"mapped\",[12299]],[[65087,65087],\"mapped\",[12296]],[[65088,65088],\"mapped\",[12297]],[[65089,65089],\"mapped\",[12300]],[[65090,65090],\"mapped\",[12301]],[[65091,65091],\"mapped\",[12302]],[[65092,65092],\"mapped\",[12303]],[[65093,65094],\"valid\",[],\"NV8\"],[[65095,65095],\"disallowed_STD3_mapped\",[91]],[[65096,65096],\"disallowed_STD3_mapped\",[93]],[[65097,65100],\"disallowed_STD3_mapped\",[32,773]],[[65101,65103],\"disallowed_STD3_mapped\",[95]],[[65104,65104],\"disallowed_STD3_mapped\",[44]],[[65105,65105],\"mapped\",[12289]],[[65106,65106],\"disallowed\"],[[65107,65107],\"disallowed\"],[[65108,65108],\"disallowed_STD3_mapped\",[59]],[[65109,65109],\"disallowed_STD3_mapped\",[58]],[[65110,65110],\"disallowed_STD3_mapped\",[63]],[[65111,65111],\"disallowed_STD3_mapped\",[33]],[[65112,65112],\"mapped\",[8212]],[[65113,65113],\"disallowed_STD3_mapped\",[40]],[[65114,65114],\"disallowed_STD3_mapped\",[41]],[[65115,65115],\"disallowed_STD3_mapped\",[123]],[[65116,65116],\"disallowed_STD3_mapped\",[125]],[[65117,65117],\"mapped\",[12308]],[[65118,65118],\"mapped\",[12309]],[[65119,65119],\"disallowed_STD3_mapped\",[35]],[[65120,65120],\"disallowed_STD3_mapped\",[38]],[[65121,65121],\"disallowed_STD3_mapped\",[42]],[[65122,65122],\"disallowed_STD3_mapped\",[43]],[[65123,65123],\"mapped\",[45]],[[65124,65124],\"disallowed_STD3_mapped\",[60]],[[65125,65125],\"disallowed_STD3_mapped\",[62]],[[65126,65126],\"disallowed_STD3_mapped\",[61]],[[65127,65127],\"disallowed\"],[[65128,65128],\"disallowed_STD3_mapped\",[92]],[[65129,65129],\"disallowed_STD3_mapped\",[36]],[[65130,65130],\"disallowed_STD3_mapped\",[37]],[[65131,65131],\"disallowed_STD3_mapped\",[64]],[[65132,65135],\"disallowed\"],[[65136,65136],\"disallowed_STD3_mapped\",[32,1611]],[[65137,65137],\"mapped\",[1600,1611]],[[65138,65138],\"disallowed_STD3_mapped\",[32,1612]],[[65139,65139],\"valid\"],[[65140,65140],\"disallowed_STD3_mapped\",[32,1613]],[[65141,65141],\"disallowed\"],[[65142,65142],\"disallowed_STD3_mapped\",[32,1614]],[[65143,65143],\"mapped\",[1600,1614]],[[65144,65144],\"disallowed_STD3_mapped\",[32,1615]],[[65145,65145],\"mapped\",[1600,1615]],[[65146,65146],\"disallowed_STD3_mapped\",[32,1616]],[[65147,65147],\"mapped\",[1600,1616]],[[65148,65148],\"disallowed_STD3_mapped\",[32,1617]],[[65149,65149],\"mapped\",[1600,1617]],[[65150,65150],\"disallowed_STD3_mapped\",[32,1618]],[[65151,65151],\"mapped\",[1600,1618]],[[65152,65152],\"mapped\",[1569]],[[65153,65154],\"mapped\",[1570]],[[65155,65156],\"mapped\",[1571]],[[65157,65158],\"mapped\",[1572]],[[65159,65160],\"mapped\",[1573]],[[65161,65164],\"mapped\",[1574]],[[65165,65166],\"mapped\",[1575]],[[65167,65170],\"mapped\",[1576]],[[65171,65172],\"mapped\",[1577]],[[65173,65176],\"mapped\",[1578]],[[65177,65180],\"mapped\",[1579]],[[65181,65184],\"mapped\",[1580]],[[65185,65188],\"mapped\",[1581]],[[65189,65192],\"mapped\",[1582]],[[65193,65194],\"mapped\",[1583]],[[65195,65196],\"mapped\",[1584]],[[65197,65198],\"mapped\",[1585]],[[65199,65200],\"mapped\",[1586]],[[65201,65204],\"mapped\",[1587]],[[65205,65208],\"mapped\",[1588]],[[65209,65212],\"mapped\",[1589]],[[65213,65216],\"mapped\",[1590]],[[65217,65220],\"mapped\",[1591]],[[65221,65224],\"mapped\",[1592]],[[65225,65228],\"mapped\",[1593]],[[65229,65232],\"mapped\",[1594]],[[65233,65236],\"mapped\",[1601]],[[65237,65240],\"mapped\",[1602]],[[65241,65244],\"mapped\",[1603]],[[65245,65248],\"mapped\",[1604]],[[65249,65252],\"mapped\",[1605]],[[65253,65256],\"mapped\",[1606]],[[65257,65260],\"mapped\",[1607]],[[65261,65262],\"mapped\",[1608]],[[65263,65264],\"mapped\",[1609]],[[65265,65268],\"mapped\",[1610]],[[65269,65270],\"mapped\",[1604,1570]],[[65271,65272],\"mapped\",[1604,1571]],[[65273,65274],\"mapped\",[1604,1573]],[[65275,65276],\"mapped\",[1604,1575]],[[65277,65278],\"disallowed\"],[[65279,65279],\"ignored\"],[[65280,65280],\"disallowed\"],[[65281,65281],\"disallowed_STD3_mapped\",[33]],[[65282,65282],\"disallowed_STD3_mapped\",[34]],[[65283,65283],\"disallowed_STD3_mapped\",[35]],[[65284,65284],\"disallowed_STD3_mapped\",[36]],[[65285,65285],\"disallowed_STD3_mapped\",[37]],[[65286,65286],\"disallowed_STD3_mapped\",[38]],[[65287,65287],\"disallowed_STD3_mapped\",[39]],[[65288,65288],\"disallowed_STD3_mapped\",[40]],[[65289,65289],\"disallowed_STD3_mapped\",[41]],[[65290,65290],\"disallowed_STD3_mapped\",[42]],[[65291,65291],\"disallowed_STD3_mapped\",[43]],[[65292,65292],\"disallowed_STD3_mapped\",[44]],[[65293,65293],\"mapped\",[45]],[[65294,65294],\"mapped\",[46]],[[65295,65295],\"disallowed_STD3_mapped\",[47]],[[65296,65296],\"mapped\",[48]],[[65297,65297],\"mapped\",[49]],[[65298,65298],\"mapped\",[50]],[[65299,65299],\"mapped\",[51]],[[65300,65300],\"mapped\",[52]],[[65301,65301],\"mapped\",[53]],[[65302,65302],\"mapped\",[54]],[[65303,65303],\"mapped\",[55]],[[65304,65304],\"mapped\",[56]],[[65305,65305],\"mapped\",[57]],[[65306,65306],\"disallowed_STD3_mapped\",[58]],[[65307,65307],\"disallowed_STD3_mapped\",[59]],[[65308,65308],\"disallowed_STD3_mapped\",[60]],[[65309,65309],\"disallowed_STD3_mapped\",[61]],[[65310,65310],\"disallowed_STD3_mapped\",[62]],[[65311,65311],\"disallowed_STD3_mapped\",[63]],[[65312,65312],\"disallowed_STD3_mapped\",[64]],[[65313,65313],\"mapped\",[97]],[[65314,65314],\"mapped\",[98]],[[65315,65315],\"mapped\",[99]],[[65316,65316],\"mapped\",[100]],[[65317,65317],\"mapped\",[101]],[[65318,65318],\"mapped\",[102]],[[65319,65319],\"mapped\",[103]],[[65320,65320],\"mapped\",[104]],[[65321,65321],\"mapped\",[105]],[[65322,65322],\"mapped\",[106]],[[65323,65323],\"mapped\",[107]],[[65324,65324],\"mapped\",[108]],[[65325,65325],\"mapped\",[109]],[[65326,65326],\"mapped\",[110]],[[65327,65327],\"mapped\",[111]],[[65328,65328],\"mapped\",[112]],[[65329,65329],\"mapped\",[113]],[[65330,65330],\"mapped\",[114]],[[65331,65331],\"mapped\",[115]],[[65332,65332],\"mapped\",[116]],[[65333,65333],\"mapped\",[117]],[[65334,65334],\"mapped\",[118]],[[65335,65335],\"mapped\",[119]],[[65336,65336],\"mapped\",[120]],[[65337,65337],\"mapped\",[121]],[[65338,65338],\"mapped\",[122]],[[65339,65339],\"disallowed_STD3_mapped\",[91]],[[65340,65340],\"disallowed_STD3_mapped\",[92]],[[65341,65341],\"disallowed_STD3_mapped\",[93]],[[65342,65342],\"disallowed_STD3_mapped\",[94]],[[65343,65343],\"disallowed_STD3_mapped\",[95]],[[65344,65344],\"disallowed_STD3_mapped\",[96]],[[65345,65345],\"mapped\",[97]],[[65346,65346],\"mapped\",[98]],[[65347,65347],\"mapped\",[99]],[[65348,65348],\"mapped\",[100]],[[65349,65349],\"mapped\",[101]],[[65350,65350],\"mapped\",[102]],[[65351,65351],\"mapped\",[103]],[[65352,65352],\"mapped\",[104]],[[65353,65353],\"mapped\",[105]],[[65354,65354],\"mapped\",[106]],[[65355,65355],\"mapped\",[107]],[[65356,65356],\"mapped\",[108]],[[65357,65357],\"mapped\",[109]],[[65358,65358],\"mapped\",[110]],[[65359,65359],\"mapped\",[111]],[[65360,65360],\"mapped\",[112]],[[65361,65361],\"mapped\",[113]],[[65362,65362],\"mapped\",[114]],[[65363,65363],\"mapped\",[115]],[[65364,65364],\"mapped\",[116]],[[65365,65365],\"mapped\",[117]],[[65366,65366],\"mapped\",[118]],[[65367,65367],\"mapped\",[119]],[[65368,65368],\"mapped\",[120]],[[65369,65369],\"mapped\",[121]],[[65370,65370],\"mapped\",[122]],[[65371,65371],\"disallowed_STD3_mapped\",[123]],[[65372,65372],\"disallowed_STD3_mapped\",[124]],[[65373,65373],\"disallowed_STD3_mapped\",[125]],[[65374,65374],\"disallowed_STD3_mapped\",[126]],[[65375,65375],\"mapped\",[10629]],[[65376,65376],\"mapped\",[10630]],[[65377,65377],\"mapped\",[46]],[[65378,65378],\"mapped\",[12300]],[[65379,65379],\"mapped\",[12301]],[[65380,65380],\"mapped\",[12289]],[[65381,65381],\"mapped\",[12539]],[[65382,65382],\"mapped\",[12530]],[[65383,65383],\"mapped\",[12449]],[[65384,65384],\"mapped\",[12451]],[[65385,65385],\"mapped\",[12453]],[[65386,65386],\"mapped\",[12455]],[[65387,65387],\"mapped\",[12457]],[[65388,65388],\"mapped\",[12515]],[[65389,65389],\"mapped\",[12517]],[[65390,65390],\"mapped\",[12519]],[[65391,65391],\"mapped\",[12483]],[[65392,65392],\"mapped\",[12540]],[[65393,65393],\"mapped\",[12450]],[[65394,65394],\"mapped\",[12452]],[[65395,65395],\"mapped\",[12454]],[[65396,65396],\"mapped\",[12456]],[[65397,65397],\"mapped\",[12458]],[[65398,65398],\"mapped\",[12459]],[[65399,65399],\"mapped\",[12461]],[[65400,65400],\"mapped\",[12463]],[[65401,65401],\"mapped\",[12465]],[[65402,65402],\"mapped\",[12467]],[[65403,65403],\"mapped\",[12469]],[[65404,65404],\"mapped\",[12471]],[[65405,65405],\"mapped\",[12473]],[[65406,65406],\"mapped\",[12475]],[[65407,65407],\"mapped\",[12477]],[[65408,65408],\"mapped\",[12479]],[[65409,65409],\"mapped\",[12481]],[[65410,65410],\"mapped\",[12484]],[[65411,65411],\"mapped\",[12486]],[[65412,65412],\"mapped\",[12488]],[[65413,65413],\"mapped\",[12490]],[[65414,65414],\"mapped\",[12491]],[[65415,65415],\"mapped\",[12492]],[[65416,65416],\"mapped\",[12493]],[[65417,65417],\"mapped\",[12494]],[[65418,65418],\"mapped\",[12495]],[[65419,65419],\"mapped\",[12498]],[[65420,65420],\"mapped\",[12501]],[[65421,65421],\"mapped\",[12504]],[[65422,65422],\"mapped\",[12507]],[[65423,65423],\"mapped\",[12510]],[[65424,65424],\"mapped\",[12511]],[[65425,65425],\"mapped\",[12512]],[[65426,65426],\"mapped\",[12513]],[[65427,65427],\"mapped\",[12514]],[[65428,65428],\"mapped\",[12516]],[[65429,65429],\"mapped\",[12518]],[[65430,65430],\"mapped\",[12520]],[[65431,65431],\"mapped\",[12521]],[[65432,65432],\"mapped\",[12522]],[[65433,65433],\"mapped\",[12523]],[[65434,65434],\"mapped\",[12524]],[[65435,65435],\"mapped\",[12525]],[[65436,65436],\"mapped\",[12527]],[[65437,65437],\"mapped\",[12531]],[[65438,65438],\"mapped\",[12441]],[[65439,65439],\"mapped\",[12442]],[[65440,65440],\"disallowed\"],[[65441,65441],\"mapped\",[4352]],[[65442,65442],\"mapped\",[4353]],[[65443,65443],\"mapped\",[4522]],[[65444,65444],\"mapped\",[4354]],[[65445,65445],\"mapped\",[4524]],[[65446,65446],\"mapped\",[4525]],[[65447,65447],\"mapped\",[4355]],[[65448,65448],\"mapped\",[4356]],[[65449,65449],\"mapped\",[4357]],[[65450,65450],\"mapped\",[4528]],[[65451,65451],\"mapped\",[4529]],[[65452,65452],\"mapped\",[4530]],[[65453,65453],\"mapped\",[4531]],[[65454,65454],\"mapped\",[4532]],[[65455,65455],\"mapped\",[4533]],[[65456,65456],\"mapped\",[4378]],[[65457,65457],\"mapped\",[4358]],[[65458,65458],\"mapped\",[4359]],[[65459,65459],\"mapped\",[4360]],[[65460,65460],\"mapped\",[4385]],[[65461,65461],\"mapped\",[4361]],[[65462,65462],\"mapped\",[4362]],[[65463,65463],\"mapped\",[4363]],[[65464,65464],\"mapped\",[4364]],[[65465,65465],\"mapped\",[4365]],[[65466,65466],\"mapped\",[4366]],[[65467,65467],\"mapped\",[4367]],[[65468,65468],\"mapped\",[4368]],[[65469,65469],\"mapped\",[4369]],[[65470,65470],\"mapped\",[4370]],[[65471,65473],\"disallowed\"],[[65474,65474],\"mapped\",[4449]],[[65475,65475],\"mapped\",[4450]],[[65476,65476],\"mapped\",[4451]],[[65477,65477],\"mapped\",[4452]],[[65478,65478],\"mapped\",[4453]],[[65479,65479],\"mapped\",[4454]],[[65480,65481],\"disallowed\"],[[65482,65482],\"mapped\",[4455]],[[65483,65483],\"mapped\",[4456]],[[65484,65484],\"mapped\",[4457]],[[65485,65485],\"mapped\",[4458]],[[65486,65486],\"mapped\",[4459]],[[65487,65487],\"mapped\",[4460]],[[65488,65489],\"disallowed\"],[[65490,65490],\"mapped\",[4461]],[[65491,65491],\"mapped\",[4462]],[[65492,65492],\"mapped\",[4463]],[[65493,65493],\"mapped\",[4464]],[[65494,65494],\"mapped\",[4465]],[[65495,65495],\"mapped\",[4466]],[[65496,65497],\"disallowed\"],[[65498,65498],\"mapped\",[4467]],[[65499,65499],\"mapped\",[4468]],[[65500,65500],\"mapped\",[4469]],[[65501,65503],\"disallowed\"],[[65504,65504],\"mapped\",[162]],[[65505,65505],\"mapped\",[163]],[[65506,65506],\"mapped\",[172]],[[65507,65507],\"disallowed_STD3_mapped\",[32,772]],[[65508,65508],\"mapped\",[166]],[[65509,65509],\"mapped\",[165]],[[65510,65510],\"mapped\",[8361]],[[65511,65511],\"disallowed\"],[[65512,65512],\"mapped\",[9474]],[[65513,65513],\"mapped\",[8592]],[[65514,65514],\"mapped\",[8593]],[[65515,65515],\"mapped\",[8594]],[[65516,65516],\"mapped\",[8595]],[[65517,65517],\"mapped\",[9632]],[[65518,65518],\"mapped\",[9675]],[[65519,65528],\"disallowed\"],[[65529,65531],\"disallowed\"],[[65532,65532],\"disallowed\"],[[65533,65533],\"disallowed\"],[[65534,65535],\"disallowed\"],[[65536,65547],\"valid\"],[[65548,65548],\"disallowed\"],[[65549,65574],\"valid\"],[[65575,65575],\"disallowed\"],[[65576,65594],\"valid\"],[[65595,65595],\"disallowed\"],[[65596,65597],\"valid\"],[[65598,65598],\"disallowed\"],[[65599,65613],\"valid\"],[[65614,65615],\"disallowed\"],[[65616,65629],\"valid\"],[[65630,65663],\"disallowed\"],[[65664,65786],\"valid\"],[[65787,65791],\"disallowed\"],[[65792,65794],\"valid\",[],\"NV8\"],[[65795,65798],\"disallowed\"],[[65799,65843],\"valid\",[],\"NV8\"],[[65844,65846],\"disallowed\"],[[65847,65855],\"valid\",[],\"NV8\"],[[65856,65930],\"valid\",[],\"NV8\"],[[65931,65932],\"valid\",[],\"NV8\"],[[65933,65935],\"disallowed\"],[[65936,65947],\"valid\",[],\"NV8\"],[[65948,65951],\"disallowed\"],[[65952,65952],\"valid\",[],\"NV8\"],[[65953,65999],\"disallowed\"],[[66000,66044],\"valid\",[],\"NV8\"],[[66045,66045],\"valid\"],[[66046,66175],\"disallowed\"],[[66176,66204],\"valid\"],[[66205,66207],\"disallowed\"],[[66208,66256],\"valid\"],[[66257,66271],\"disallowed\"],[[66272,66272],\"valid\"],[[66273,66299],\"valid\",[],\"NV8\"],[[66300,66303],\"disallowed\"],[[66304,66334],\"valid\"],[[66335,66335],\"valid\"],[[66336,66339],\"valid\",[],\"NV8\"],[[66340,66351],\"disallowed\"],[[66352,66368],\"valid\"],[[66369,66369],\"valid\",[],\"NV8\"],[[66370,66377],\"valid\"],[[66378,66378],\"valid\",[],\"NV8\"],[[66379,66383],\"disallowed\"],[[66384,66426],\"valid\"],[[66427,66431],\"disallowed\"],[[66432,66461],\"valid\"],[[66462,66462],\"disallowed\"],[[66463,66463],\"valid\",[],\"NV8\"],[[66464,66499],\"valid\"],[[66500,66503],\"disallowed\"],[[66504,66511],\"valid\"],[[66512,66517],\"valid\",[],\"NV8\"],[[66518,66559],\"disallowed\"],[[66560,66560],\"mapped\",[66600]],[[66561,66561],\"mapped\",[66601]],[[66562,66562],\"mapped\",[66602]],[[66563,66563],\"mapped\",[66603]],[[66564,66564],\"mapped\",[66604]],[[66565,66565],\"mapped\",[66605]],[[66566,66566],\"mapped\",[66606]],[[66567,66567],\"mapped\",[66607]],[[66568,66568],\"mapped\",[66608]],[[66569,66569],\"mapped\",[66609]],[[66570,66570],\"mapped\",[66610]],[[66571,66571],\"mapped\",[66611]],[[66572,66572],\"mapped\",[66612]],[[66573,66573],\"mapped\",[66613]],[[66574,66574],\"mapped\",[66614]],[[66575,66575],\"mapped\",[66615]],[[66576,66576],\"mapped\",[66616]],[[66577,66577],\"mapped\",[66617]],[[66578,66578],\"mapped\",[66618]],[[66579,66579],\"mapped\",[66619]],[[66580,66580],\"mapped\",[66620]],[[66581,66581],\"mapped\",[66621]],[[66582,66582],\"mapped\",[66622]],[[66583,66583],\"mapped\",[66623]],[[66584,66584],\"mapped\",[66624]],[[66585,66585],\"mapped\",[66625]],[[66586,66586],\"mapped\",[66626]],[[66587,66587],\"mapped\",[66627]],[[66588,66588],\"mapped\",[66628]],[[66589,66589],\"mapped\",[66629]],[[66590,66590],\"mapped\",[66630]],[[66591,66591],\"mapped\",[66631]],[[66592,66592],\"mapped\",[66632]],[[66593,66593],\"mapped\",[66633]],[[66594,66594],\"mapped\",[66634]],[[66595,66595],\"mapped\",[66635]],[[66596,66596],\"mapped\",[66636]],[[66597,66597],\"mapped\",[66637]],[[66598,66598],\"mapped\",[66638]],[[66599,66599],\"mapped\",[66639]],[[66600,66637],\"valid\"],[[66638,66717],\"valid\"],[[66718,66719],\"disallowed\"],[[66720,66729],\"valid\"],[[66730,66815],\"disallowed\"],[[66816,66855],\"valid\"],[[66856,66863],\"disallowed\"],[[66864,66915],\"valid\"],[[66916,66926],\"disallowed\"],[[66927,66927],\"valid\",[],\"NV8\"],[[66928,67071],\"disallowed\"],[[67072,67382],\"valid\"],[[67383,67391],\"disallowed\"],[[67392,67413],\"valid\"],[[67414,67423],\"disallowed\"],[[67424,67431],\"valid\"],[[67432,67583],\"disallowed\"],[[67584,67589],\"valid\"],[[67590,67591],\"disallowed\"],[[67592,67592],\"valid\"],[[67593,67593],\"disallowed\"],[[67594,67637],\"valid\"],[[67638,67638],\"disallowed\"],[[67639,67640],\"valid\"],[[67641,67643],\"disallowed\"],[[67644,67644],\"valid\"],[[67645,67646],\"disallowed\"],[[67647,67647],\"valid\"],[[67648,67669],\"valid\"],[[67670,67670],\"disallowed\"],[[67671,67679],\"valid\",[],\"NV8\"],[[67680,67702],\"valid\"],[[67703,67711],\"valid\",[],\"NV8\"],[[67712,67742],\"valid\"],[[67743,67750],\"disallowed\"],[[67751,67759],\"valid\",[],\"NV8\"],[[67760,67807],\"disallowed\"],[[67808,67826],\"valid\"],[[67827,67827],\"disallowed\"],[[67828,67829],\"valid\"],[[67830,67834],\"disallowed\"],[[67835,67839],\"valid\",[],\"NV8\"],[[67840,67861],\"valid\"],[[67862,67865],\"valid\",[],\"NV8\"],[[67866,67867],\"valid\",[],\"NV8\"],[[67868,67870],\"disallowed\"],[[67871,67871],\"valid\",[],\"NV8\"],[[67872,67897],\"valid\"],[[67898,67902],\"disallowed\"],[[67903,67903],\"valid\",[],\"NV8\"],[[67904,67967],\"disallowed\"],[[67968,68023],\"valid\"],[[68024,68027],\"disallowed\"],[[68028,68029],\"valid\",[],\"NV8\"],[[68030,68031],\"valid\"],[[68032,68047],\"valid\",[],\"NV8\"],[[68048,68049],\"disallowed\"],[[68050,68095],\"valid\",[],\"NV8\"],[[68096,68099],\"valid\"],[[68100,68100],\"disallowed\"],[[68101,68102],\"valid\"],[[68103,68107],\"disallowed\"],[[68108,68115],\"valid\"],[[68116,68116],\"disallowed\"],[[68117,68119],\"valid\"],[[68120,68120],\"disallowed\"],[[68121,68147],\"valid\"],[[68148,68151],\"disallowed\"],[[68152,68154],\"valid\"],[[68155,68158],\"disallowed\"],[[68159,68159],\"valid\"],[[68160,68167],\"valid\",[],\"NV8\"],[[68168,68175],\"disallowed\"],[[68176,68184],\"valid\",[],\"NV8\"],[[68185,68191],\"disallowed\"],[[68192,68220],\"valid\"],[[68221,68223],\"valid\",[],\"NV8\"],[[68224,68252],\"valid\"],[[68253,68255],\"valid\",[],\"NV8\"],[[68256,68287],\"disallowed\"],[[68288,68295],\"valid\"],[[68296,68296],\"valid\",[],\"NV8\"],[[68297,68326],\"valid\"],[[68327,68330],\"disallowed\"],[[68331,68342],\"valid\",[],\"NV8\"],[[68343,68351],\"disallowed\"],[[68352,68405],\"valid\"],[[68406,68408],\"disallowed\"],[[68409,68415],\"valid\",[],\"NV8\"],[[68416,68437],\"valid\"],[[68438,68439],\"disallowed\"],[[68440,68447],\"valid\",[],\"NV8\"],[[68448,68466],\"valid\"],[[68467,68471],\"disallowed\"],[[68472,68479],\"valid\",[],\"NV8\"],[[68480,68497],\"valid\"],[[68498,68504],\"disallowed\"],[[68505,68508],\"valid\",[],\"NV8\"],[[68509,68520],\"disallowed\"],[[68521,68527],\"valid\",[],\"NV8\"],[[68528,68607],\"disallowed\"],[[68608,68680],\"valid\"],[[68681,68735],\"disallowed\"],[[68736,68736],\"mapped\",[68800]],[[68737,68737],\"mapped\",[68801]],[[68738,68738],\"mapped\",[68802]],[[68739,68739],\"mapped\",[68803]],[[68740,68740],\"mapped\",[68804]],[[68741,68741],\"mapped\",[68805]],[[68742,68742],\"mapped\",[68806]],[[68743,68743],\"mapped\",[68807]],[[68744,68744],\"mapped\",[68808]],[[68745,68745],\"mapped\",[68809]],[[68746,68746],\"mapped\",[68810]],[[68747,68747],\"mapped\",[68811]],[[68748,68748],\"mapped\",[68812]],[[68749,68749],\"mapped\",[68813]],[[68750,68750],\"mapped\",[68814]],[[68751,68751],\"mapped\",[68815]],[[68752,68752],\"mapped\",[68816]],[[68753,68753],\"mapped\",[68817]],[[68754,68754],\"mapped\",[68818]],[[68755,68755],\"mapped\",[68819]],[[68756,68756],\"mapped\",[68820]],[[68757,68757],\"mapped\",[68821]],[[68758,68758],\"mapped\",[68822]],[[68759,68759],\"mapped\",[68823]],[[68760,68760],\"mapped\",[68824]],[[68761,68761],\"mapped\",[68825]],[[68762,68762],\"mapped\",[68826]],[[68763,68763],\"mapped\",[68827]],[[68764,68764],\"mapped\",[68828]],[[68765,68765],\"mapped\",[68829]],[[68766,68766],\"mapped\",[68830]],[[68767,68767],\"mapped\",[68831]],[[68768,68768],\"mapped\",[68832]],[[68769,68769],\"mapped\",[68833]],[[68770,68770],\"mapped\",[68834]],[[68771,68771],\"mapped\",[68835]],[[68772,68772],\"mapped\",[68836]],[[68773,68773],\"mapped\",[68837]],[[68774,68774],\"mapped\",[68838]],[[68775,68775],\"mapped\",[68839]],[[68776,68776],\"mapped\",[68840]],[[68777,68777],\"mapped\",[68841]],[[68778,68778],\"mapped\",[68842]],[[68779,68779],\"mapped\",[68843]],[[68780,68780],\"mapped\",[68844]],[[68781,68781],\"mapped\",[68845]],[[68782,68782],\"mapped\",[68846]],[[68783,68783],\"mapped\",[68847]],[[68784,68784],\"mapped\",[68848]],[[68785,68785],\"mapped\",[68849]],[[68786,68786],\"mapped\",[68850]],[[68787,68799],\"disallowed\"],[[68800,68850],\"valid\"],[[68851,68857],\"disallowed\"],[[68858,68863],\"valid\",[],\"NV8\"],[[68864,69215],\"disallowed\"],[[69216,69246],\"valid\",[],\"NV8\"],[[69247,69631],\"disallowed\"],[[69632,69702],\"valid\"],[[69703,69709],\"valid\",[],\"NV8\"],[[69710,69713],\"disallowed\"],[[69714,69733],\"valid\",[],\"NV8\"],[[69734,69743],\"valid\"],[[69744,69758],\"disallowed\"],[[69759,69759],\"valid\"],[[69760,69818],\"valid\"],[[69819,69820],\"valid\",[],\"NV8\"],[[69821,69821],\"disallowed\"],[[69822,69825],\"valid\",[],\"NV8\"],[[69826,69839],\"disallowed\"],[[69840,69864],\"valid\"],[[69865,69871],\"disallowed\"],[[69872,69881],\"valid\"],[[69882,69887],\"disallowed\"],[[69888,69940],\"valid\"],[[69941,69941],\"disallowed\"],[[69942,69951],\"valid\"],[[69952,69955],\"valid\",[],\"NV8\"],[[69956,69967],\"disallowed\"],[[69968,70003],\"valid\"],[[70004,70005],\"valid\",[],\"NV8\"],[[70006,70006],\"valid\"],[[70007,70015],\"disallowed\"],[[70016,70084],\"valid\"],[[70085,70088],\"valid\",[],\"NV8\"],[[70089,70089],\"valid\",[],\"NV8\"],[[70090,70092],\"valid\"],[[70093,70093],\"valid\",[],\"NV8\"],[[70094,70095],\"disallowed\"],[[70096,70105],\"valid\"],[[70106,70106],\"valid\"],[[70107,70107],\"valid\",[],\"NV8\"],[[70108,70108],\"valid\"],[[70109,70111],\"valid\",[],\"NV8\"],[[70112,70112],\"disallowed\"],[[70113,70132],\"valid\",[],\"NV8\"],[[70133,70143],\"disallowed\"],[[70144,70161],\"valid\"],[[70162,70162],\"disallowed\"],[[70163,70199],\"valid\"],[[70200,70205],\"valid\",[],\"NV8\"],[[70206,70271],\"disallowed\"],[[70272,70278],\"valid\"],[[70279,70279],\"disallowed\"],[[70280,70280],\"valid\"],[[70281,70281],\"disallowed\"],[[70282,70285],\"valid\"],[[70286,70286],\"disallowed\"],[[70287,70301],\"valid\"],[[70302,70302],\"disallowed\"],[[70303,70312],\"valid\"],[[70313,70313],\"valid\",[],\"NV8\"],[[70314,70319],\"disallowed\"],[[70320,70378],\"valid\"],[[70379,70383],\"disallowed\"],[[70384,70393],\"valid\"],[[70394,70399],\"disallowed\"],[[70400,70400],\"valid\"],[[70401,70403],\"valid\"],[[70404,70404],\"disallowed\"],[[70405,70412],\"valid\"],[[70413,70414],\"disallowed\"],[[70415,70416],\"valid\"],[[70417,70418],\"disallowed\"],[[70419,70440],\"valid\"],[[70441,70441],\"disallowed\"],[[70442,70448],\"valid\"],[[70449,70449],\"disallowed\"],[[70450,70451],\"valid\"],[[70452,70452],\"disallowed\"],[[70453,70457],\"valid\"],[[70458,70459],\"disallowed\"],[[70460,70468],\"valid\"],[[70469,70470],\"disallowed\"],[[70471,70472],\"valid\"],[[70473,70474],\"disallowed\"],[[70475,70477],\"valid\"],[[70478,70479],\"disallowed\"],[[70480,70480],\"valid\"],[[70481,70486],\"disallowed\"],[[70487,70487],\"valid\"],[[70488,70492],\"disallowed\"],[[70493,70499],\"valid\"],[[70500,70501],\"disallowed\"],[[70502,70508],\"valid\"],[[70509,70511],\"disallowed\"],[[70512,70516],\"valid\"],[[70517,70783],\"disallowed\"],[[70784,70853],\"valid\"],[[70854,70854],\"valid\",[],\"NV8\"],[[70855,70855],\"valid\"],[[70856,70863],\"disallowed\"],[[70864,70873],\"valid\"],[[70874,71039],\"disallowed\"],[[71040,71093],\"valid\"],[[71094,71095],\"disallowed\"],[[71096,71104],\"valid\"],[[71105,71113],\"valid\",[],\"NV8\"],[[71114,71127],\"valid\",[],\"NV8\"],[[71128,71133],\"valid\"],[[71134,71167],\"disallowed\"],[[71168,71232],\"valid\"],[[71233,71235],\"valid\",[],\"NV8\"],[[71236,71236],\"valid\"],[[71237,71247],\"disallowed\"],[[71248,71257],\"valid\"],[[71258,71295],\"disallowed\"],[[71296,71351],\"valid\"],[[71352,71359],\"disallowed\"],[[71360,71369],\"valid\"],[[71370,71423],\"disallowed\"],[[71424,71449],\"valid\"],[[71450,71452],\"disallowed\"],[[71453,71467],\"valid\"],[[71468,71471],\"disallowed\"],[[71472,71481],\"valid\"],[[71482,71487],\"valid\",[],\"NV8\"],[[71488,71839],\"disallowed\"],[[71840,71840],\"mapped\",[71872]],[[71841,71841],\"mapped\",[71873]],[[71842,71842],\"mapped\",[71874]],[[71843,71843],\"mapped\",[71875]],[[71844,71844],\"mapped\",[71876]],[[71845,71845],\"mapped\",[71877]],[[71846,71846],\"mapped\",[71878]],[[71847,71847],\"mapped\",[71879]],[[71848,71848],\"mapped\",[71880]],[[71849,71849],\"mapped\",[71881]],[[71850,71850],\"mapped\",[71882]],[[71851,71851],\"mapped\",[71883]],[[71852,71852],\"mapped\",[71884]],[[71853,71853],\"mapped\",[71885]],[[71854,71854],\"mapped\",[71886]],[[71855,71855],\"mapped\",[71887]],[[71856,71856],\"mapped\",[71888]],[[71857,71857],\"mapped\",[71889]],[[71858,71858],\"mapped\",[71890]],[[71859,71859],\"mapped\",[71891]],[[71860,71860],\"mapped\",[71892]],[[71861,71861],\"mapped\",[71893]],[[71862,71862],\"mapped\",[71894]],[[71863,71863],\"mapped\",[71895]],[[71864,71864],\"mapped\",[71896]],[[71865,71865],\"mapped\",[71897]],[[71866,71866],\"mapped\",[71898]],[[71867,71867],\"mapped\",[71899]],[[71868,71868],\"mapped\",[71900]],[[71869,71869],\"mapped\",[71901]],[[71870,71870],\"mapped\",[71902]],[[71871,71871],\"mapped\",[71903]],[[71872,71913],\"valid\"],[[71914,71922],\"valid\",[],\"NV8\"],[[71923,71934],\"disallowed\"],[[71935,71935],\"valid\"],[[71936,72383],\"disallowed\"],[[72384,72440],\"valid\"],[[72441,73727],\"disallowed\"],[[73728,74606],\"valid\"],[[74607,74648],\"valid\"],[[74649,74649],\"valid\"],[[74650,74751],\"disallowed\"],[[74752,74850],\"valid\",[],\"NV8\"],[[74851,74862],\"valid\",[],\"NV8\"],[[74863,74863],\"disallowed\"],[[74864,74867],\"valid\",[],\"NV8\"],[[74868,74868],\"valid\",[],\"NV8\"],[[74869,74879],\"disallowed\"],[[74880,75075],\"valid\"],[[75076,77823],\"disallowed\"],[[77824,78894],\"valid\"],[[78895,82943],\"disallowed\"],[[82944,83526],\"valid\"],[[83527,92159],\"disallowed\"],[[92160,92728],\"valid\"],[[92729,92735],\"disallowed\"],[[92736,92766],\"valid\"],[[92767,92767],\"disallowed\"],[[92768,92777],\"valid\"],[[92778,92781],\"disallowed\"],[[92782,92783],\"valid\",[],\"NV8\"],[[92784,92879],\"disallowed\"],[[92880,92909],\"valid\"],[[92910,92911],\"disallowed\"],[[92912,92916],\"valid\"],[[92917,92917],\"valid\",[],\"NV8\"],[[92918,92927],\"disallowed\"],[[92928,92982],\"valid\"],[[92983,92991],\"valid\",[],\"NV8\"],[[92992,92995],\"valid\"],[[92996,92997],\"valid\",[],\"NV8\"],[[92998,93007],\"disallowed\"],[[93008,93017],\"valid\"],[[93018,93018],\"disallowed\"],[[93019,93025],\"valid\",[],\"NV8\"],[[93026,93026],\"disallowed\"],[[93027,93047],\"valid\"],[[93048,93052],\"disallowed\"],[[93053,93071],\"valid\"],[[93072,93951],\"disallowed\"],[[93952,94020],\"valid\"],[[94021,94031],\"disallowed\"],[[94032,94078],\"valid\"],[[94079,94094],\"disallowed\"],[[94095,94111],\"valid\"],[[94112,110591],\"disallowed\"],[[110592,110593],\"valid\"],[[110594,113663],\"disallowed\"],[[113664,113770],\"valid\"],[[113771,113775],\"disallowed\"],[[113776,113788],\"valid\"],[[113789,113791],\"disallowed\"],[[113792,113800],\"valid\"],[[113801,113807],\"disallowed\"],[[113808,113817],\"valid\"],[[113818,113819],\"disallowed\"],[[113820,113820],\"valid\",[],\"NV8\"],[[113821,113822],\"valid\"],[[113823,113823],\"valid\",[],\"NV8\"],[[113824,113827],\"ignored\"],[[113828,118783],\"disallowed\"],[[118784,119029],\"valid\",[],\"NV8\"],[[119030,119039],\"disallowed\"],[[119040,119078],\"valid\",[],\"NV8\"],[[119079,119080],\"disallowed\"],[[119081,119081],\"valid\",[],\"NV8\"],[[119082,119133],\"valid\",[],\"NV8\"],[[119134,119134],\"mapped\",[119127,119141]],[[119135,119135],\"mapped\",[119128,119141]],[[119136,119136],\"mapped\",[119128,119141,119150]],[[119137,119137],\"mapped\",[119128,119141,119151]],[[119138,119138],\"mapped\",[119128,119141,119152]],[[119139,119139],\"mapped\",[119128,119141,119153]],[[119140,119140],\"mapped\",[119128,119141,119154]],[[119141,119154],\"valid\",[],\"NV8\"],[[119155,119162],\"disallowed\"],[[119163,119226],\"valid\",[],\"NV8\"],[[119227,119227],\"mapped\",[119225,119141]],[[119228,119228],\"mapped\",[119226,119141]],[[119229,119229],\"mapped\",[119225,119141,119150]],[[119230,119230],\"mapped\",[119226,119141,119150]],[[119231,119231],\"mapped\",[119225,119141,119151]],[[119232,119232],\"mapped\",[119226,119141,119151]],[[119233,119261],\"valid\",[],\"NV8\"],[[119262,119272],\"valid\",[],\"NV8\"],[[119273,119295],\"disallowed\"],[[119296,119365],\"valid\",[],\"NV8\"],[[119366,119551],\"disallowed\"],[[119552,119638],\"valid\",[],\"NV8\"],[[119639,119647],\"disallowed\"],[[119648,119665],\"valid\",[],\"NV8\"],[[119666,119807],\"disallowed\"],[[119808,119808],\"mapped\",[97]],[[119809,119809],\"mapped\",[98]],[[119810,119810],\"mapped\",[99]],[[119811,119811],\"mapped\",[100]],[[119812,119812],\"mapped\",[101]],[[119813,119813],\"mapped\",[102]],[[119814,119814],\"mapped\",[103]],[[119815,119815],\"mapped\",[104]],[[119816,119816],\"mapped\",[105]],[[119817,119817],\"mapped\",[106]],[[119818,119818],\"mapped\",[107]],[[119819,119819],\"mapped\",[108]],[[119820,119820],\"mapped\",[109]],[[119821,119821],\"mapped\",[110]],[[119822,119822],\"mapped\",[111]],[[119823,119823],\"mapped\",[112]],[[119824,119824],\"mapped\",[113]],[[119825,119825],\"mapped\",[114]],[[119826,119826],\"mapped\",[115]],[[119827,119827],\"mapped\",[116]],[[119828,119828],\"mapped\",[117]],[[119829,119829],\"mapped\",[118]],[[119830,119830],\"mapped\",[119]],[[119831,119831],\"mapped\",[120]],[[119832,119832],\"mapped\",[121]],[[119833,119833],\"mapped\",[122]],[[119834,119834],\"mapped\",[97]],[[119835,119835],\"mapped\",[98]],[[119836,119836],\"mapped\",[99]],[[119837,119837],\"mapped\",[100]],[[119838,119838],\"mapped\",[101]],[[119839,119839],\"mapped\",[102]],[[119840,119840],\"mapped\",[103]],[[119841,119841],\"mapped\",[104]],[[119842,119842],\"mapped\",[105]],[[119843,119843],\"mapped\",[106]],[[119844,119844],\"mapped\",[107]],[[119845,119845],\"mapped\",[108]],[[119846,119846],\"mapped\",[109]],[[119847,119847],\"mapped\",[110]],[[119848,119848],\"mapped\",[111]],[[119849,119849],\"mapped\",[112]],[[119850,119850],\"mapped\",[113]],[[119851,119851],\"mapped\",[114]],[[119852,119852],\"mapped\",[115]],[[119853,119853],\"mapped\",[116]],[[119854,119854],\"mapped\",[117]],[[119855,119855],\"mapped\",[118]],[[119856,119856],\"mapped\",[119]],[[119857,119857],\"mapped\",[120]],[[119858,119858],\"mapped\",[121]],[[119859,119859],\"mapped\",[122]],[[119860,119860],\"mapped\",[97]],[[119861,119861],\"mapped\",[98]],[[119862,119862],\"mapped\",[99]],[[119863,119863],\"mapped\",[100]],[[119864,119864],\"mapped\",[101]],[[119865,119865],\"mapped\",[102]],[[119866,119866],\"mapped\",[103]],[[119867,119867],\"mapped\",[104]],[[119868,119868],\"mapped\",[105]],[[119869,119869],\"mapped\",[106]],[[119870,119870],\"mapped\",[107]],[[119871,119871],\"mapped\",[108]],[[119872,119872],\"mapped\",[109]],[[119873,119873],\"mapped\",[110]],[[119874,119874],\"mapped\",[111]],[[119875,119875],\"mapped\",[112]],[[119876,119876],\"mapped\",[113]],[[119877,119877],\"mapped\",[114]],[[119878,119878],\"mapped\",[115]],[[119879,119879],\"mapped\",[116]],[[119880,119880],\"mapped\",[117]],[[119881,119881],\"mapped\",[118]],[[119882,119882],\"mapped\",[119]],[[119883,119883],\"mapped\",[120]],[[119884,119884],\"mapped\",[121]],[[119885,119885],\"mapped\",[122]],[[119886,119886],\"mapped\",[97]],[[119887,119887],\"mapped\",[98]],[[119888,119888],\"mapped\",[99]],[[119889,119889],\"mapped\",[100]],[[119890,119890],\"mapped\",[101]],[[119891,119891],\"mapped\",[102]],[[119892,119892],\"mapped\",[103]],[[119893,119893],\"disallowed\"],[[119894,119894],\"mapped\",[105]],[[119895,119895],\"mapped\",[106]],[[119896,119896],\"mapped\",[107]],[[119897,119897],\"mapped\",[108]],[[119898,119898],\"mapped\",[109]],[[119899,119899],\"mapped\",[110]],[[119900,119900],\"mapped\",[111]],[[119901,119901],\"mapped\",[112]],[[119902,119902],\"mapped\",[113]],[[119903,119903],\"mapped\",[114]],[[119904,119904],\"mapped\",[115]],[[119905,119905],\"mapped\",[116]],[[119906,119906],\"mapped\",[117]],[[119907,119907],\"mapped\",[118]],[[119908,119908],\"mapped\",[119]],[[119909,119909],\"mapped\",[120]],[[119910,119910],\"mapped\",[121]],[[119911,119911],\"mapped\",[122]],[[119912,119912],\"mapped\",[97]],[[119913,119913],\"mapped\",[98]],[[119914,119914],\"mapped\",[99]],[[119915,119915],\"mapped\",[100]],[[119916,119916],\"mapped\",[101]],[[119917,119917],\"mapped\",[102]],[[119918,119918],\"mapped\",[103]],[[119919,119919],\"mapped\",[104]],[[119920,119920],\"mapped\",[105]],[[119921,119921],\"mapped\",[106]],[[119922,119922],\"mapped\",[107]],[[119923,119923],\"mapped\",[108]],[[119924,119924],\"mapped\",[109]],[[119925,119925],\"mapped\",[110]],[[119926,119926],\"mapped\",[111]],[[119927,119927],\"mapped\",[112]],[[119928,119928],\"mapped\",[113]],[[119929,119929],\"mapped\",[114]],[[119930,119930],\"mapped\",[115]],[[119931,119931],\"mapped\",[116]],[[119932,119932],\"mapped\",[117]],[[119933,119933],\"mapped\",[118]],[[119934,119934],\"mapped\",[119]],[[119935,119935],\"mapped\",[120]],[[119936,119936],\"mapped\",[121]],[[119937,119937],\"mapped\",[122]],[[119938,119938],\"mapped\",[97]],[[119939,119939],\"mapped\",[98]],[[119940,119940],\"mapped\",[99]],[[119941,119941],\"mapped\",[100]],[[119942,119942],\"mapped\",[101]],[[119943,119943],\"mapped\",[102]],[[119944,119944],\"mapped\",[103]],[[119945,119945],\"mapped\",[104]],[[119946,119946],\"mapped\",[105]],[[119947,119947],\"mapped\",[106]],[[119948,119948],\"mapped\",[107]],[[119949,119949],\"mapped\",[108]],[[119950,119950],\"mapped\",[109]],[[119951,119951],\"mapped\",[110]],[[119952,119952],\"mapped\",[111]],[[119953,119953],\"mapped\",[112]],[[119954,119954],\"mapped\",[113]],[[119955,119955],\"mapped\",[114]],[[119956,119956],\"mapped\",[115]],[[119957,119957],\"mapped\",[116]],[[119958,119958],\"mapped\",[117]],[[119959,119959],\"mapped\",[118]],[[119960,119960],\"mapped\",[119]],[[119961,119961],\"mapped\",[120]],[[119962,119962],\"mapped\",[121]],[[119963,119963],\"mapped\",[122]],[[119964,119964],\"mapped\",[97]],[[119965,119965],\"disallowed\"],[[119966,119966],\"mapped\",[99]],[[119967,119967],\"mapped\",[100]],[[119968,119969],\"disallowed\"],[[119970,119970],\"mapped\",[103]],[[119971,119972],\"disallowed\"],[[119973,119973],\"mapped\",[106]],[[119974,119974],\"mapped\",[107]],[[119975,119976],\"disallowed\"],[[119977,119977],\"mapped\",[110]],[[119978,119978],\"mapped\",[111]],[[119979,119979],\"mapped\",[112]],[[119980,119980],\"mapped\",[113]],[[119981,119981],\"disallowed\"],[[119982,119982],\"mapped\",[115]],[[119983,119983],\"mapped\",[116]],[[119984,119984],\"mapped\",[117]],[[119985,119985],\"mapped\",[118]],[[119986,119986],\"mapped\",[119]],[[119987,119987],\"mapped\",[120]],[[119988,119988],\"mapped\",[121]],[[119989,119989],\"mapped\",[122]],[[119990,119990],\"mapped\",[97]],[[119991,119991],\"mapped\",[98]],[[119992,119992],\"mapped\",[99]],[[119993,119993],\"mapped\",[100]],[[119994,119994],\"disallowed\"],[[119995,119995],\"mapped\",[102]],[[119996,119996],\"disallowed\"],[[119997,119997],\"mapped\",[104]],[[119998,119998],\"mapped\",[105]],[[119999,119999],\"mapped\",[106]],[[120000,120000],\"mapped\",[107]],[[120001,120001],\"mapped\",[108]],[[120002,120002],\"mapped\",[109]],[[120003,120003],\"mapped\",[110]],[[120004,120004],\"disallowed\"],[[120005,120005],\"mapped\",[112]],[[120006,120006],\"mapped\",[113]],[[120007,120007],\"mapped\",[114]],[[120008,120008],\"mapped\",[115]],[[120009,120009],\"mapped\",[116]],[[120010,120010],\"mapped\",[117]],[[120011,120011],\"mapped\",[118]],[[120012,120012],\"mapped\",[119]],[[120013,120013],\"mapped\",[120]],[[120014,120014],\"mapped\",[121]],[[120015,120015],\"mapped\",[122]],[[120016,120016],\"mapped\",[97]],[[120017,120017],\"mapped\",[98]],[[120018,120018],\"mapped\",[99]],[[120019,120019],\"mapped\",[100]],[[120020,120020],\"mapped\",[101]],[[120021,120021],\"mapped\",[102]],[[120022,120022],\"mapped\",[103]],[[120023,120023],\"mapped\",[104]],[[120024,120024],\"mapped\",[105]],[[120025,120025],\"mapped\",[106]],[[120026,120026],\"mapped\",[107]],[[120027,120027],\"mapped\",[108]],[[120028,120028],\"mapped\",[109]],[[120029,120029],\"mapped\",[110]],[[120030,120030],\"mapped\",[111]],[[120031,120031],\"mapped\",[112]],[[120032,120032],\"mapped\",[113]],[[120033,120033],\"mapped\",[114]],[[120034,120034],\"mapped\",[115]],[[120035,120035],\"mapped\",[116]],[[120036,120036],\"mapped\",[117]],[[120037,120037],\"mapped\",[118]],[[120038,120038],\"mapped\",[119]],[[120039,120039],\"mapped\",[120]],[[120040,120040],\"mapped\",[121]],[[120041,120041],\"mapped\",[122]],[[120042,120042],\"mapped\",[97]],[[120043,120043],\"mapped\",[98]],[[120044,120044],\"mapped\",[99]],[[120045,120045],\"mapped\",[100]],[[120046,120046],\"mapped\",[101]],[[120047,120047],\"mapped\",[102]],[[120048,120048],\"mapped\",[103]],[[120049,120049],\"mapped\",[104]],[[120050,120050],\"mapped\",[105]],[[120051,120051],\"mapped\",[106]],[[120052,120052],\"mapped\",[107]],[[120053,120053],\"mapped\",[108]],[[120054,120054],\"mapped\",[109]],[[120055,120055],\"mapped\",[110]],[[120056,120056],\"mapped\",[111]],[[120057,120057],\"mapped\",[112]],[[120058,120058],\"mapped\",[113]],[[120059,120059],\"mapped\",[114]],[[120060,120060],\"mapped\",[115]],[[120061,120061],\"mapped\",[116]],[[120062,120062],\"mapped\",[117]],[[120063,120063],\"mapped\",[118]],[[120064,120064],\"mapped\",[119]],[[120065,120065],\"mapped\",[120]],[[120066,120066],\"mapped\",[121]],[[120067,120067],\"mapped\",[122]],[[120068,120068],\"mapped\",[97]],[[120069,120069],\"mapped\",[98]],[[120070,120070],\"disallowed\"],[[120071,120071],\"mapped\",[100]],[[120072,120072],\"mapped\",[101]],[[120073,120073],\"mapped\",[102]],[[120074,120074],\"mapped\",[103]],[[120075,120076],\"disallowed\"],[[120077,120077],\"mapped\",[106]],[[120078,120078],\"mapped\",[107]],[[120079,120079],\"mapped\",[108]],[[120080,120080],\"mapped\",[109]],[[120081,120081],\"mapped\",[110]],[[120082,120082],\"mapped\",[111]],[[120083,120083],\"mapped\",[112]],[[120084,120084],\"mapped\",[113]],[[120085,120085],\"disallowed\"],[[120086,120086],\"mapped\",[115]],[[120087,120087],\"mapped\",[116]],[[120088,120088],\"mapped\",[117]],[[120089,120089],\"mapped\",[118]],[[120090,120090],\"mapped\",[119]],[[120091,120091],\"mapped\",[120]],[[120092,120092],\"mapped\",[121]],[[120093,120093],\"disallowed\"],[[120094,120094],\"mapped\",[97]],[[120095,120095],\"mapped\",[98]],[[120096,120096],\"mapped\",[99]],[[120097,120097],\"mapped\",[100]],[[120098,120098],\"mapped\",[101]],[[120099,120099],\"mapped\",[102]],[[120100,120100],\"mapped\",[103]],[[120101,120101],\"mapped\",[104]],[[120102,120102],\"mapped\",[105]],[[120103,120103],\"mapped\",[106]],[[120104,120104],\"mapped\",[107]],[[120105,120105],\"mapped\",[108]],[[120106,120106],\"mapped\",[109]],[[120107,120107],\"mapped\",[110]],[[120108,120108],\"mapped\",[111]],[[120109,120109],\"mapped\",[112]],[[120110,120110],\"mapped\",[113]],[[120111,120111],\"mapped\",[114]],[[120112,120112],\"mapped\",[115]],[[120113,120113],\"mapped\",[116]],[[120114,120114],\"mapped\",[117]],[[120115,120115],\"mapped\",[118]],[[120116,120116],\"mapped\",[119]],[[120117,120117],\"mapped\",[120]],[[120118,120118],\"mapped\",[121]],[[120119,120119],\"mapped\",[122]],[[120120,120120],\"mapped\",[97]],[[120121,120121],\"mapped\",[98]],[[120122,120122],\"disallowed\"],[[120123,120123],\"mapped\",[100]],[[120124,120124],\"mapped\",[101]],[[120125,120125],\"mapped\",[102]],[[120126,120126],\"mapped\",[103]],[[120127,120127],\"disallowed\"],[[120128,120128],\"mapped\",[105]],[[120129,120129],\"mapped\",[106]],[[120130,120130],\"mapped\",[107]],[[120131,120131],\"mapped\",[108]],[[120132,120132],\"mapped\",[109]],[[120133,120133],\"disallowed\"],[[120134,120134],\"mapped\",[111]],[[120135,120137],\"disallowed\"],[[120138,120138],\"mapped\",[115]],[[120139,120139],\"mapped\",[116]],[[120140,120140],\"mapped\",[117]],[[120141,120141],\"mapped\",[118]],[[120142,120142],\"mapped\",[119]],[[120143,120143],\"mapped\",[120]],[[120144,120144],\"mapped\",[121]],[[120145,120145],\"disallowed\"],[[120146,120146],\"mapped\",[97]],[[120147,120147],\"mapped\",[98]],[[120148,120148],\"mapped\",[99]],[[120149,120149],\"mapped\",[100]],[[120150,120150],\"mapped\",[101]],[[120151,120151],\"mapped\",[102]],[[120152,120152],\"mapped\",[103]],[[120153,120153],\"mapped\",[104]],[[120154,120154],\"mapped\",[105]],[[120155,120155],\"mapped\",[106]],[[120156,120156],\"mapped\",[107]],[[120157,120157],\"mapped\",[108]],[[120158,120158],\"mapped\",[109]],[[120159,120159],\"mapped\",[110]],[[120160,120160],\"mapped\",[111]],[[120161,120161],\"mapped\",[112]],[[120162,120162],\"mapped\",[113]],[[120163,120163],\"mapped\",[114]],[[120164,120164],\"mapped\",[115]],[[120165,120165],\"mapped\",[116]],[[120166,120166],\"mapped\",[117]],[[120167,120167],\"mapped\",[118]],[[120168,120168],\"mapped\",[119]],[[120169,120169],\"mapped\",[120]],[[120170,120170],\"mapped\",[121]],[[120171,120171],\"mapped\",[122]],[[120172,120172],\"mapped\",[97]],[[120173,120173],\"mapped\",[98]],[[120174,120174],\"mapped\",[99]],[[120175,120175],\"mapped\",[100]],[[120176,120176],\"mapped\",[101]],[[120177,120177],\"mapped\",[102]],[[120178,120178],\"mapped\",[103]],[[120179,120179],\"mapped\",[104]],[[120180,120180],\"mapped\",[105]],[[120181,120181],\"mapped\",[106]],[[120182,120182],\"mapped\",[107]],[[120183,120183],\"mapped\",[108]],[[120184,120184],\"mapped\",[109]],[[120185,120185],\"mapped\",[110]],[[120186,120186],\"mapped\",[111]],[[120187,120187],\"mapped\",[112]],[[120188,120188],\"mapped\",[113]],[[120189,120189],\"mapped\",[114]],[[120190,120190],\"mapped\",[115]],[[120191,120191],\"mapped\",[116]],[[120192,120192],\"mapped\",[117]],[[120193,120193],\"mapped\",[118]],[[120194,120194],\"mapped\",[119]],[[120195,120195],\"mapped\",[120]],[[120196,120196],\"mapped\",[121]],[[120197,120197],\"mapped\",[122]],[[120198,120198],\"mapped\",[97]],[[120199,120199],\"mapped\",[98]],[[120200,120200],\"mapped\",[99]],[[120201,120201],\"mapped\",[100]],[[120202,120202],\"mapped\",[101]],[[120203,120203],\"mapped\",[102]],[[120204,120204],\"mapped\",[103]],[[120205,120205],\"mapped\",[104]],[[120206,120206],\"mapped\",[105]],[[120207,120207],\"mapped\",[106]],[[120208,120208],\"mapped\",[107]],[[120209,120209],\"mapped\",[108]],[[120210,120210],\"mapped\",[109]],[[120211,120211],\"mapped\",[110]],[[120212,120212],\"mapped\",[111]],[[120213,120213],\"mapped\",[112]],[[120214,120214],\"mapped\",[113]],[[120215,120215],\"mapped\",[114]],[[120216,120216],\"mapped\",[115]],[[120217,120217],\"mapped\",[116]],[[120218,120218],\"mapped\",[117]],[[120219,120219],\"mapped\",[118]],[[120220,120220],\"mapped\",[119]],[[120221,120221],\"mapped\",[120]],[[120222,120222],\"mapped\",[121]],[[120223,120223],\"mapped\",[122]],[[120224,120224],\"mapped\",[97]],[[120225,120225],\"mapped\",[98]],[[120226,120226],\"mapped\",[99]],[[120227,120227],\"mapped\",[100]],[[120228,120228],\"mapped\",[101]],[[120229,120229],\"mapped\",[102]],[[120230,120230],\"mapped\",[103]],[[120231,120231],\"mapped\",[104]],[[120232,120232],\"mapped\",[105]],[[120233,120233],\"mapped\",[106]],[[120234,120234],\"mapped\",[107]],[[120235,120235],\"mapped\",[108]],[[120236,120236],\"mapped\",[109]],[[120237,120237],\"mapped\",[110]],[[120238,120238],\"mapped\",[111]],[[120239,120239],\"mapped\",[112]],[[120240,120240],\"mapped\",[113]],[[120241,120241],\"mapped\",[114]],[[120242,120242],\"mapped\",[115]],[[120243,120243],\"mapped\",[116]],[[120244,120244],\"mapped\",[117]],[[120245,120245],\"mapped\",[118]],[[120246,120246],\"mapped\",[119]],[[120247,120247],\"mapped\",[120]],[[120248,120248],\"mapped\",[121]],[[120249,120249],\"mapped\",[122]],[[120250,120250],\"mapped\",[97]],[[120251,120251],\"mapped\",[98]],[[120252,120252],\"mapped\",[99]],[[120253,120253],\"mapped\",[100]],[[120254,120254],\"mapped\",[101]],[[120255,120255],\"mapped\",[102]],[[120256,120256],\"mapped\",[103]],[[120257,120257],\"mapped\",[104]],[[120258,120258],\"mapped\",[105]],[[120259,120259],\"mapped\",[106]],[[120260,120260],\"mapped\",[107]],[[120261,120261],\"mapped\",[108]],[[120262,120262],\"mapped\",[109]],[[120263,120263],\"mapped\",[110]],[[120264,120264],\"mapped\",[111]],[[120265,120265],\"mapped\",[112]],[[120266,120266],\"mapped\",[113]],[[120267,120267],\"mapped\",[114]],[[120268,120268],\"mapped\",[115]],[[120269,120269],\"mapped\",[116]],[[120270,120270],\"mapped\",[117]],[[120271,120271],\"mapped\",[118]],[[120272,120272],\"mapped\",[119]],[[120273,120273],\"mapped\",[120]],[[120274,120274],\"mapped\",[121]],[[120275,120275],\"mapped\",[122]],[[120276,120276],\"mapped\",[97]],[[120277,120277],\"mapped\",[98]],[[120278,120278],\"mapped\",[99]],[[120279,120279],\"mapped\",[100]],[[120280,120280],\"mapped\",[101]],[[120281,120281],\"mapped\",[102]],[[120282,120282],\"mapped\",[103]],[[120283,120283],\"mapped\",[104]],[[120284,120284],\"mapped\",[105]],[[120285,120285],\"mapped\",[106]],[[120286,120286],\"mapped\",[107]],[[120287,120287],\"mapped\",[108]],[[120288,120288],\"mapped\",[109]],[[120289,120289],\"mapped\",[110]],[[120290,120290],\"mapped\",[111]],[[120291,120291],\"mapped\",[112]],[[120292,120292],\"mapped\",[113]],[[120293,120293],\"mapped\",[114]],[[120294,120294],\"mapped\",[115]],[[120295,120295],\"mapped\",[116]],[[120296,120296],\"mapped\",[117]],[[120297,120297],\"mapped\",[118]],[[120298,120298],\"mapped\",[119]],[[120299,120299],\"mapped\",[120]],[[120300,120300],\"mapped\",[121]],[[120301,120301],\"mapped\",[122]],[[120302,120302],\"mapped\",[97]],[[120303,120303],\"mapped\",[98]],[[120304,120304],\"mapped\",[99]],[[120305,120305],\"mapped\",[100]],[[120306,120306],\"mapped\",[101]],[[120307,120307],\"mapped\",[102]],[[120308,120308],\"mapped\",[103]],[[120309,120309],\"mapped\",[104]],[[120310,120310],\"mapped\",[105]],[[120311,120311],\"mapped\",[106]],[[120312,120312],\"mapped\",[107]],[[120313,120313],\"mapped\",[108]],[[120314,120314],\"mapped\",[109]],[[120315,120315],\"mapped\",[110]],[[120316,120316],\"mapped\",[111]],[[120317,120317],\"mapped\",[112]],[[120318,120318],\"mapped\",[113]],[[120319,120319],\"mapped\",[114]],[[120320,120320],\"mapped\",[115]],[[120321,120321],\"mapped\",[116]],[[120322,120322],\"mapped\",[117]],[[120323,120323],\"mapped\",[118]],[[120324,120324],\"mapped\",[119]],[[120325,120325],\"mapped\",[120]],[[120326,120326],\"mapped\",[121]],[[120327,120327],\"mapped\",[122]],[[120328,120328],\"mapped\",[97]],[[120329,120329],\"mapped\",[98]],[[120330,120330],\"mapped\",[99]],[[120331,120331],\"mapped\",[100]],[[120332,120332],\"mapped\",[101]],[[120333,120333],\"mapped\",[102]],[[120334,120334],\"mapped\",[103]],[[120335,120335],\"mapped\",[104]],[[120336,120336],\"mapped\",[105]],[[120337,120337],\"mapped\",[106]],[[120338,120338],\"mapped\",[107]],[[120339,120339],\"mapped\",[108]],[[120340,120340],\"mapped\",[109]],[[120341,120341],\"mapped\",[110]],[[120342,120342],\"mapped\",[111]],[[120343,120343],\"mapped\",[112]],[[120344,120344],\"mapped\",[113]],[[120345,120345],\"mapped\",[114]],[[120346,120346],\"mapped\",[115]],[[120347,120347],\"mapped\",[116]],[[120348,120348],\"mapped\",[117]],[[120349,120349],\"mapped\",[118]],[[120350,120350],\"mapped\",[119]],[[120351,120351],\"mapped\",[120]],[[120352,120352],\"mapped\",[121]],[[120353,120353],\"mapped\",[122]],[[120354,120354],\"mapped\",[97]],[[120355,120355],\"mapped\",[98]],[[120356,120356],\"mapped\",[99]],[[120357,120357],\"mapped\",[100]],[[120358,120358],\"mapped\",[101]],[[120359,120359],\"mapped\",[102]],[[120360,120360],\"mapped\",[103]],[[120361,120361],\"mapped\",[104]],[[120362,120362],\"mapped\",[105]],[[120363,120363],\"mapped\",[106]],[[120364,120364],\"mapped\",[107]],[[120365,120365],\"mapped\",[108]],[[120366,120366],\"mapped\",[109]],[[120367,120367],\"mapped\",[110]],[[120368,120368],\"mapped\",[111]],[[120369,120369],\"mapped\",[112]],[[120370,120370],\"mapped\",[113]],[[120371,120371],\"mapped\",[114]],[[120372,120372],\"mapped\",[115]],[[120373,120373],\"mapped\",[116]],[[120374,120374],\"mapped\",[117]],[[120375,120375],\"mapped\",[118]],[[120376,120376],\"mapped\",[119]],[[120377,120377],\"mapped\",[120]],[[120378,120378],\"mapped\",[121]],[[120379,120379],\"mapped\",[122]],[[120380,120380],\"mapped\",[97]],[[120381,120381],\"mapped\",[98]],[[120382,120382],\"mapped\",[99]],[[120383,120383],\"mapped\",[100]],[[120384,120384],\"mapped\",[101]],[[120385,120385],\"mapped\",[102]],[[120386,120386],\"mapped\",[103]],[[120387,120387],\"mapped\",[104]],[[120388,120388],\"mapped\",[105]],[[120389,120389],\"mapped\",[106]],[[120390,120390],\"mapped\",[107]],[[120391,120391],\"mapped\",[108]],[[120392,120392],\"mapped\",[109]],[[120393,120393],\"mapped\",[110]],[[120394,120394],\"mapped\",[111]],[[120395,120395],\"mapped\",[112]],[[120396,120396],\"mapped\",[113]],[[120397,120397],\"mapped\",[114]],[[120398,120398],\"mapped\",[115]],[[120399,120399],\"mapped\",[116]],[[120400,120400],\"mapped\",[117]],[[120401,120401],\"mapped\",[118]],[[120402,120402],\"mapped\",[119]],[[120403,120403],\"mapped\",[120]],[[120404,120404],\"mapped\",[121]],[[120405,120405],\"mapped\",[122]],[[120406,120406],\"mapped\",[97]],[[120407,120407],\"mapped\",[98]],[[120408,120408],\"mapped\",[99]],[[120409,120409],\"mapped\",[100]],[[120410,120410],\"mapped\",[101]],[[120411,120411],\"mapped\",[102]],[[120412,120412],\"mapped\",[103]],[[120413,120413],\"mapped\",[104]],[[120414,120414],\"mapped\",[105]],[[120415,120415],\"mapped\",[106]],[[120416,120416],\"mapped\",[107]],[[120417,120417],\"mapped\",[108]],[[120418,120418],\"mapped\",[109]],[[120419,120419],\"mapped\",[110]],[[120420,120420],\"mapped\",[111]],[[120421,120421],\"mapped\",[112]],[[120422,120422],\"mapped\",[113]],[[120423,120423],\"mapped\",[114]],[[120424,120424],\"mapped\",[115]],[[120425,120425],\"mapped\",[116]],[[120426,120426],\"mapped\",[117]],[[120427,120427],\"mapped\",[118]],[[120428,120428],\"mapped\",[119]],[[120429,120429],\"mapped\",[120]],[[120430,120430],\"mapped\",[121]],[[120431,120431],\"mapped\",[122]],[[120432,120432],\"mapped\",[97]],[[120433,120433],\"mapped\",[98]],[[120434,120434],\"mapped\",[99]],[[120435,120435],\"mapped\",[100]],[[120436,120436],\"mapped\",[101]],[[120437,120437],\"mapped\",[102]],[[120438,120438],\"mapped\",[103]],[[120439,120439],\"mapped\",[104]],[[120440,120440],\"mapped\",[105]],[[120441,120441],\"mapped\",[106]],[[120442,120442],\"mapped\",[107]],[[120443,120443],\"mapped\",[108]],[[120444,120444],\"mapped\",[109]],[[120445,120445],\"mapped\",[110]],[[120446,120446],\"mapped\",[111]],[[120447,120447],\"mapped\",[112]],[[120448,120448],\"mapped\",[113]],[[120449,120449],\"mapped\",[114]],[[120450,120450],\"mapped\",[115]],[[120451,120451],\"mapped\",[116]],[[120452,120452],\"mapped\",[117]],[[120453,120453],\"mapped\",[118]],[[120454,120454],\"mapped\",[119]],[[120455,120455],\"mapped\",[120]],[[120456,120456],\"mapped\",[121]],[[120457,120457],\"mapped\",[122]],[[120458,120458],\"mapped\",[97]],[[120459,120459],\"mapped\",[98]],[[120460,120460],\"mapped\",[99]],[[120461,120461],\"mapped\",[100]],[[120462,120462],\"mapped\",[101]],[[120463,120463],\"mapped\",[102]],[[120464,120464],\"mapped\",[103]],[[120465,120465],\"mapped\",[104]],[[120466,120466],\"mapped\",[105]],[[120467,120467],\"mapped\",[106]],[[120468,120468],\"mapped\",[107]],[[120469,120469],\"mapped\",[108]],[[120470,120470],\"mapped\",[109]],[[120471,120471],\"mapped\",[110]],[[120472,120472],\"mapped\",[111]],[[120473,120473],\"mapped\",[112]],[[120474,120474],\"mapped\",[113]],[[120475,120475],\"mapped\",[114]],[[120476,120476],\"mapped\",[115]],[[120477,120477],\"mapped\",[116]],[[120478,120478],\"mapped\",[117]],[[120479,120479],\"mapped\",[118]],[[120480,120480],\"mapped\",[119]],[[120481,120481],\"mapped\",[120]],[[120482,120482],\"mapped\",[121]],[[120483,120483],\"mapped\",[122]],[[120484,120484],\"mapped\",[305]],[[120485,120485],\"mapped\",[567]],[[120486,120487],\"disallowed\"],[[120488,120488],\"mapped\",[945]],[[120489,120489],\"mapped\",[946]],[[120490,120490],\"mapped\",[947]],[[120491,120491],\"mapped\",[948]],[[120492,120492],\"mapped\",[949]],[[120493,120493],\"mapped\",[950]],[[120494,120494],\"mapped\",[951]],[[120495,120495],\"mapped\",[952]],[[120496,120496],\"mapped\",[953]],[[120497,120497],\"mapped\",[954]],[[120498,120498],\"mapped\",[955]],[[120499,120499],\"mapped\",[956]],[[120500,120500],\"mapped\",[957]],[[120501,120501],\"mapped\",[958]],[[120502,120502],\"mapped\",[959]],[[120503,120503],\"mapped\",[960]],[[120504,120504],\"mapped\",[961]],[[120505,120505],\"mapped\",[952]],[[120506,120506],\"mapped\",[963]],[[120507,120507],\"mapped\",[964]],[[120508,120508],\"mapped\",[965]],[[120509,120509],\"mapped\",[966]],[[120510,120510],\"mapped\",[967]],[[120511,120511],\"mapped\",[968]],[[120512,120512],\"mapped\",[969]],[[120513,120513],\"mapped\",[8711]],[[120514,120514],\"mapped\",[945]],[[120515,120515],\"mapped\",[946]],[[120516,120516],\"mapped\",[947]],[[120517,120517],\"mapped\",[948]],[[120518,120518],\"mapped\",[949]],[[120519,120519],\"mapped\",[950]],[[120520,120520],\"mapped\",[951]],[[120521,120521],\"mapped\",[952]],[[120522,120522],\"mapped\",[953]],[[120523,120523],\"mapped\",[954]],[[120524,120524],\"mapped\",[955]],[[120525,120525],\"mapped\",[956]],[[120526,120526],\"mapped\",[957]],[[120527,120527],\"mapped\",[958]],[[120528,120528],\"mapped\",[959]],[[120529,120529],\"mapped\",[960]],[[120530,120530],\"mapped\",[961]],[[120531,120532],\"mapped\",[963]],[[120533,120533],\"mapped\",[964]],[[120534,120534],\"mapped\",[965]],[[120535,120535],\"mapped\",[966]],[[120536,120536],\"mapped\",[967]],[[120537,120537],\"mapped\",[968]],[[120538,120538],\"mapped\",[969]],[[120539,120539],\"mapped\",[8706]],[[120540,120540],\"mapped\",[949]],[[120541,120541],\"mapped\",[952]],[[120542,120542],\"mapped\",[954]],[[120543,120543],\"mapped\",[966]],[[120544,120544],\"mapped\",[961]],[[120545,120545],\"mapped\",[960]],[[120546,120546],\"mapped\",[945]],[[120547,120547],\"mapped\",[946]],[[120548,120548],\"mapped\",[947]],[[120549,120549],\"mapped\",[948]],[[120550,120550],\"mapped\",[949]],[[120551,120551],\"mapped\",[950]],[[120552,120552],\"mapped\",[951]],[[120553,120553],\"mapped\",[952]],[[120554,120554],\"mapped\",[953]],[[120555,120555],\"mapped\",[954]],[[120556,120556],\"mapped\",[955]],[[120557,120557],\"mapped\",[956]],[[120558,120558],\"mapped\",[957]],[[120559,120559],\"mapped\",[958]],[[120560,120560],\"mapped\",[959]],[[120561,120561],\"mapped\",[960]],[[120562,120562],\"mapped\",[961]],[[120563,120563],\"mapped\",[952]],[[120564,120564],\"mapped\",[963]],[[120565,120565],\"mapped\",[964]],[[120566,120566],\"mapped\",[965]],[[120567,120567],\"mapped\",[966]],[[120568,120568],\"mapped\",[967]],[[120569,120569],\"mapped\",[968]],[[120570,120570],\"mapped\",[969]],[[120571,120571],\"mapped\",[8711]],[[120572,120572],\"mapped\",[945]],[[120573,120573],\"mapped\",[946]],[[120574,120574],\"mapped\",[947]],[[120575,120575],\"mapped\",[948]],[[120576,120576],\"mapped\",[949]],[[120577,120577],\"mapped\",[950]],[[120578,120578],\"mapped\",[951]],[[120579,120579],\"mapped\",[952]],[[120580,120580],\"mapped\",[953]],[[120581,120581],\"mapped\",[954]],[[120582,120582],\"mapped\",[955]],[[120583,120583],\"mapped\",[956]],[[120584,120584],\"mapped\",[957]],[[120585,120585],\"mapped\",[958]],[[120586,120586],\"mapped\",[959]],[[120587,120587],\"mapped\",[960]],[[120588,120588],\"mapped\",[961]],[[120589,120590],\"mapped\",[963]],[[120591,120591],\"mapped\",[964]],[[120592,120592],\"mapped\",[965]],[[120593,120593],\"mapped\",[966]],[[120594,120594],\"mapped\",[967]],[[120595,120595],\"mapped\",[968]],[[120596,120596],\"mapped\",[969]],[[120597,120597],\"mapped\",[8706]],[[120598,120598],\"mapped\",[949]],[[120599,120599],\"mapped\",[952]],[[120600,120600],\"mapped\",[954]],[[120601,120601],\"mapped\",[966]],[[120602,120602],\"mapped\",[961]],[[120603,120603],\"mapped\",[960]],[[120604,120604],\"mapped\",[945]],[[120605,120605],\"mapped\",[946]],[[120606,120606],\"mapped\",[947]],[[120607,120607],\"mapped\",[948]],[[120608,120608],\"mapped\",[949]],[[120609,120609],\"mapped\",[950]],[[120610,120610],\"mapped\",[951]],[[120611,120611],\"mapped\",[952]],[[120612,120612],\"mapped\",[953]],[[120613,120613],\"mapped\",[954]],[[120614,120614],\"mapped\",[955]],[[120615,120615],\"mapped\",[956]],[[120616,120616],\"mapped\",[957]],[[120617,120617],\"mapped\",[958]],[[120618,120618],\"mapped\",[959]],[[120619,120619],\"mapped\",[960]],[[120620,120620],\"mapped\",[961]],[[120621,120621],\"mapped\",[952]],[[120622,120622],\"mapped\",[963]],[[120623,120623],\"mapped\",[964]],[[120624,120624],\"mapped\",[965]],[[120625,120625],\"mapped\",[966]],[[120626,120626],\"mapped\",[967]],[[120627,120627],\"mapped\",[968]],[[120628,120628],\"mapped\",[969]],[[120629,120629],\"mapped\",[8711]],[[120630,120630],\"mapped\",[945]],[[120631,120631],\"mapped\",[946]],[[120632,120632],\"mapped\",[947]],[[120633,120633],\"mapped\",[948]],[[120634,120634],\"mapped\",[949]],[[120635,120635],\"mapped\",[950]],[[120636,120636],\"mapped\",[951]],[[120637,120637],\"mapped\",[952]],[[120638,120638],\"mapped\",[953]],[[120639,120639],\"mapped\",[954]],[[120640,120640],\"mapped\",[955]],[[120641,120641],\"mapped\",[956]],[[120642,120642],\"mapped\",[957]],[[120643,120643],\"mapped\",[958]],[[120644,120644],\"mapped\",[959]],[[120645,120645],\"mapped\",[960]],[[120646,120646],\"mapped\",[961]],[[120647,120648],\"mapped\",[963]],[[120649,120649],\"mapped\",[964]],[[120650,120650],\"mapped\",[965]],[[120651,120651],\"mapped\",[966]],[[120652,120652],\"mapped\",[967]],[[120653,120653],\"mapped\",[968]],[[120654,120654],\"mapped\",[969]],[[120655,120655],\"mapped\",[8706]],[[120656,120656],\"mapped\",[949]],[[120657,120657],\"mapped\",[952]],[[120658,120658],\"mapped\",[954]],[[120659,120659],\"mapped\",[966]],[[120660,120660],\"mapped\",[961]],[[120661,120661],\"mapped\",[960]],[[120662,120662],\"mapped\",[945]],[[120663,120663],\"mapped\",[946]],[[120664,120664],\"mapped\",[947]],[[120665,120665],\"mapped\",[948]],[[120666,120666],\"mapped\",[949]],[[120667,120667],\"mapped\",[950]],[[120668,120668],\"mapped\",[951]],[[120669,120669],\"mapped\",[952]],[[120670,120670],\"mapped\",[953]],[[120671,120671],\"mapped\",[954]],[[120672,120672],\"mapped\",[955]],[[120673,120673],\"mapped\",[956]],[[120674,120674],\"mapped\",[957]],[[120675,120675],\"mapped\",[958]],[[120676,120676],\"mapped\",[959]],[[120677,120677],\"mapped\",[960]],[[120678,120678],\"mapped\",[961]],[[120679,120679],\"mapped\",[952]],[[120680,120680],\"mapped\",[963]],[[120681,120681],\"mapped\",[964]],[[120682,120682],\"mapped\",[965]],[[120683,120683],\"mapped\",[966]],[[120684,120684],\"mapped\",[967]],[[120685,120685],\"mapped\",[968]],[[120686,120686],\"mapped\",[969]],[[120687,120687],\"mapped\",[8711]],[[120688,120688],\"mapped\",[945]],[[120689,120689],\"mapped\",[946]],[[120690,120690],\"mapped\",[947]],[[120691,120691],\"mapped\",[948]],[[120692,120692],\"mapped\",[949]],[[120693,120693],\"mapped\",[950]],[[120694,120694],\"mapped\",[951]],[[120695,120695],\"mapped\",[952]],[[120696,120696],\"mapped\",[953]],[[120697,120697],\"mapped\",[954]],[[120698,120698],\"mapped\",[955]],[[120699,120699],\"mapped\",[956]],[[120700,120700],\"mapped\",[957]],[[120701,120701],\"mapped\",[958]],[[120702,120702],\"mapped\",[959]],[[120703,120703],\"mapped\",[960]],[[120704,120704],\"mapped\",[961]],[[120705,120706],\"mapped\",[963]],[[120707,120707],\"mapped\",[964]],[[120708,120708],\"mapped\",[965]],[[120709,120709],\"mapped\",[966]],[[120710,120710],\"mapped\",[967]],[[120711,120711],\"mapped\",[968]],[[120712,120712],\"mapped\",[969]],[[120713,120713],\"mapped\",[8706]],[[120714,120714],\"mapped\",[949]],[[120715,120715],\"mapped\",[952]],[[120716,120716],\"mapped\",[954]],[[120717,120717],\"mapped\",[966]],[[120718,120718],\"mapped\",[961]],[[120719,120719],\"mapped\",[960]],[[120720,120720],\"mapped\",[945]],[[120721,120721],\"mapped\",[946]],[[120722,120722],\"mapped\",[947]],[[120723,120723],\"mapped\",[948]],[[120724,120724],\"mapped\",[949]],[[120725,120725],\"mapped\",[950]],[[120726,120726],\"mapped\",[951]],[[120727,120727],\"mapped\",[952]],[[120728,120728],\"mapped\",[953]],[[120729,120729],\"mapped\",[954]],[[120730,120730],\"mapped\",[955]],[[120731,120731],\"mapped\",[956]],[[120732,120732],\"mapped\",[957]],[[120733,120733],\"mapped\",[958]],[[120734,120734],\"mapped\",[959]],[[120735,120735],\"mapped\",[960]],[[120736,120736],\"mapped\",[961]],[[120737,120737],\"mapped\",[952]],[[120738,120738],\"mapped\",[963]],[[120739,120739],\"mapped\",[964]],[[120740,120740],\"mapped\",[965]],[[120741,120741],\"mapped\",[966]],[[120742,120742],\"mapped\",[967]],[[120743,120743],\"mapped\",[968]],[[120744,120744],\"mapped\",[969]],[[120745,120745],\"mapped\",[8711]],[[120746,120746],\"mapped\",[945]],[[120747,120747],\"mapped\",[946]],[[120748,120748],\"mapped\",[947]],[[120749,120749],\"mapped\",[948]],[[120750,120750],\"mapped\",[949]],[[120751,120751],\"mapped\",[950]],[[120752,120752],\"mapped\",[951]],[[120753,120753],\"mapped\",[952]],[[120754,120754],\"mapped\",[953]],[[120755,120755],\"mapped\",[954]],[[120756,120756],\"mapped\",[955]],[[120757,120757],\"mapped\",[956]],[[120758,120758],\"mapped\",[957]],[[120759,120759],\"mapped\",[958]],[[120760,120760],\"mapped\",[959]],[[120761,120761],\"mapped\",[960]],[[120762,120762],\"mapped\",[961]],[[120763,120764],\"mapped\",[963]],[[120765,120765],\"mapped\",[964]],[[120766,120766],\"mapped\",[965]],[[120767,120767],\"mapped\",[966]],[[120768,120768],\"mapped\",[967]],[[120769,120769],\"mapped\",[968]],[[120770,120770],\"mapped\",[969]],[[120771,120771],\"mapped\",[8706]],[[120772,120772],\"mapped\",[949]],[[120773,120773],\"mapped\",[952]],[[120774,120774],\"mapped\",[954]],[[120775,120775],\"mapped\",[966]],[[120776,120776],\"mapped\",[961]],[[120777,120777],\"mapped\",[960]],[[120778,120779],\"mapped\",[989]],[[120780,120781],\"disallowed\"],[[120782,120782],\"mapped\",[48]],[[120783,120783],\"mapped\",[49]],[[120784,120784],\"mapped\",[50]],[[120785,120785],\"mapped\",[51]],[[120786,120786],\"mapped\",[52]],[[120787,120787],\"mapped\",[53]],[[120788,120788],\"mapped\",[54]],[[120789,120789],\"mapped\",[55]],[[120790,120790],\"mapped\",[56]],[[120791,120791],\"mapped\",[57]],[[120792,120792],\"mapped\",[48]],[[120793,120793],\"mapped\",[49]],[[120794,120794],\"mapped\",[50]],[[120795,120795],\"mapped\",[51]],[[120796,120796],\"mapped\",[52]],[[120797,120797],\"mapped\",[53]],[[120798,120798],\"mapped\",[54]],[[120799,120799],\"mapped\",[55]],[[120800,120800],\"mapped\",[56]],[[120801,120801],\"mapped\",[57]],[[120802,120802],\"mapped\",[48]],[[120803,120803],\"mapped\",[49]],[[120804,120804],\"mapped\",[50]],[[120805,120805],\"mapped\",[51]],[[120806,120806],\"mapped\",[52]],[[120807,120807],\"mapped\",[53]],[[120808,120808],\"mapped\",[54]],[[120809,120809],\"mapped\",[55]],[[120810,120810],\"mapped\",[56]],[[120811,120811],\"mapped\",[57]],[[120812,120812],\"mapped\",[48]],[[120813,120813],\"mapped\",[49]],[[120814,120814],\"mapped\",[50]],[[120815,120815],\"mapped\",[51]],[[120816,120816],\"mapped\",[52]],[[120817,120817],\"mapped\",[53]],[[120818,120818],\"mapped\",[54]],[[120819,120819],\"mapped\",[55]],[[120820,120820],\"mapped\",[56]],[[120821,120821],\"mapped\",[57]],[[120822,120822],\"mapped\",[48]],[[120823,120823],\"mapped\",[49]],[[120824,120824],\"mapped\",[50]],[[120825,120825],\"mapped\",[51]],[[120826,120826],\"mapped\",[52]],[[120827,120827],\"mapped\",[53]],[[120828,120828],\"mapped\",[54]],[[120829,120829],\"mapped\",[55]],[[120830,120830],\"mapped\",[56]],[[120831,120831],\"mapped\",[57]],[[120832,121343],\"valid\",[],\"NV8\"],[[121344,121398],\"valid\"],[[121399,121402],\"valid\",[],\"NV8\"],[[121403,121452],\"valid\"],[[121453,121460],\"valid\",[],\"NV8\"],[[121461,121461],\"valid\"],[[121462,121475],\"valid\",[],\"NV8\"],[[121476,121476],\"valid\"],[[121477,121483],\"valid\",[],\"NV8\"],[[121484,121498],\"disallowed\"],[[121499,121503],\"valid\"],[[121504,121504],\"disallowed\"],[[121505,121519],\"valid\"],[[121520,124927],\"disallowed\"],[[124928,125124],\"valid\"],[[125125,125126],\"disallowed\"],[[125127,125135],\"valid\",[],\"NV8\"],[[125136,125142],\"valid\"],[[125143,126463],\"disallowed\"],[[126464,126464],\"mapped\",[1575]],[[126465,126465],\"mapped\",[1576]],[[126466,126466],\"mapped\",[1580]],[[126467,126467],\"mapped\",[1583]],[[126468,126468],\"disallowed\"],[[126469,126469],\"mapped\",[1608]],[[126470,126470],\"mapped\",[1586]],[[126471,126471],\"mapped\",[1581]],[[126472,126472],\"mapped\",[1591]],[[126473,126473],\"mapped\",[1610]],[[126474,126474],\"mapped\",[1603]],[[126475,126475],\"mapped\",[1604]],[[126476,126476],\"mapped\",[1605]],[[126477,126477],\"mapped\",[1606]],[[126478,126478],\"mapped\",[1587]],[[126479,126479],\"mapped\",[1593]],[[126480,126480],\"mapped\",[1601]],[[126481,126481],\"mapped\",[1589]],[[126482,126482],\"mapped\",[1602]],[[126483,126483],\"mapped\",[1585]],[[126484,126484],\"mapped\",[1588]],[[126485,126485],\"mapped\",[1578]],[[126486,126486],\"mapped\",[1579]],[[126487,126487],\"mapped\",[1582]],[[126488,126488],\"mapped\",[1584]],[[126489,126489],\"mapped\",[1590]],[[126490,126490],\"mapped\",[1592]],[[126491,126491],\"mapped\",[1594]],[[126492,126492],\"mapped\",[1646]],[[126493,126493],\"mapped\",[1722]],[[126494,126494],\"mapped\",[1697]],[[126495,126495],\"mapped\",[1647]],[[126496,126496],\"disallowed\"],[[126497,126497],\"mapped\",[1576]],[[126498,126498],\"mapped\",[1580]],[[126499,126499],\"disallowed\"],[[126500,126500],\"mapped\",[1607]],[[126501,126502],\"disallowed\"],[[126503,126503],\"mapped\",[1581]],[[126504,126504],\"disallowed\"],[[126505,126505],\"mapped\",[1610]],[[126506,126506],\"mapped\",[1603]],[[126507,126507],\"mapped\",[1604]],[[126508,126508],\"mapped\",[1605]],[[126509,126509],\"mapped\",[1606]],[[126510,126510],\"mapped\",[1587]],[[126511,126511],\"mapped\",[1593]],[[126512,126512],\"mapped\",[1601]],[[126513,126513],\"mapped\",[1589]],[[126514,126514],\"mapped\",[1602]],[[126515,126515],\"disallowed\"],[[126516,126516],\"mapped\",[1588]],[[126517,126517],\"mapped\",[1578]],[[126518,126518],\"mapped\",[1579]],[[126519,126519],\"mapped\",[1582]],[[126520,126520],\"disallowed\"],[[126521,126521],\"mapped\",[1590]],[[126522,126522],\"disallowed\"],[[126523,126523],\"mapped\",[1594]],[[126524,126529],\"disallowed\"],[[126530,126530],\"mapped\",[1580]],[[126531,126534],\"disallowed\"],[[126535,126535],\"mapped\",[1581]],[[126536,126536],\"disallowed\"],[[126537,126537],\"mapped\",[1610]],[[126538,126538],\"disallowed\"],[[126539,126539],\"mapped\",[1604]],[[126540,126540],\"disallowed\"],[[126541,126541],\"mapped\",[1606]],[[126542,126542],\"mapped\",[1587]],[[126543,126543],\"mapped\",[1593]],[[126544,126544],\"disallowed\"],[[126545,126545],\"mapped\",[1589]],[[126546,126546],\"mapped\",[1602]],[[126547,126547],\"disallowed\"],[[126548,126548],\"mapped\",[1588]],[[126549,126550],\"disallowed\"],[[126551,126551],\"mapped\",[1582]],[[126552,126552],\"disallowed\"],[[126553,126553],\"mapped\",[1590]],[[126554,126554],\"disallowed\"],[[126555,126555],\"mapped\",[1594]],[[126556,126556],\"disallowed\"],[[126557,126557],\"mapped\",[1722]],[[126558,126558],\"disallowed\"],[[126559,126559],\"mapped\",[1647]],[[126560,126560],\"disallowed\"],[[126561,126561],\"mapped\",[1576]],[[126562,126562],\"mapped\",[1580]],[[126563,126563],\"disallowed\"],[[126564,126564],\"mapped\",[1607]],[[126565,126566],\"disallowed\"],[[126567,126567],\"mapped\",[1581]],[[126568,126568],\"mapped\",[1591]],[[126569,126569],\"mapped\",[1610]],[[126570,126570],\"mapped\",[1603]],[[126571,126571],\"disallowed\"],[[126572,126572],\"mapped\",[1605]],[[126573,126573],\"mapped\",[1606]],[[126574,126574],\"mapped\",[1587]],[[126575,126575],\"mapped\",[1593]],[[126576,126576],\"mapped\",[1601]],[[126577,126577],\"mapped\",[1589]],[[126578,126578],\"mapped\",[1602]],[[126579,126579],\"disallowed\"],[[126580,126580],\"mapped\",[1588]],[[126581,126581],\"mapped\",[1578]],[[126582,126582],\"mapped\",[1579]],[[126583,126583],\"mapped\",[1582]],[[126584,126584],\"disallowed\"],[[126585,126585],\"mapped\",[1590]],[[126586,126586],\"mapped\",[1592]],[[126587,126587],\"mapped\",[1594]],[[126588,126588],\"mapped\",[1646]],[[126589,126589],\"disallowed\"],[[126590,126590],\"mapped\",[1697]],[[126591,126591],\"disallowed\"],[[126592,126592],\"mapped\",[1575]],[[126593,126593],\"mapped\",[1576]],[[126594,126594],\"mapped\",[1580]],[[126595,126595],\"mapped\",[1583]],[[126596,126596],\"mapped\",[1607]],[[126597,126597],\"mapped\",[1608]],[[126598,126598],\"mapped\",[1586]],[[126599,126599],\"mapped\",[1581]],[[126600,126600],\"mapped\",[1591]],[[126601,126601],\"mapped\",[1610]],[[126602,126602],\"disallowed\"],[[126603,126603],\"mapped\",[1604]],[[126604,126604],\"mapped\",[1605]],[[126605,126605],\"mapped\",[1606]],[[126606,126606],\"mapped\",[1587]],[[126607,126607],\"mapped\",[1593]],[[126608,126608],\"mapped\",[1601]],[[126609,126609],\"mapped\",[1589]],[[126610,126610],\"mapped\",[1602]],[[126611,126611],\"mapped\",[1585]],[[126612,126612],\"mapped\",[1588]],[[126613,126613],\"mapped\",[1578]],[[126614,126614],\"mapped\",[1579]],[[126615,126615],\"mapped\",[1582]],[[126616,126616],\"mapped\",[1584]],[[126617,126617],\"mapped\",[1590]],[[126618,126618],\"mapped\",[1592]],[[126619,126619],\"mapped\",[1594]],[[126620,126624],\"disallowed\"],[[126625,126625],\"mapped\",[1576]],[[126626,126626],\"mapped\",[1580]],[[126627,126627],\"mapped\",[1583]],[[126628,126628],\"disallowed\"],[[126629,126629],\"mapped\",[1608]],[[126630,126630],\"mapped\",[1586]],[[126631,126631],\"mapped\",[1581]],[[126632,126632],\"mapped\",[1591]],[[126633,126633],\"mapped\",[1610]],[[126634,126634],\"disallowed\"],[[126635,126635],\"mapped\",[1604]],[[126636,126636],\"mapped\",[1605]],[[126637,126637],\"mapped\",[1606]],[[126638,126638],\"mapped\",[1587]],[[126639,126639],\"mapped\",[1593]],[[126640,126640],\"mapped\",[1601]],[[126641,126641],\"mapped\",[1589]],[[126642,126642],\"mapped\",[1602]],[[126643,126643],\"mapped\",[1585]],[[126644,126644],\"mapped\",[1588]],[[126645,126645],\"mapped\",[1578]],[[126646,126646],\"mapped\",[1579]],[[126647,126647],\"mapped\",[1582]],[[126648,126648],\"mapped\",[1584]],[[126649,126649],\"mapped\",[1590]],[[126650,126650],\"mapped\",[1592]],[[126651,126651],\"mapped\",[1594]],[[126652,126703],\"disallowed\"],[[126704,126705],\"valid\",[],\"NV8\"],[[126706,126975],\"disallowed\"],[[126976,127019],\"valid\",[],\"NV8\"],[[127020,127023],\"disallowed\"],[[127024,127123],\"valid\",[],\"NV8\"],[[127124,127135],\"disallowed\"],[[127136,127150],\"valid\",[],\"NV8\"],[[127151,127152],\"disallowed\"],[[127153,127166],\"valid\",[],\"NV8\"],[[127167,127167],\"valid\",[],\"NV8\"],[[127168,127168],\"disallowed\"],[[127169,127183],\"valid\",[],\"NV8\"],[[127184,127184],\"disallowed\"],[[127185,127199],\"valid\",[],\"NV8\"],[[127200,127221],\"valid\",[],\"NV8\"],[[127222,127231],\"disallowed\"],[[127232,127232],\"disallowed\"],[[127233,127233],\"disallowed_STD3_mapped\",[48,44]],[[127234,127234],\"disallowed_STD3_mapped\",[49,44]],[[127235,127235],\"disallowed_STD3_mapped\",[50,44]],[[127236,127236],\"disallowed_STD3_mapped\",[51,44]],[[127237,127237],\"disallowed_STD3_mapped\",[52,44]],[[127238,127238],\"disallowed_STD3_mapped\",[53,44]],[[127239,127239],\"disallowed_STD3_mapped\",[54,44]],[[127240,127240],\"disallowed_STD3_mapped\",[55,44]],[[127241,127241],\"disallowed_STD3_mapped\",[56,44]],[[127242,127242],\"disallowed_STD3_mapped\",[57,44]],[[127243,127244],\"valid\",[],\"NV8\"],[[127245,127247],\"disallowed\"],[[127248,127248],\"disallowed_STD3_mapped\",[40,97,41]],[[127249,127249],\"disallowed_STD3_mapped\",[40,98,41]],[[127250,127250],\"disallowed_STD3_mapped\",[40,99,41]],[[127251,127251],\"disallowed_STD3_mapped\",[40,100,41]],[[127252,127252],\"disallowed_STD3_mapped\",[40,101,41]],[[127253,127253],\"disallowed_STD3_mapped\",[40,102,41]],[[127254,127254],\"disallowed_STD3_mapped\",[40,103,41]],[[127255,127255],\"disallowed_STD3_mapped\",[40,104,41]],[[127256,127256],\"disallowed_STD3_mapped\",[40,105,41]],[[127257,127257],\"disallowed_STD3_mapped\",[40,106,41]],[[127258,127258],\"disallowed_STD3_mapped\",[40,107,41]],[[127259,127259],\"disallowed_STD3_mapped\",[40,108,41]],[[127260,127260],\"disallowed_STD3_mapped\",[40,109,41]],[[127261,127261],\"disallowed_STD3_mapped\",[40,110,41]],[[127262,127262],\"disallowed_STD3_mapped\",[40,111,41]],[[127263,127263],\"disallowed_STD3_mapped\",[40,112,41]],[[127264,127264],\"disallowed_STD3_mapped\",[40,113,41]],[[127265,127265],\"disallowed_STD3_mapped\",[40,114,41]],[[127266,127266],\"disallowed_STD3_mapped\",[40,115,41]],[[127267,127267],\"disallowed_STD3_mapped\",[40,116,41]],[[127268,127268],\"disallowed_STD3_mapped\",[40,117,41]],[[127269,127269],\"disallowed_STD3_mapped\",[40,118,41]],[[127270,127270],\"disallowed_STD3_mapped\",[40,119,41]],[[127271,127271],\"disallowed_STD3_mapped\",[40,120,41]],[[127272,127272],\"disallowed_STD3_mapped\",[40,121,41]],[[127273,127273],\"disallowed_STD3_mapped\",[40,122,41]],[[127274,127274],\"mapped\",[12308,115,12309]],[[127275,127275],\"mapped\",[99]],[[127276,127276],\"mapped\",[114]],[[127277,127277],\"mapped\",[99,100]],[[127278,127278],\"mapped\",[119,122]],[[127279,127279],\"disallowed\"],[[127280,127280],\"mapped\",[97]],[[127281,127281],\"mapped\",[98]],[[127282,127282],\"mapped\",[99]],[[127283,127283],\"mapped\",[100]],[[127284,127284],\"mapped\",[101]],[[127285,127285],\"mapped\",[102]],[[127286,127286],\"mapped\",[103]],[[127287,127287],\"mapped\",[104]],[[127288,127288],\"mapped\",[105]],[[127289,127289],\"mapped\",[106]],[[127290,127290],\"mapped\",[107]],[[127291,127291],\"mapped\",[108]],[[127292,127292],\"mapped\",[109]],[[127293,127293],\"mapped\",[110]],[[127294,127294],\"mapped\",[111]],[[127295,127295],\"mapped\",[112]],[[127296,127296],\"mapped\",[113]],[[127297,127297],\"mapped\",[114]],[[127298,127298],\"mapped\",[115]],[[127299,127299],\"mapped\",[116]],[[127300,127300],\"mapped\",[117]],[[127301,127301],\"mapped\",[118]],[[127302,127302],\"mapped\",[119]],[[127303,127303],\"mapped\",[120]],[[127304,127304],\"mapped\",[121]],[[127305,127305],\"mapped\",[122]],[[127306,127306],\"mapped\",[104,118]],[[127307,127307],\"mapped\",[109,118]],[[127308,127308],\"mapped\",[115,100]],[[127309,127309],\"mapped\",[115,115]],[[127310,127310],\"mapped\",[112,112,118]],[[127311,127311],\"mapped\",[119,99]],[[127312,127318],\"valid\",[],\"NV8\"],[[127319,127319],\"valid\",[],\"NV8\"],[[127320,127326],\"valid\",[],\"NV8\"],[[127327,127327],\"valid\",[],\"NV8\"],[[127328,127337],\"valid\",[],\"NV8\"],[[127338,127338],\"mapped\",[109,99]],[[127339,127339],\"mapped\",[109,100]],[[127340,127343],\"disallowed\"],[[127344,127352],\"valid\",[],\"NV8\"],[[127353,127353],\"valid\",[],\"NV8\"],[[127354,127354],\"valid\",[],\"NV8\"],[[127355,127356],\"valid\",[],\"NV8\"],[[127357,127358],\"valid\",[],\"NV8\"],[[127359,127359],\"valid\",[],\"NV8\"],[[127360,127369],\"valid\",[],\"NV8\"],[[127370,127373],\"valid\",[],\"NV8\"],[[127374,127375],\"valid\",[],\"NV8\"],[[127376,127376],\"mapped\",[100,106]],[[127377,127386],\"valid\",[],\"NV8\"],[[127387,127461],\"disallowed\"],[[127462,127487],\"valid\",[],\"NV8\"],[[127488,127488],\"mapped\",[12411,12363]],[[127489,127489],\"mapped\",[12467,12467]],[[127490,127490],\"mapped\",[12469]],[[127491,127503],\"disallowed\"],[[127504,127504],\"mapped\",[25163]],[[127505,127505],\"mapped\",[23383]],[[127506,127506],\"mapped\",[21452]],[[127507,127507],\"mapped\",[12487]],[[127508,127508],\"mapped\",[20108]],[[127509,127509],\"mapped\",[22810]],[[127510,127510],\"mapped\",[35299]],[[127511,127511],\"mapped\",[22825]],[[127512,127512],\"mapped\",[20132]],[[127513,127513],\"mapped\",[26144]],[[127514,127514],\"mapped\",[28961]],[[127515,127515],\"mapped\",[26009]],[[127516,127516],\"mapped\",[21069]],[[127517,127517],\"mapped\",[24460]],[[127518,127518],\"mapped\",[20877]],[[127519,127519],\"mapped\",[26032]],[[127520,127520],\"mapped\",[21021]],[[127521,127521],\"mapped\",[32066]],[[127522,127522],\"mapped\",[29983]],[[127523,127523],\"mapped\",[36009]],[[127524,127524],\"mapped\",[22768]],[[127525,127525],\"mapped\",[21561]],[[127526,127526],\"mapped\",[28436]],[[127527,127527],\"mapped\",[25237]],[[127528,127528],\"mapped\",[25429]],[[127529,127529],\"mapped\",[19968]],[[127530,127530],\"mapped\",[19977]],[[127531,127531],\"mapped\",[36938]],[[127532,127532],\"mapped\",[24038]],[[127533,127533],\"mapped\",[20013]],[[127534,127534],\"mapped\",[21491]],[[127535,127535],\"mapped\",[25351]],[[127536,127536],\"mapped\",[36208]],[[127537,127537],\"mapped\",[25171]],[[127538,127538],\"mapped\",[31105]],[[127539,127539],\"mapped\",[31354]],[[127540,127540],\"mapped\",[21512]],[[127541,127541],\"mapped\",[28288]],[[127542,127542],\"mapped\",[26377]],[[127543,127543],\"mapped\",[26376]],[[127544,127544],\"mapped\",[30003]],[[127545,127545],\"mapped\",[21106]],[[127546,127546],\"mapped\",[21942]],[[127547,127551],\"disallowed\"],[[127552,127552],\"mapped\",[12308,26412,12309]],[[127553,127553],\"mapped\",[12308,19977,12309]],[[127554,127554],\"mapped\",[12308,20108,12309]],[[127555,127555],\"mapped\",[12308,23433,12309]],[[127556,127556],\"mapped\",[12308,28857,12309]],[[127557,127557],\"mapped\",[12308,25171,12309]],[[127558,127558],\"mapped\",[12308,30423,12309]],[[127559,127559],\"mapped\",[12308,21213,12309]],[[127560,127560],\"mapped\",[12308,25943,12309]],[[127561,127567],\"disallowed\"],[[127568,127568],\"mapped\",[24471]],[[127569,127569],\"mapped\",[21487]],[[127570,127743],\"disallowed\"],[[127744,127776],\"valid\",[],\"NV8\"],[[127777,127788],\"valid\",[],\"NV8\"],[[127789,127791],\"valid\",[],\"NV8\"],[[127792,127797],\"valid\",[],\"NV8\"],[[127798,127798],\"valid\",[],\"NV8\"],[[127799,127868],\"valid\",[],\"NV8\"],[[127869,127869],\"valid\",[],\"NV8\"],[[127870,127871],\"valid\",[],\"NV8\"],[[127872,127891],\"valid\",[],\"NV8\"],[[127892,127903],\"valid\",[],\"NV8\"],[[127904,127940],\"valid\",[],\"NV8\"],[[127941,127941],\"valid\",[],\"NV8\"],[[127942,127946],\"valid\",[],\"NV8\"],[[127947,127950],\"valid\",[],\"NV8\"],[[127951,127955],\"valid\",[],\"NV8\"],[[127956,127967],\"valid\",[],\"NV8\"],[[127968,127984],\"valid\",[],\"NV8\"],[[127985,127991],\"valid\",[],\"NV8\"],[[127992,127999],\"valid\",[],\"NV8\"],[[128000,128062],\"valid\",[],\"NV8\"],[[128063,128063],\"valid\",[],\"NV8\"],[[128064,128064],\"valid\",[],\"NV8\"],[[128065,128065],\"valid\",[],\"NV8\"],[[128066,128247],\"valid\",[],\"NV8\"],[[128248,128248],\"valid\",[],\"NV8\"],[[128249,128252],\"valid\",[],\"NV8\"],[[128253,128254],\"valid\",[],\"NV8\"],[[128255,128255],\"valid\",[],\"NV8\"],[[128256,128317],\"valid\",[],\"NV8\"],[[128318,128319],\"valid\",[],\"NV8\"],[[128320,128323],\"valid\",[],\"NV8\"],[[128324,128330],\"valid\",[],\"NV8\"],[[128331,128335],\"valid\",[],\"NV8\"],[[128336,128359],\"valid\",[],\"NV8\"],[[128360,128377],\"valid\",[],\"NV8\"],[[128378,128378],\"disallowed\"],[[128379,128419],\"valid\",[],\"NV8\"],[[128420,128420],\"disallowed\"],[[128421,128506],\"valid\",[],\"NV8\"],[[128507,128511],\"valid\",[],\"NV8\"],[[128512,128512],\"valid\",[],\"NV8\"],[[128513,128528],\"valid\",[],\"NV8\"],[[128529,128529],\"valid\",[],\"NV8\"],[[128530,128532],\"valid\",[],\"NV8\"],[[128533,128533],\"valid\",[],\"NV8\"],[[128534,128534],\"valid\",[],\"NV8\"],[[128535,128535],\"valid\",[],\"NV8\"],[[128536,128536],\"valid\",[],\"NV8\"],[[128537,128537],\"valid\",[],\"NV8\"],[[128538,128538],\"valid\",[],\"NV8\"],[[128539,128539],\"valid\",[],\"NV8\"],[[128540,128542],\"valid\",[],\"NV8\"],[[128543,128543],\"valid\",[],\"NV8\"],[[128544,128549],\"valid\",[],\"NV8\"],[[128550,128551],\"valid\",[],\"NV8\"],[[128552,128555],\"valid\",[],\"NV8\"],[[128556,128556],\"valid\",[],\"NV8\"],[[128557,128557],\"valid\",[],\"NV8\"],[[128558,128559],\"valid\",[],\"NV8\"],[[128560,128563],\"valid\",[],\"NV8\"],[[128564,128564],\"valid\",[],\"NV8\"],[[128565,128576],\"valid\",[],\"NV8\"],[[128577,128578],\"valid\",[],\"NV8\"],[[128579,128580],\"valid\",[],\"NV8\"],[[128581,128591],\"valid\",[],\"NV8\"],[[128592,128639],\"valid\",[],\"NV8\"],[[128640,128709],\"valid\",[],\"NV8\"],[[128710,128719],\"valid\",[],\"NV8\"],[[128720,128720],\"valid\",[],\"NV8\"],[[128721,128735],\"disallowed\"],[[128736,128748],\"valid\",[],\"NV8\"],[[128749,128751],\"disallowed\"],[[128752,128755],\"valid\",[],\"NV8\"],[[128756,128767],\"disallowed\"],[[128768,128883],\"valid\",[],\"NV8\"],[[128884,128895],\"disallowed\"],[[128896,128980],\"valid\",[],\"NV8\"],[[128981,129023],\"disallowed\"],[[129024,129035],\"valid\",[],\"NV8\"],[[129036,129039],\"disallowed\"],[[129040,129095],\"valid\",[],\"NV8\"],[[129096,129103],\"disallowed\"],[[129104,129113],\"valid\",[],\"NV8\"],[[129114,129119],\"disallowed\"],[[129120,129159],\"valid\",[],\"NV8\"],[[129160,129167],\"disallowed\"],[[129168,129197],\"valid\",[],\"NV8\"],[[129198,129295],\"disallowed\"],[[129296,129304],\"valid\",[],\"NV8\"],[[129305,129407],\"disallowed\"],[[129408,129412],\"valid\",[],\"NV8\"],[[129413,129471],\"disallowed\"],[[129472,129472],\"valid\",[],\"NV8\"],[[129473,131069],\"disallowed\"],[[131070,131071],\"disallowed\"],[[131072,173782],\"valid\"],[[173783,173823],\"disallowed\"],[[173824,177972],\"valid\"],[[177973,177983],\"disallowed\"],[[177984,178205],\"valid\"],[[178206,178207],\"disallowed\"],[[178208,183969],\"valid\"],[[183970,194559],\"disallowed\"],[[194560,194560],\"mapped\",[20029]],[[194561,194561],\"mapped\",[20024]],[[194562,194562],\"mapped\",[20033]],[[194563,194563],\"mapped\",[131362]],[[194564,194564],\"mapped\",[20320]],[[194565,194565],\"mapped\",[20398]],[[194566,194566],\"mapped\",[20411]],[[194567,194567],\"mapped\",[20482]],[[194568,194568],\"mapped\",[20602]],[[194569,194569],\"mapped\",[20633]],[[194570,194570],\"mapped\",[20711]],[[194571,194571],\"mapped\",[20687]],[[194572,194572],\"mapped\",[13470]],[[194573,194573],\"mapped\",[132666]],[[194574,194574],\"mapped\",[20813]],[[194575,194575],\"mapped\",[20820]],[[194576,194576],\"mapped\",[20836]],[[194577,194577],\"mapped\",[20855]],[[194578,194578],\"mapped\",[132380]],[[194579,194579],\"mapped\",[13497]],[[194580,194580],\"mapped\",[20839]],[[194581,194581],\"mapped\",[20877]],[[194582,194582],\"mapped\",[132427]],[[194583,194583],\"mapped\",[20887]],[[194584,194584],\"mapped\",[20900]],[[194585,194585],\"mapped\",[20172]],[[194586,194586],\"mapped\",[20908]],[[194587,194587],\"mapped\",[20917]],[[194588,194588],\"mapped\",[168415]],[[194589,194589],\"mapped\",[20981]],[[194590,194590],\"mapped\",[20995]],[[194591,194591],\"mapped\",[13535]],[[194592,194592],\"mapped\",[21051]],[[194593,194593],\"mapped\",[21062]],[[194594,194594],\"mapped\",[21106]],[[194595,194595],\"mapped\",[21111]],[[194596,194596],\"mapped\",[13589]],[[194597,194597],\"mapped\",[21191]],[[194598,194598],\"mapped\",[21193]],[[194599,194599],\"mapped\",[21220]],[[194600,194600],\"mapped\",[21242]],[[194601,194601],\"mapped\",[21253]],[[194602,194602],\"mapped\",[21254]],[[194603,194603],\"mapped\",[21271]],[[194604,194604],\"mapped\",[21321]],[[194605,194605],\"mapped\",[21329]],[[194606,194606],\"mapped\",[21338]],[[194607,194607],\"mapped\",[21363]],[[194608,194608],\"mapped\",[21373]],[[194609,194611],\"mapped\",[21375]],[[194612,194612],\"mapped\",[133676]],[[194613,194613],\"mapped\",[28784]],[[194614,194614],\"mapped\",[21450]],[[194615,194615],\"mapped\",[21471]],[[194616,194616],\"mapped\",[133987]],[[194617,194617],\"mapped\",[21483]],[[194618,194618],\"mapped\",[21489]],[[194619,194619],\"mapped\",[21510]],[[194620,194620],\"mapped\",[21662]],[[194621,194621],\"mapped\",[21560]],[[194622,194622],\"mapped\",[21576]],[[194623,194623],\"mapped\",[21608]],[[194624,194624],\"mapped\",[21666]],[[194625,194625],\"mapped\",[21750]],[[194626,194626],\"mapped\",[21776]],[[194627,194627],\"mapped\",[21843]],[[194628,194628],\"mapped\",[21859]],[[194629,194630],\"mapped\",[21892]],[[194631,194631],\"mapped\",[21913]],[[194632,194632],\"mapped\",[21931]],[[194633,194633],\"mapped\",[21939]],[[194634,194634],\"mapped\",[21954]],[[194635,194635],\"mapped\",[22294]],[[194636,194636],\"mapped\",[22022]],[[194637,194637],\"mapped\",[22295]],[[194638,194638],\"mapped\",[22097]],[[194639,194639],\"mapped\",[22132]],[[194640,194640],\"mapped\",[20999]],[[194641,194641],\"mapped\",[22766]],[[194642,194642],\"mapped\",[22478]],[[194643,194643],\"mapped\",[22516]],[[194644,194644],\"mapped\",[22541]],[[194645,194645],\"mapped\",[22411]],[[194646,194646],\"mapped\",[22578]],[[194647,194647],\"mapped\",[22577]],[[194648,194648],\"mapped\",[22700]],[[194649,194649],\"mapped\",[136420]],[[194650,194650],\"mapped\",[22770]],[[194651,194651],\"mapped\",[22775]],[[194652,194652],\"mapped\",[22790]],[[194653,194653],\"mapped\",[22810]],[[194654,194654],\"mapped\",[22818]],[[194655,194655],\"mapped\",[22882]],[[194656,194656],\"mapped\",[136872]],[[194657,194657],\"mapped\",[136938]],[[194658,194658],\"mapped\",[23020]],[[194659,194659],\"mapped\",[23067]],[[194660,194660],\"mapped\",[23079]],[[194661,194661],\"mapped\",[23000]],[[194662,194662],\"mapped\",[23142]],[[194663,194663],\"mapped\",[14062]],[[194664,194664],\"disallowed\"],[[194665,194665],\"mapped\",[23304]],[[194666,194667],\"mapped\",[23358]],[[194668,194668],\"mapped\",[137672]],[[194669,194669],\"mapped\",[23491]],[[194670,194670],\"mapped\",[23512]],[[194671,194671],\"mapped\",[23527]],[[194672,194672],\"mapped\",[23539]],[[194673,194673],\"mapped\",[138008]],[[194674,194674],\"mapped\",[23551]],[[194675,194675],\"mapped\",[23558]],[[194676,194676],\"disallowed\"],[[194677,194677],\"mapped\",[23586]],[[194678,194678],\"mapped\",[14209]],[[194679,194679],\"mapped\",[23648]],[[194680,194680],\"mapped\",[23662]],[[194681,194681],\"mapped\",[23744]],[[194682,194682],\"mapped\",[23693]],[[194683,194683],\"mapped\",[138724]],[[194684,194684],\"mapped\",[23875]],[[194685,194685],\"mapped\",[138726]],[[194686,194686],\"mapped\",[23918]],[[194687,194687],\"mapped\",[23915]],[[194688,194688],\"mapped\",[23932]],[[194689,194689],\"mapped\",[24033]],[[194690,194690],\"mapped\",[24034]],[[194691,194691],\"mapped\",[14383]],[[194692,194692],\"mapped\",[24061]],[[194693,194693],\"mapped\",[24104]],[[194694,194694],\"mapped\",[24125]],[[194695,194695],\"mapped\",[24169]],[[194696,194696],\"mapped\",[14434]],[[194697,194697],\"mapped\",[139651]],[[194698,194698],\"mapped\",[14460]],[[194699,194699],\"mapped\",[24240]],[[194700,194700],\"mapped\",[24243]],[[194701,194701],\"mapped\",[24246]],[[194702,194702],\"mapped\",[24266]],[[194703,194703],\"mapped\",[172946]],[[194704,194704],\"mapped\",[24318]],[[194705,194706],\"mapped\",[140081]],[[194707,194707],\"mapped\",[33281]],[[194708,194709],\"mapped\",[24354]],[[194710,194710],\"mapped\",[14535]],[[194711,194711],\"mapped\",[144056]],[[194712,194712],\"mapped\",[156122]],[[194713,194713],\"mapped\",[24418]],[[194714,194714],\"mapped\",[24427]],[[194715,194715],\"mapped\",[14563]],[[194716,194716],\"mapped\",[24474]],[[194717,194717],\"mapped\",[24525]],[[194718,194718],\"mapped\",[24535]],[[194719,194719],\"mapped\",[24569]],[[194720,194720],\"mapped\",[24705]],[[194721,194721],\"mapped\",[14650]],[[194722,194722],\"mapped\",[14620]],[[194723,194723],\"mapped\",[24724]],[[194724,194724],\"mapped\",[141012]],[[194725,194725],\"mapped\",[24775]],[[194726,194726],\"mapped\",[24904]],[[194727,194727],\"mapped\",[24908]],[[194728,194728],\"mapped\",[24910]],[[194729,194729],\"mapped\",[24908]],[[194730,194730],\"mapped\",[24954]],[[194731,194731],\"mapped\",[24974]],[[194732,194732],\"mapped\",[25010]],[[194733,194733],\"mapped\",[24996]],[[194734,194734],\"mapped\",[25007]],[[194735,194735],\"mapped\",[25054]],[[194736,194736],\"mapped\",[25074]],[[194737,194737],\"mapped\",[25078]],[[194738,194738],\"mapped\",[25104]],[[194739,194739],\"mapped\",[25115]],[[194740,194740],\"mapped\",[25181]],[[194741,194741],\"mapped\",[25265]],[[194742,194742],\"mapped\",[25300]],[[194743,194743],\"mapped\",[25424]],[[194744,194744],\"mapped\",[142092]],[[194745,194745],\"mapped\",[25405]],[[194746,194746],\"mapped\",[25340]],[[194747,194747],\"mapped\",[25448]],[[194748,194748],\"mapped\",[25475]],[[194749,194749],\"mapped\",[25572]],[[194750,194750],\"mapped\",[142321]],[[194751,194751],\"mapped\",[25634]],[[194752,194752],\"mapped\",[25541]],[[194753,194753],\"mapped\",[25513]],[[194754,194754],\"mapped\",[14894]],[[194755,194755],\"mapped\",[25705]],[[194756,194756],\"mapped\",[25726]],[[194757,194757],\"mapped\",[25757]],[[194758,194758],\"mapped\",[25719]],[[194759,194759],\"mapped\",[14956]],[[194760,194760],\"mapped\",[25935]],[[194761,194761],\"mapped\",[25964]],[[194762,194762],\"mapped\",[143370]],[[194763,194763],\"mapped\",[26083]],[[194764,194764],\"mapped\",[26360]],[[194765,194765],\"mapped\",[26185]],[[194766,194766],\"mapped\",[15129]],[[194767,194767],\"mapped\",[26257]],[[194768,194768],\"mapped\",[15112]],[[194769,194769],\"mapped\",[15076]],[[194770,194770],\"mapped\",[20882]],[[194771,194771],\"mapped\",[20885]],[[194772,194772],\"mapped\",[26368]],[[194773,194773],\"mapped\",[26268]],[[194774,194774],\"mapped\",[32941]],[[194775,194775],\"mapped\",[17369]],[[194776,194776],\"mapped\",[26391]],[[194777,194777],\"mapped\",[26395]],[[194778,194778],\"mapped\",[26401]],[[194779,194779],\"mapped\",[26462]],[[194780,194780],\"mapped\",[26451]],[[194781,194781],\"mapped\",[144323]],[[194782,194782],\"mapped\",[15177]],[[194783,194783],\"mapped\",[26618]],[[194784,194784],\"mapped\",[26501]],[[194785,194785],\"mapped\",[26706]],[[194786,194786],\"mapped\",[26757]],[[194787,194787],\"mapped\",[144493]],[[194788,194788],\"mapped\",[26766]],[[194789,194789],\"mapped\",[26655]],[[194790,194790],\"mapped\",[26900]],[[194791,194791],\"mapped\",[15261]],[[194792,194792],\"mapped\",[26946]],[[194793,194793],\"mapped\",[27043]],[[194794,194794],\"mapped\",[27114]],[[194795,194795],\"mapped\",[27304]],[[194796,194796],\"mapped\",[145059]],[[194797,194797],\"mapped\",[27355]],[[194798,194798],\"mapped\",[15384]],[[194799,194799],\"mapped\",[27425]],[[194800,194800],\"mapped\",[145575]],[[194801,194801],\"mapped\",[27476]],[[194802,194802],\"mapped\",[15438]],[[194803,194803],\"mapped\",[27506]],[[194804,194804],\"mapped\",[27551]],[[194805,194805],\"mapped\",[27578]],[[194806,194806],\"mapped\",[27579]],[[194807,194807],\"mapped\",[146061]],[[194808,194808],\"mapped\",[138507]],[[194809,194809],\"mapped\",[146170]],[[194810,194810],\"mapped\",[27726]],[[194811,194811],\"mapped\",[146620]],[[194812,194812],\"mapped\",[27839]],[[194813,194813],\"mapped\",[27853]],[[194814,194814],\"mapped\",[27751]],[[194815,194815],\"mapped\",[27926]],[[194816,194816],\"mapped\",[27966]],[[194817,194817],\"mapped\",[28023]],[[194818,194818],\"mapped\",[27969]],[[194819,194819],\"mapped\",[28009]],[[194820,194820],\"mapped\",[28024]],[[194821,194821],\"mapped\",[28037]],[[194822,194822],\"mapped\",[146718]],[[194823,194823],\"mapped\",[27956]],[[194824,194824],\"mapped\",[28207]],[[194825,194825],\"mapped\",[28270]],[[194826,194826],\"mapped\",[15667]],[[194827,194827],\"mapped\",[28363]],[[194828,194828],\"mapped\",[28359]],[[194829,194829],\"mapped\",[147153]],[[194830,194830],\"mapped\",[28153]],[[194831,194831],\"mapped\",[28526]],[[194832,194832],\"mapped\",[147294]],[[194833,194833],\"mapped\",[147342]],[[194834,194834],\"mapped\",[28614]],[[194835,194835],\"mapped\",[28729]],[[194836,194836],\"mapped\",[28702]],[[194837,194837],\"mapped\",[28699]],[[194838,194838],\"mapped\",[15766]],[[194839,194839],\"mapped\",[28746]],[[194840,194840],\"mapped\",[28797]],[[194841,194841],\"mapped\",[28791]],[[194842,194842],\"mapped\",[28845]],[[194843,194843],\"mapped\",[132389]],[[194844,194844],\"mapped\",[28997]],[[194845,194845],\"mapped\",[148067]],[[194846,194846],\"mapped\",[29084]],[[194847,194847],\"disallowed\"],[[194848,194848],\"mapped\",[29224]],[[194849,194849],\"mapped\",[29237]],[[194850,194850],\"mapped\",[29264]],[[194851,194851],\"mapped\",[149000]],[[194852,194852],\"mapped\",[29312]],[[194853,194853],\"mapped\",[29333]],[[194854,194854],\"mapped\",[149301]],[[194855,194855],\"mapped\",[149524]],[[194856,194856],\"mapped\",[29562]],[[194857,194857],\"mapped\",[29579]],[[194858,194858],\"mapped\",[16044]],[[194859,194859],\"mapped\",[29605]],[[194860,194861],\"mapped\",[16056]],[[194862,194862],\"mapped\",[29767]],[[194863,194863],\"mapped\",[29788]],[[194864,194864],\"mapped\",[29809]],[[194865,194865],\"mapped\",[29829]],[[194866,194866],\"mapped\",[29898]],[[194867,194867],\"mapped\",[16155]],[[194868,194868],\"mapped\",[29988]],[[194869,194869],\"mapped\",[150582]],[[194870,194870],\"mapped\",[30014]],[[194871,194871],\"mapped\",[150674]],[[194872,194872],\"mapped\",[30064]],[[194873,194873],\"mapped\",[139679]],[[194874,194874],\"mapped\",[30224]],[[194875,194875],\"mapped\",[151457]],[[194876,194876],\"mapped\",[151480]],[[194877,194877],\"mapped\",[151620]],[[194878,194878],\"mapped\",[16380]],[[194879,194879],\"mapped\",[16392]],[[194880,194880],\"mapped\",[30452]],[[194881,194881],\"mapped\",[151795]],[[194882,194882],\"mapped\",[151794]],[[194883,194883],\"mapped\",[151833]],[[194884,194884],\"mapped\",[151859]],[[194885,194885],\"mapped\",[30494]],[[194886,194887],\"mapped\",[30495]],[[194888,194888],\"mapped\",[30538]],[[194889,194889],\"mapped\",[16441]],[[194890,194890],\"mapped\",[30603]],[[194891,194891],\"mapped\",[16454]],[[194892,194892],\"mapped\",[16534]],[[194893,194893],\"mapped\",[152605]],[[194894,194894],\"mapped\",[30798]],[[194895,194895],\"mapped\",[30860]],[[194896,194896],\"mapped\",[30924]],[[194897,194897],\"mapped\",[16611]],[[194898,194898],\"mapped\",[153126]],[[194899,194899],\"mapped\",[31062]],[[194900,194900],\"mapped\",[153242]],[[194901,194901],\"mapped\",[153285]],[[194902,194902],\"mapped\",[31119]],[[194903,194903],\"mapped\",[31211]],[[194904,194904],\"mapped\",[16687]],[[194905,194905],\"mapped\",[31296]],[[194906,194906],\"mapped\",[31306]],[[194907,194907],\"mapped\",[31311]],[[194908,194908],\"mapped\",[153980]],[[194909,194910],\"mapped\",[154279]],[[194911,194911],\"disallowed\"],[[194912,194912],\"mapped\",[16898]],[[194913,194913],\"mapped\",[154539]],[[194914,194914],\"mapped\",[31686]],[[194915,194915],\"mapped\",[31689]],[[194916,194916],\"mapped\",[16935]],[[194917,194917],\"mapped\",[154752]],[[194918,194918],\"mapped\",[31954]],[[194919,194919],\"mapped\",[17056]],[[194920,194920],\"mapped\",[31976]],[[194921,194921],\"mapped\",[31971]],[[194922,194922],\"mapped\",[32000]],[[194923,194923],\"mapped\",[155526]],[[194924,194924],\"mapped\",[32099]],[[194925,194925],\"mapped\",[17153]],[[194926,194926],\"mapped\",[32199]],[[194927,194927],\"mapped\",[32258]],[[194928,194928],\"mapped\",[32325]],[[194929,194929],\"mapped\",[17204]],[[194930,194930],\"mapped\",[156200]],[[194931,194931],\"mapped\",[156231]],[[194932,194932],\"mapped\",[17241]],[[194933,194933],\"mapped\",[156377]],[[194934,194934],\"mapped\",[32634]],[[194935,194935],\"mapped\",[156478]],[[194936,194936],\"mapped\",[32661]],[[194937,194937],\"mapped\",[32762]],[[194938,194938],\"mapped\",[32773]],[[194939,194939],\"mapped\",[156890]],[[194940,194940],\"mapped\",[156963]],[[194941,194941],\"mapped\",[32864]],[[194942,194942],\"mapped\",[157096]],[[194943,194943],\"mapped\",[32880]],[[194944,194944],\"mapped\",[144223]],[[194945,194945],\"mapped\",[17365]],[[194946,194946],\"mapped\",[32946]],[[194947,194947],\"mapped\",[33027]],[[194948,194948],\"mapped\",[17419]],[[194949,194949],\"mapped\",[33086]],[[194950,194950],\"mapped\",[23221]],[[194951,194951],\"mapped\",[157607]],[[194952,194952],\"mapped\",[157621]],[[194953,194953],\"mapped\",[144275]],[[194954,194954],\"mapped\",[144284]],[[194955,194955],\"mapped\",[33281]],[[194956,194956],\"mapped\",[33284]],[[194957,194957],\"mapped\",[36766]],[[194958,194958],\"mapped\",[17515]],[[194959,194959],\"mapped\",[33425]],[[194960,194960],\"mapped\",[33419]],[[194961,194961],\"mapped\",[33437]],[[194962,194962],\"mapped\",[21171]],[[194963,194963],\"mapped\",[33457]],[[194964,194964],\"mapped\",[33459]],[[194965,194965],\"mapped\",[33469]],[[194966,194966],\"mapped\",[33510]],[[194967,194967],\"mapped\",[158524]],[[194968,194968],\"mapped\",[33509]],[[194969,194969],\"mapped\",[33565]],[[194970,194970],\"mapped\",[33635]],[[194971,194971],\"mapped\",[33709]],[[194972,194972],\"mapped\",[33571]],[[194973,194973],\"mapped\",[33725]],[[194974,194974],\"mapped\",[33767]],[[194975,194975],\"mapped\",[33879]],[[194976,194976],\"mapped\",[33619]],[[194977,194977],\"mapped\",[33738]],[[194978,194978],\"mapped\",[33740]],[[194979,194979],\"mapped\",[33756]],[[194980,194980],\"mapped\",[158774]],[[194981,194981],\"mapped\",[159083]],[[194982,194982],\"mapped\",[158933]],[[194983,194983],\"mapped\",[17707]],[[194984,194984],\"mapped\",[34033]],[[194985,194985],\"mapped\",[34035]],[[194986,194986],\"mapped\",[34070]],[[194987,194987],\"mapped\",[160714]],[[194988,194988],\"mapped\",[34148]],[[194989,194989],\"mapped\",[159532]],[[194990,194990],\"mapped\",[17757]],[[194991,194991],\"mapped\",[17761]],[[194992,194992],\"mapped\",[159665]],[[194993,194993],\"mapped\",[159954]],[[194994,194994],\"mapped\",[17771]],[[194995,194995],\"mapped\",[34384]],[[194996,194996],\"mapped\",[34396]],[[194997,194997],\"mapped\",[34407]],[[194998,194998],\"mapped\",[34409]],[[194999,194999],\"mapped\",[34473]],[[195000,195000],\"mapped\",[34440]],[[195001,195001],\"mapped\",[34574]],[[195002,195002],\"mapped\",[34530]],[[195003,195003],\"mapped\",[34681]],[[195004,195004],\"mapped\",[34600]],[[195005,195005],\"mapped\",[34667]],[[195006,195006],\"mapped\",[34694]],[[195007,195007],\"disallowed\"],[[195008,195008],\"mapped\",[34785]],[[195009,195009],\"mapped\",[34817]],[[195010,195010],\"mapped\",[17913]],[[195011,195011],\"mapped\",[34912]],[[195012,195012],\"mapped\",[34915]],[[195013,195013],\"mapped\",[161383]],[[195014,195014],\"mapped\",[35031]],[[195015,195015],\"mapped\",[35038]],[[195016,195016],\"mapped\",[17973]],[[195017,195017],\"mapped\",[35066]],[[195018,195018],\"mapped\",[13499]],[[195019,195019],\"mapped\",[161966]],[[195020,195020],\"mapped\",[162150]],[[195021,195021],\"mapped\",[18110]],[[195022,195022],\"mapped\",[18119]],[[195023,195023],\"mapped\",[35488]],[[195024,195024],\"mapped\",[35565]],[[195025,195025],\"mapped\",[35722]],[[195026,195026],\"mapped\",[35925]],[[195027,195027],\"mapped\",[162984]],[[195028,195028],\"mapped\",[36011]],[[195029,195029],\"mapped\",[36033]],[[195030,195030],\"mapped\",[36123]],[[195031,195031],\"mapped\",[36215]],[[195032,195032],\"mapped\",[163631]],[[195033,195033],\"mapped\",[133124]],[[195034,195034],\"mapped\",[36299]],[[195035,195035],\"mapped\",[36284]],[[195036,195036],\"mapped\",[36336]],[[195037,195037],\"mapped\",[133342]],[[195038,195038],\"mapped\",[36564]],[[195039,195039],\"mapped\",[36664]],[[195040,195040],\"mapped\",[165330]],[[195041,195041],\"mapped\",[165357]],[[195042,195042],\"mapped\",[37012]],[[195043,195043],\"mapped\",[37105]],[[195044,195044],\"mapped\",[37137]],[[195045,195045],\"mapped\",[165678]],[[195046,195046],\"mapped\",[37147]],[[195047,195047],\"mapped\",[37432]],[[195048,195048],\"mapped\",[37591]],[[195049,195049],\"mapped\",[37592]],[[195050,195050],\"mapped\",[37500]],[[195051,195051],\"mapped\",[37881]],[[195052,195052],\"mapped\",[37909]],[[195053,195053],\"mapped\",[166906]],[[195054,195054],\"mapped\",[38283]],[[195055,195055],\"mapped\",[18837]],[[195056,195056],\"mapped\",[38327]],[[195057,195057],\"mapped\",[167287]],[[195058,195058],\"mapped\",[18918]],[[195059,195059],\"mapped\",[38595]],[[195060,195060],\"mapped\",[23986]],[[195061,195061],\"mapped\",[38691]],[[195062,195062],\"mapped\",[168261]],[[195063,195063],\"mapped\",[168474]],[[195064,195064],\"mapped\",[19054]],[[195065,195065],\"mapped\",[19062]],[[195066,195066],\"mapped\",[38880]],[[195067,195067],\"mapped\",[168970]],[[195068,195068],\"mapped\",[19122]],[[195069,195069],\"mapped\",[169110]],[[195070,195071],\"mapped\",[38923]],[[195072,195072],\"mapped\",[38953]],[[195073,195073],\"mapped\",[169398]],[[195074,195074],\"mapped\",[39138]],[[195075,195075],\"mapped\",[19251]],[[195076,195076],\"mapped\",[39209]],[[195077,195077],\"mapped\",[39335]],[[195078,195078],\"mapped\",[39362]],[[195079,195079],\"mapped\",[39422]],[[195080,195080],\"mapped\",[19406]],[[195081,195081],\"mapped\",[170800]],[[195082,195082],\"mapped\",[39698]],[[195083,195083],\"mapped\",[40000]],[[195084,195084],\"mapped\",[40189]],[[195085,195085],\"mapped\",[19662]],[[195086,195086],\"mapped\",[19693]],[[195087,195087],\"mapped\",[40295]],[[195088,195088],\"mapped\",[172238]],[[195089,195089],\"mapped\",[19704]],[[195090,195090],\"mapped\",[172293]],[[195091,195091],\"mapped\",[172558]],[[195092,195092],\"mapped\",[172689]],[[195093,195093],\"mapped\",[40635]],[[195094,195094],\"mapped\",[19798]],[[195095,195095],\"mapped\",[40697]],[[195096,195096],\"mapped\",[40702]],[[195097,195097],\"mapped\",[40709]],[[195098,195098],\"mapped\",[40719]],[[195099,195099],\"mapped\",[40726]],[[195100,195100],\"mapped\",[40763]],[[195101,195101],\"mapped\",[173568]],[[195102,196605],\"disallowed\"],[[196606,196607],\"disallowed\"],[[196608,262141],\"disallowed\"],[[262142,262143],\"disallowed\"],[[262144,327677],\"disallowed\"],[[327678,327679],\"disallowed\"],[[327680,393213],\"disallowed\"],[[393214,393215],\"disallowed\"],[[393216,458749],\"disallowed\"],[[458750,458751],\"disallowed\"],[[458752,524285],\"disallowed\"],[[524286,524287],\"disallowed\"],[[524288,589821],\"disallowed\"],[[589822,589823],\"disallowed\"],[[589824,655357],\"disallowed\"],[[655358,655359],\"disallowed\"],[[655360,720893],\"disallowed\"],[[720894,720895],\"disallowed\"],[[720896,786429],\"disallowed\"],[[786430,786431],\"disallowed\"],[[786432,851965],\"disallowed\"],[[851966,851967],\"disallowed\"],[[851968,917501],\"disallowed\"],[[917502,917503],\"disallowed\"],[[917504,917504],\"disallowed\"],[[917505,917505],\"disallowed\"],[[917506,917535],\"disallowed\"],[[917536,917631],\"disallowed\"],[[917632,917759],\"disallowed\"],[[917760,917999],\"ignored\"],[[918000,983037],\"disallowed\"],[[983038,983039],\"disallowed\"],[[983040,1048573],\"disallowed\"],[[1048574,1048575],\"disallowed\"],[[1048576,1114109],\"disallowed\"],[[1114110,1114111],\"disallowed\"]]","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { RequestOptionsBase, TransferProgressEvent } from \"./webResource\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { HttpOperationResponse } from \"./httpOperationResponse\";\nimport { OperationTracingOptions } from \"@azure/core-tracing\";\n\n/**\n * The base options type for all operations.\n */\nexport interface OperationOptions {\n /**\n * The signal which can be used to abort requests.\n */\n abortSignal?: AbortSignalLike;\n /**\n * Options used when creating and sending HTTP requests for this operation.\n */\n requestOptions?: OperationRequestOptions;\n /**\n * Options used when tracing is enabled.\n */\n tracingOptions?: OperationTracingOptions;\n}\n\n/**\n * Options that allow configuring the handling of HTTP requests made by an SDK operation.\n */\nexport interface OperationRequestOptions {\n /**\n * User defined custom request headers that will be applied before the request is sent.\n */\n customHeaders?: { [key: string]: string };\n\n /**\n * The number of milliseconds a request can take before automatically being terminated.\n */\n timeout?: number;\n\n /**\n * Callback which fires upon upload progress.\n */\n onUploadProgress?: (progress: TransferProgressEvent) => void;\n\n /**\n * Callback which fires upon download progress.\n */\n onDownloadProgress?: (progress: TransferProgressEvent) => void;\n /**\n * Whether or not the HttpOperationResponse should be deserialized. If this is undefined, then the\n * HttpOperationResponse should be deserialized.\n */\n shouldDeserialize?: boolean | ((response: HttpOperationResponse) => boolean);\n}\n\n/**\n * Converts an OperationOptions to a RequestOptionsBase\n *\n * @param opts - OperationOptions object to convert to RequestOptionsBase\n */\nexport function operationOptionsToRequestOptionsBase(\n opts: T\n): RequestOptionsBase {\n const { requestOptions, tracingOptions, ...additionalOptions } = opts;\n\n let result: RequestOptionsBase = additionalOptions;\n\n if (requestOptions) {\n result = { ...result, ...requestOptions };\n }\n\n if (tracingOptions) {\n result.tracingContext = tracingOptions.tracingContext;\n // By passing spanOptions if they exist at runtime, we're backwards compatible with @azure/core-tracing@preview.13 and earlier.\n result.spanOptions = (tracingOptions as any)?.spanOptions;\n }\n\n return result;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as utils from \"./util/utils\";\nimport { CompositeMapper, DictionaryMapper, Mapper, MapperType, Serializer } from \"./serializer\";\nimport {\n DefaultDeserializationOptions,\n DeserializationContentTypes,\n deserializationPolicy,\n} from \"./policies/deserializationPolicy\";\nimport { DefaultKeepAliveOptions, keepAlivePolicy } from \"./policies/keepAlivePolicy\";\nimport { DefaultRedirectOptions, redirectPolicy } from \"./policies/redirectPolicy\";\nimport { DefaultRetryOptions, exponentialRetryPolicy } from \"./policies/exponentialRetryPolicy\";\nimport { HttpOperationResponse, RestResponse } from \"./httpOperationResponse\";\nimport { LogPolicyOptions, logPolicy } from \"./policies/logPolicy\";\nimport {\n OperationParameter,\n ParameterPath,\n getPathStringFromParameter,\n getPathStringFromParameterPath,\n} from \"./operationParameter\";\nimport { OperationSpec, getStreamResponseStatusCodes } from \"./operationSpec\";\nimport {\n RequestOptionsBase,\n RequestPrepareOptions,\n WebResource,\n WebResourceLike,\n isWebResourceLike,\n} from \"./webResource\";\nimport {\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n} from \"./policies/requestPolicy\";\nimport { SerializerOptions, XML_ATTRKEY, XML_CHARKEY } from \"./util/serializer.common\";\nimport { ServiceCallback, isNode } from \"./util/utils\";\nimport { TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport {\n getDefaultUserAgentHeaderName,\n getDefaultUserAgentValue,\n userAgentPolicy,\n} from \"./policies/userAgentPolicy\";\nimport { HttpClient } from \"./httpClient\";\nimport { HttpPipelineLogger } from \"./httpPipelineLogger\";\nimport { InternalPipelineOptions } from \"./pipelineOptions\";\nimport { OperationArguments } from \"./operationArguments\";\nimport { OperationResponse } from \"./operationResponse\";\nimport { QueryCollectionFormat } from \"./queryCollectionFormat\";\nimport { ServiceClientCredentials } from \"./credentials/serviceClientCredentials\";\nimport { URL } from \"./url\";\nimport { URLBuilder } from \"./url\";\nimport { bearerTokenAuthenticationPolicy } from \"./policies/bearerTokenAuthenticationPolicy\";\nimport { disableResponseDecompressionPolicy } from \"./policies/disableResponseDecompressionPolicy\";\nimport { generateClientRequestIdPolicy } from \"./policies/generateClientRequestIdPolicy\";\nimport { getCachedDefaultHttpClient } from \"./httpClientCache\";\nimport { logger } from \"./log\";\nimport { ndJsonPolicy } from \"./policies/ndJsonPolicy\";\nimport { proxyPolicy } from \"./policies/proxyPolicy\";\nimport { rpRegistrationPolicy } from \"./policies/rpRegistrationPolicy\";\nimport { signingPolicy } from \"./policies/signingPolicy\";\nimport { stringifyXML } from \"./util/xml\";\nimport { systemErrorRetryPolicy } from \"./policies/systemErrorRetryPolicy\";\nimport { throttlingRetryPolicy } from \"./policies/throttlingRetryPolicy\";\nimport { tracingPolicy } from \"./policies/tracingPolicy\";\n\n/**\n * Options to configure a proxy for outgoing requests (Node.js only).\n */\nexport interface ProxySettings {\n /**\n * The proxy's host address.\n */\n host: string;\n\n /**\n * The proxy host's port.\n */\n port: number;\n\n /**\n * The user name to authenticate with the proxy, if required.\n */\n username?: string;\n\n /**\n * The password to authenticate with the proxy, if required.\n */\n password?: string;\n}\n\n/**\n * An alias of {@link ProxySettings} for future use.\n */\nexport type ProxyOptions = ProxySettings;\n\n/**\n * Options to be provided while creating the client.\n */\nexport interface ServiceClientOptions {\n /**\n * An array of factories which get called to create the RequestPolicy pipeline used to send a HTTP\n * request on the wire, or a function that takes in the defaultRequestPolicyFactories and returns\n * the requestPolicyFactories that will be used.\n */\n requestPolicyFactories?:\n | RequestPolicyFactory[]\n | ((defaultRequestPolicyFactories: RequestPolicyFactory[]) => void | RequestPolicyFactory[]);\n /**\n * The HttpClient that will be used to send HTTP requests.\n */\n httpClient?: HttpClient;\n /**\n * The HttpPipelineLogger that can be used to debug RequestPolicies within the HTTP pipeline.\n */\n httpPipelineLogger?: HttpPipelineLogger;\n /**\n * If set to true, turn off the default retry policy.\n */\n noRetryPolicy?: boolean;\n /**\n * Gets or sets the retry timeout in seconds for AutomaticRPRegistration. Default value is 30.\n */\n rpRegistrationRetryTimeout?: number;\n /**\n * Whether or not to generate a client request ID header for each HTTP request.\n */\n generateClientRequestIdHeader?: boolean;\n /**\n * Whether to include credentials in CORS requests in the browser.\n * See https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials for more information.\n */\n withCredentials?: boolean;\n /**\n * If specified, a GenerateRequestIdPolicy will be added to the HTTP pipeline that will add a\n * header to all outgoing requests with this header name and a random UUID as the request ID.\n */\n clientRequestIdHeaderName?: string;\n /**\n * The content-types that will be associated with JSON or XML serialization.\n */\n deserializationContentTypes?: DeserializationContentTypes;\n /**\n * The header name to use for the telemetry header while sending the request. If this is not\n * specified, then \"User-Agent\" will be used when running on Node.js and \"x-ms-useragent\" will\n * be used when running in a browser.\n */\n userAgentHeaderName?: string | ((defaultUserAgentHeaderName: string) => string);\n /**\n * The string to be set to the telemetry header while sending the request, or a function that\n * takes in the default user-agent string and returns the user-agent string that will be used.\n */\n userAgent?: string | ((defaultUserAgent: string) => string);\n /**\n * Proxy settings which will be used for every HTTP request (Node.js only).\n */\n proxySettings?: ProxySettings;\n /**\n * If specified, will be used to build the BearerTokenAuthenticationPolicy.\n */\n credentialScopes?: string | string[];\n}\n\n/**\n * ServiceClient sends service requests and receives responses.\n */\nexport class ServiceClient {\n /**\n * If specified, this is the base URI that requests will be made against for this ServiceClient.\n * If it is not specified, then all OperationSpecs must contain a baseUrl property.\n */\n protected baseUri?: string;\n\n /**\n * The default request content type for the service.\n * Used if no requestContentType is present on an OperationSpec.\n */\n protected requestContentType?: string;\n\n /**\n * The HTTP client that will be used to send requests.\n */\n private readonly _httpClient: HttpClient;\n private readonly _requestPolicyOptions: RequestPolicyOptions;\n\n private readonly _requestPolicyFactories: RequestPolicyFactory[];\n private readonly _withCredentials: boolean;\n\n /**\n * The ServiceClient constructor\n * @param credentials - The credentials used for authentication with the service.\n * @param options - The service client options that govern the behavior of the client.\n */\n constructor(\n credentials?: TokenCredential | ServiceClientCredentials,\n /* eslint-disable-next-line @azure/azure-sdk/ts-naming-options */\n options?: ServiceClientOptions\n ) {\n if (!options) {\n options = {};\n }\n\n this._withCredentials = options.withCredentials || false;\n this._httpClient = options.httpClient || getCachedDefaultHttpClient();\n this._requestPolicyOptions = new RequestPolicyOptions(options.httpPipelineLogger);\n\n let requestPolicyFactories: RequestPolicyFactory[];\n if (Array.isArray(options.requestPolicyFactories)) {\n logger.info(\"ServiceClient: using custom request policies\");\n requestPolicyFactories = options.requestPolicyFactories;\n } else {\n let authPolicyFactory: RequestPolicyFactory | undefined = undefined;\n if (isTokenCredential(credentials)) {\n logger.info(\n \"ServiceClient: creating bearer token authentication policy from provided credentials\"\n );\n // Create a wrapped RequestPolicyFactory here so that we can provide the\n // correct scope to the BearerTokenAuthenticationPolicy at the first time\n // one is requested. This is needed because generated ServiceClient\n // implementations do not set baseUri until after ServiceClient's constructor\n // is finished, leaving baseUri empty at the time when it is needed to\n // build the correct scope name.\n const wrappedPolicyFactory: () => RequestPolicyFactory = () => {\n let bearerTokenPolicyFactory: RequestPolicyFactory | undefined = undefined;\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const serviceClient = this;\n const serviceClientOptions = options;\n return {\n create(nextPolicy: RequestPolicy, createOptions: RequestPolicyOptions): RequestPolicy {\n const credentialScopes = getCredentialScopes(\n serviceClientOptions,\n serviceClient.baseUri\n );\n\n if (!credentialScopes) {\n throw new Error(\n `When using credential, the ServiceClient must contain a baseUri or a credentialScopes in ServiceClientOptions. Unable to create a bearerTokenAuthenticationPolicy`\n );\n }\n\n if (bearerTokenPolicyFactory === undefined || bearerTokenPolicyFactory === null) {\n bearerTokenPolicyFactory = bearerTokenAuthenticationPolicy(\n credentials,\n credentialScopes\n );\n }\n\n return bearerTokenPolicyFactory.create(nextPolicy, createOptions);\n },\n };\n };\n\n authPolicyFactory = wrappedPolicyFactory();\n } else if (credentials && typeof credentials.signRequest === \"function\") {\n logger.info(\"ServiceClient: creating signing policy from provided credentials\");\n authPolicyFactory = signingPolicy(credentials);\n } else if (credentials !== undefined && credentials !== null) {\n throw new Error(\"The credentials argument must implement the TokenCredential interface\");\n }\n\n logger.info(\"ServiceClient: using default request policies\");\n requestPolicyFactories = createDefaultRequestPolicyFactories(authPolicyFactory, options);\n if (options.requestPolicyFactories) {\n // options.requestPolicyFactories can also be a function that manipulates\n // the default requestPolicyFactories array\n const newRequestPolicyFactories: void | RequestPolicyFactory[] =\n options.requestPolicyFactories(requestPolicyFactories);\n if (newRequestPolicyFactories) {\n requestPolicyFactories = newRequestPolicyFactories;\n }\n }\n }\n this._requestPolicyFactories = requestPolicyFactories;\n }\n\n /**\n * Send the provided httpRequest.\n */\n sendRequest(options: RequestPrepareOptions | WebResourceLike): Promise {\n if (options === null || options === undefined || typeof options !== \"object\") {\n throw new Error(\"options cannot be null or undefined and it must be of type object.\");\n }\n\n let httpRequest: WebResourceLike;\n try {\n if (isWebResourceLike(options)) {\n options.validateRequestProperties();\n httpRequest = options;\n } else {\n httpRequest = new WebResource();\n httpRequest = httpRequest.prepare(options);\n }\n } catch (error) {\n return Promise.reject(error);\n }\n\n let httpPipeline: RequestPolicy = this._httpClient;\n if (this._requestPolicyFactories && this._requestPolicyFactories.length > 0) {\n for (let i = this._requestPolicyFactories.length - 1; i >= 0; --i) {\n httpPipeline = this._requestPolicyFactories[i].create(\n httpPipeline,\n this._requestPolicyOptions\n );\n }\n }\n return httpPipeline.sendRequest(httpRequest);\n }\n\n /**\n * Send an HTTP request that is populated using the provided OperationSpec.\n * @param operationArguments - The arguments that the HTTP request's templated values will be populated from.\n * @param operationSpec - The OperationSpec to use to populate the httpRequest.\n * @param callback - The callback to call when the response is received.\n */\n async sendOperationRequest(\n operationArguments: OperationArguments,\n operationSpec: OperationSpec,\n callback?: ServiceCallback\n ): Promise {\n if (typeof operationArguments.options === \"function\") {\n callback = operationArguments.options;\n operationArguments.options = undefined;\n }\n\n const serializerOptions = operationArguments.options?.serializerOptions;\n const httpRequest: WebResourceLike = new WebResource();\n\n let result: Promise;\n try {\n const baseUri: string | undefined = operationSpec.baseUrl || this.baseUri;\n if (!baseUri) {\n throw new Error(\n \"If operationSpec.baseUrl is not specified, then the ServiceClient must have a baseUri string property that contains the base URL to use.\"\n );\n }\n\n httpRequest.method = operationSpec.httpMethod;\n httpRequest.operationSpec = operationSpec;\n\n const requestUrl: URLBuilder = URLBuilder.parse(baseUri);\n if (operationSpec.path) {\n requestUrl.appendPath(operationSpec.path);\n }\n if (operationSpec.urlParameters && operationSpec.urlParameters.length > 0) {\n for (const urlParameter of operationSpec.urlParameters) {\n let urlParameterValue: string = getOperationArgumentValueFromParameter(\n this,\n operationArguments,\n urlParameter,\n operationSpec.serializer\n );\n urlParameterValue = operationSpec.serializer.serialize(\n urlParameter.mapper,\n urlParameterValue,\n getPathStringFromParameter(urlParameter),\n serializerOptions\n );\n if (!urlParameter.skipEncoding) {\n urlParameterValue = encodeURIComponent(urlParameterValue);\n }\n requestUrl.replaceAll(\n `{${urlParameter.mapper.serializedName || getPathStringFromParameter(urlParameter)}}`,\n urlParameterValue\n );\n }\n }\n if (operationSpec.queryParameters && operationSpec.queryParameters.length > 0) {\n for (const queryParameter of operationSpec.queryParameters) {\n let queryParameterValue: any = getOperationArgumentValueFromParameter(\n this,\n operationArguments,\n queryParameter,\n operationSpec.serializer\n );\n if (queryParameterValue !== undefined && queryParameterValue !== null) {\n queryParameterValue = operationSpec.serializer.serialize(\n queryParameter.mapper,\n queryParameterValue,\n getPathStringFromParameter(queryParameter),\n serializerOptions\n );\n if (\n queryParameter.collectionFormat !== undefined &&\n queryParameter.collectionFormat !== null\n ) {\n if (queryParameter.collectionFormat === QueryCollectionFormat.Multi) {\n if (queryParameterValue.length === 0) {\n // The collection is empty, no need to try serializing the current queryParam\n continue;\n } else {\n for (const index in queryParameterValue) {\n const item = queryParameterValue[index];\n queryParameterValue[index] =\n item === undefined || item === null ? \"\" : item.toString();\n }\n }\n } else if (\n queryParameter.collectionFormat === QueryCollectionFormat.Ssv ||\n queryParameter.collectionFormat === QueryCollectionFormat.Tsv\n ) {\n queryParameterValue = queryParameterValue.join(queryParameter.collectionFormat);\n }\n }\n if (!queryParameter.skipEncoding) {\n if (Array.isArray(queryParameterValue)) {\n for (const index in queryParameterValue) {\n if (\n queryParameterValue[index] !== undefined &&\n queryParameterValue[index] !== null\n ) {\n queryParameterValue[index] = encodeURIComponent(queryParameterValue[index]);\n }\n }\n } else {\n queryParameterValue = encodeURIComponent(queryParameterValue);\n }\n }\n if (\n queryParameter.collectionFormat !== undefined &&\n queryParameter.collectionFormat !== null &&\n queryParameter.collectionFormat !== QueryCollectionFormat.Multi &&\n queryParameter.collectionFormat !== QueryCollectionFormat.Ssv &&\n queryParameter.collectionFormat !== QueryCollectionFormat.Tsv\n ) {\n queryParameterValue = queryParameterValue.join(queryParameter.collectionFormat);\n }\n requestUrl.setQueryParameter(\n queryParameter.mapper.serializedName || getPathStringFromParameter(queryParameter),\n queryParameterValue\n );\n }\n }\n }\n httpRequest.url = requestUrl.toString();\n\n const contentType = operationSpec.contentType || this.requestContentType;\n if (contentType && operationSpec.requestBody) {\n httpRequest.headers.set(\"Content-Type\", contentType);\n }\n\n if (operationSpec.headerParameters) {\n for (const headerParameter of operationSpec.headerParameters) {\n let headerValue: any = getOperationArgumentValueFromParameter(\n this,\n operationArguments,\n headerParameter,\n operationSpec.serializer\n );\n if (headerValue !== undefined && headerValue !== null) {\n headerValue = operationSpec.serializer.serialize(\n headerParameter.mapper,\n headerValue,\n getPathStringFromParameter(headerParameter),\n serializerOptions\n );\n const headerCollectionPrefix = (headerParameter.mapper as DictionaryMapper)\n .headerCollectionPrefix;\n if (headerCollectionPrefix) {\n for (const key of Object.keys(headerValue)) {\n httpRequest.headers.set(headerCollectionPrefix + key, headerValue[key]);\n }\n } else {\n httpRequest.headers.set(\n headerParameter.mapper.serializedName ||\n getPathStringFromParameter(headerParameter),\n headerValue\n );\n }\n }\n }\n }\n\n const options: RequestOptionsBase | undefined = operationArguments.options;\n if (options) {\n if (options.customHeaders) {\n for (const customHeaderName in options.customHeaders) {\n httpRequest.headers.set(customHeaderName, options.customHeaders[customHeaderName]);\n }\n }\n\n if (options.abortSignal) {\n httpRequest.abortSignal = options.abortSignal;\n }\n\n if (options.timeout) {\n httpRequest.timeout = options.timeout;\n }\n\n if (options.onUploadProgress) {\n httpRequest.onUploadProgress = options.onUploadProgress;\n }\n\n if (options.onDownloadProgress) {\n httpRequest.onDownloadProgress = options.onDownloadProgress;\n }\n\n if (options.spanOptions) {\n // By passing spanOptions if they exist at runtime, we're backwards compatible with @azure/core-tracing@preview.13 and earlier.\n (httpRequest as any).spanOptions = options.spanOptions;\n }\n\n if (options.tracingContext) {\n httpRequest.tracingContext = options.tracingContext;\n }\n\n if (options.shouldDeserialize !== undefined && options.shouldDeserialize !== null) {\n httpRequest.shouldDeserialize = options.shouldDeserialize;\n }\n }\n\n httpRequest.withCredentials = this._withCredentials;\n\n serializeRequestBody(this, httpRequest, operationArguments, operationSpec);\n\n if (httpRequest.streamResponseStatusCodes === undefined) {\n httpRequest.streamResponseStatusCodes = getStreamResponseStatusCodes(operationSpec);\n }\n\n let rawResponse: HttpOperationResponse;\n let sendRequestError;\n try {\n rawResponse = await this.sendRequest(httpRequest);\n } catch (error) {\n sendRequestError = error;\n }\n if (sendRequestError) {\n if (sendRequestError.response) {\n sendRequestError.details = flattenResponse(\n sendRequestError.response,\n operationSpec.responses[sendRequestError.statusCode] ||\n operationSpec.responses[\"default\"]\n );\n }\n result = Promise.reject(sendRequestError);\n } else {\n result = Promise.resolve(\n flattenResponse(rawResponse!, operationSpec.responses[rawResponse!.status])\n );\n }\n } catch (error) {\n result = Promise.reject(error);\n }\n\n const cb = callback;\n if (cb) {\n result\n .then((res) => cb(null, res._response.parsedBody, res._response.request, res._response))\n .catch((err) => cb(err));\n }\n\n return result;\n }\n}\n\nexport function serializeRequestBody(\n serviceClient: ServiceClient,\n httpRequest: WebResourceLike,\n operationArguments: OperationArguments,\n operationSpec: OperationSpec\n): void {\n const serializerOptions = operationArguments.options?.serializerOptions ?? {};\n const updatedOptions: Required = {\n rootName: serializerOptions.rootName ?? \"\",\n includeRoot: serializerOptions.includeRoot ?? false,\n xmlCharKey: serializerOptions.xmlCharKey ?? XML_CHARKEY,\n };\n\n const xmlCharKey = serializerOptions.xmlCharKey;\n if (operationSpec.requestBody && operationSpec.requestBody.mapper) {\n httpRequest.body = getOperationArgumentValueFromParameter(\n serviceClient,\n operationArguments,\n operationSpec.requestBody,\n operationSpec.serializer\n );\n\n const bodyMapper = operationSpec.requestBody.mapper;\n const { required, xmlName, xmlElementName, serializedName, xmlNamespace, xmlNamespacePrefix } =\n bodyMapper;\n const typeName = bodyMapper.type.name;\n\n try {\n if ((httpRequest.body !== undefined && httpRequest.body !== null) || required) {\n const requestBodyParameterPathString: string = getPathStringFromParameter(\n operationSpec.requestBody\n );\n httpRequest.body = operationSpec.serializer.serialize(\n bodyMapper,\n httpRequest.body,\n requestBodyParameterPathString,\n updatedOptions\n );\n\n const isStream = typeName === MapperType.Stream;\n\n if (operationSpec.isXML) {\n const xmlnsKey = xmlNamespacePrefix ? `xmlns:${xmlNamespacePrefix}` : \"xmlns\";\n const value = getXmlValueWithNamespace(\n xmlNamespace,\n xmlnsKey,\n typeName,\n httpRequest.body,\n updatedOptions\n );\n if (typeName === MapperType.Sequence) {\n httpRequest.body = stringifyXML(\n utils.prepareXMLRootList(\n value,\n xmlElementName || xmlName || serializedName!,\n xmlnsKey,\n xmlNamespace\n ),\n {\n rootName: xmlName || serializedName,\n xmlCharKey,\n }\n );\n } else if (!isStream) {\n httpRequest.body = stringifyXML(value, {\n rootName: xmlName || serializedName,\n xmlCharKey,\n });\n }\n } else if (\n typeName === MapperType.String &&\n (operationSpec.contentType?.match(\"text/plain\") || operationSpec.mediaType === \"text\")\n ) {\n // the String serializer has validated that request body is a string\n // so just send the string.\n return;\n } else if (!isStream) {\n httpRequest.body = JSON.stringify(httpRequest.body);\n }\n }\n } catch (error) {\n throw new Error(\n `Error \"${error.message}\" occurred in serializing the payload - ${JSON.stringify(\n serializedName,\n undefined,\n \" \"\n )}.`\n );\n }\n } else if (operationSpec.formDataParameters && operationSpec.formDataParameters.length > 0) {\n httpRequest.formData = {};\n for (const formDataParameter of operationSpec.formDataParameters) {\n const formDataParameterValue: any = getOperationArgumentValueFromParameter(\n serviceClient,\n operationArguments,\n formDataParameter,\n operationSpec.serializer\n );\n if (formDataParameterValue !== undefined && formDataParameterValue !== null) {\n const formDataParameterPropertyName: string =\n formDataParameter.mapper.serializedName || getPathStringFromParameter(formDataParameter);\n httpRequest.formData[formDataParameterPropertyName] = operationSpec.serializer.serialize(\n formDataParameter.mapper,\n formDataParameterValue,\n getPathStringFromParameter(formDataParameter),\n updatedOptions\n );\n }\n }\n }\n}\n\n/**\n * Adds an xml namespace to the xml serialized object if needed, otherwise it just returns the value itself\n */\nfunction getXmlValueWithNamespace(\n xmlNamespace: string | undefined,\n xmlnsKey: string,\n typeName: string,\n serializedValue: any,\n options: Required\n): any {\n // Composite and Sequence schemas already got their root namespace set during serialization\n // We just need to add xmlns to the other schema types\n if (xmlNamespace && ![\"Composite\", \"Sequence\", \"Dictionary\"].includes(typeName)) {\n const result: any = {};\n result[options.xmlCharKey] = serializedValue;\n result[XML_ATTRKEY] = { [xmlnsKey]: xmlNamespace };\n return result;\n }\n\n return serializedValue;\n}\n\nfunction getValueOrFunctionResult(\n value: undefined | string | ((defaultValue: string) => string),\n defaultValueCreator: () => string\n): string {\n let result: string;\n if (typeof value === \"string\") {\n result = value;\n } else {\n result = defaultValueCreator();\n if (typeof value === \"function\") {\n result = value(result);\n }\n }\n return result;\n}\n\nfunction createDefaultRequestPolicyFactories(\n authPolicyFactory: RequestPolicyFactory | undefined,\n options: ServiceClientOptions\n): RequestPolicyFactory[] {\n const factories: RequestPolicyFactory[] = [];\n\n if (options.generateClientRequestIdHeader) {\n factories.push(generateClientRequestIdPolicy(options.clientRequestIdHeaderName));\n }\n\n if (authPolicyFactory) {\n factories.push(authPolicyFactory);\n }\n\n const userAgentHeaderName: string = getValueOrFunctionResult(\n options.userAgentHeaderName,\n getDefaultUserAgentHeaderName\n );\n const userAgentHeaderValue: string = getValueOrFunctionResult(\n options.userAgent,\n getDefaultUserAgentValue\n );\n if (userAgentHeaderName && userAgentHeaderValue) {\n factories.push(userAgentPolicy({ key: userAgentHeaderName, value: userAgentHeaderValue }));\n }\n factories.push(redirectPolicy());\n factories.push(rpRegistrationPolicy(options.rpRegistrationRetryTimeout));\n\n if (!options.noRetryPolicy) {\n factories.push(exponentialRetryPolicy());\n factories.push(systemErrorRetryPolicy());\n factories.push(throttlingRetryPolicy());\n }\n\n factories.push(deserializationPolicy(options.deserializationContentTypes));\n\n if (isNode) {\n factories.push(proxyPolicy(options.proxySettings));\n }\n\n factories.push(logPolicy({ logger: logger.info }));\n\n return factories;\n}\n\n/**\n * Creates an HTTP pipeline based on the given options.\n * @param pipelineOptions - Defines options that are used to configure policies in the HTTP pipeline for an SDK client.\n * @param authPolicyFactory - An optional authentication policy factory to use for signing requests.\n * @returns A set of options that can be passed to create a new {@link ServiceClient}.\n */\nexport function createPipelineFromOptions(\n pipelineOptions: InternalPipelineOptions,\n authPolicyFactory?: RequestPolicyFactory\n): ServiceClientOptions {\n const requestPolicyFactories: RequestPolicyFactory[] = [];\n\n if (pipelineOptions.sendStreamingJson) {\n requestPolicyFactories.push(ndJsonPolicy());\n }\n\n let userAgentValue = undefined;\n if (pipelineOptions.userAgentOptions && pipelineOptions.userAgentOptions.userAgentPrefix) {\n const userAgentInfo: string[] = [];\n userAgentInfo.push(pipelineOptions.userAgentOptions.userAgentPrefix);\n\n // Add the default user agent value if it isn't already specified\n // by the userAgentPrefix option.\n const defaultUserAgentInfo = getDefaultUserAgentValue();\n if (userAgentInfo.indexOf(defaultUserAgentInfo) === -1) {\n userAgentInfo.push(defaultUserAgentInfo);\n }\n\n userAgentValue = userAgentInfo.join(\" \");\n }\n\n const keepAliveOptions = {\n ...DefaultKeepAliveOptions,\n ...pipelineOptions.keepAliveOptions,\n };\n\n const retryOptions = {\n ...DefaultRetryOptions,\n ...pipelineOptions.retryOptions,\n };\n\n const redirectOptions = {\n ...DefaultRedirectOptions,\n ...pipelineOptions.redirectOptions,\n };\n\n if (isNode) {\n requestPolicyFactories.push(proxyPolicy(pipelineOptions.proxyOptions));\n }\n\n const deserializationOptions = {\n ...DefaultDeserializationOptions,\n ...pipelineOptions.deserializationOptions,\n };\n\n const loggingOptions: LogPolicyOptions = {\n ...pipelineOptions.loggingOptions,\n };\n\n requestPolicyFactories.push(\n tracingPolicy({ userAgent: userAgentValue }),\n keepAlivePolicy(keepAliveOptions),\n userAgentPolicy({ value: userAgentValue }),\n generateClientRequestIdPolicy(),\n deserializationPolicy(deserializationOptions.expectedContentTypes),\n throttlingRetryPolicy(),\n systemErrorRetryPolicy(),\n exponentialRetryPolicy(\n retryOptions.maxRetries,\n retryOptions.retryDelayInMs,\n retryOptions.maxRetryDelayInMs\n )\n );\n\n if (redirectOptions.handleRedirects) {\n requestPolicyFactories.push(redirectPolicy(redirectOptions.maxRetries));\n }\n\n if (authPolicyFactory) {\n requestPolicyFactories.push(authPolicyFactory);\n }\n\n requestPolicyFactories.push(logPolicy(loggingOptions));\n\n if (isNode && pipelineOptions.decompressResponse === false) {\n requestPolicyFactories.push(disableResponseDecompressionPolicy());\n }\n\n return {\n httpClient: pipelineOptions.httpClient,\n requestPolicyFactories,\n };\n}\n\nexport type PropertyParent = { [propertyName: string]: any };\n\n/**\n * Get the property parent for the property at the provided path when starting with the provided\n * parent object.\n */\nexport function getPropertyParent(parent: PropertyParent, propertyPath: string[]): PropertyParent {\n if (parent && propertyPath) {\n const propertyPathLength: number = propertyPath.length;\n for (let i = 0; i < propertyPathLength - 1; ++i) {\n const propertyName: string = propertyPath[i];\n if (!parent[propertyName]) {\n parent[propertyName] = {};\n }\n parent = parent[propertyName];\n }\n }\n return parent;\n}\n\nfunction getOperationArgumentValueFromParameter(\n serviceClient: ServiceClient,\n operationArguments: OperationArguments,\n parameter: OperationParameter,\n serializer: Serializer\n): any {\n return getOperationArgumentValueFromParameterPath(\n serviceClient,\n operationArguments,\n parameter.parameterPath,\n parameter.mapper,\n serializer\n );\n}\n\nexport function getOperationArgumentValueFromParameterPath(\n serviceClient: ServiceClient,\n operationArguments: OperationArguments,\n parameterPath: ParameterPath,\n parameterMapper: Mapper,\n serializer: Serializer\n): any {\n let value: any;\n if (typeof parameterPath === \"string\") {\n parameterPath = [parameterPath];\n }\n const serializerOptions = operationArguments.options?.serializerOptions;\n if (Array.isArray(parameterPath)) {\n if (parameterPath.length > 0) {\n if (parameterMapper.isConstant) {\n value = parameterMapper.defaultValue;\n } else {\n let propertySearchResult: PropertySearchResult = getPropertyFromParameterPath(\n operationArguments,\n parameterPath\n );\n if (!propertySearchResult.propertyFound) {\n propertySearchResult = getPropertyFromParameterPath(serviceClient, parameterPath);\n }\n\n let useDefaultValue = false;\n if (!propertySearchResult.propertyFound) {\n useDefaultValue =\n parameterMapper.required ||\n (parameterPath[0] === \"options\" && parameterPath.length === 2);\n }\n value = useDefaultValue ? parameterMapper.defaultValue : propertySearchResult.propertyValue;\n }\n\n // Serialize just for validation purposes.\n const parameterPathString: string = getPathStringFromParameterPath(\n parameterPath,\n parameterMapper\n );\n serializer.serialize(parameterMapper, value, parameterPathString, serializerOptions);\n }\n } else {\n if (parameterMapper.required) {\n value = {};\n }\n\n for (const propertyName in parameterPath) {\n const propertyMapper: Mapper = (parameterMapper as CompositeMapper).type.modelProperties![\n propertyName\n ];\n const propertyPath: ParameterPath = parameterPath[propertyName];\n const propertyValue: any = getOperationArgumentValueFromParameterPath(\n serviceClient,\n operationArguments,\n propertyPath,\n propertyMapper,\n serializer\n );\n // Serialize just for validation purposes.\n const propertyPathString: string = getPathStringFromParameterPath(\n propertyPath,\n propertyMapper\n );\n serializer.serialize(propertyMapper, propertyValue, propertyPathString, serializerOptions);\n if (propertyValue !== undefined && propertyValue !== null) {\n if (!value) {\n value = {};\n }\n value[propertyName] = propertyValue;\n }\n }\n }\n return value;\n}\n\ninterface PropertySearchResult {\n propertyValue?: any;\n propertyFound: boolean;\n}\n\nfunction getPropertyFromParameterPath(\n parent: { [parameterName: string]: any },\n parameterPath: string[]\n): PropertySearchResult {\n const result: PropertySearchResult = { propertyFound: false };\n let i = 0;\n for (; i < parameterPath.length; ++i) {\n const parameterPathPart: string = parameterPath[i];\n // Make sure to check inherited properties too, so don't use hasOwnProperty().\n if (parent !== undefined && parent !== null && parameterPathPart in parent) {\n parent = parent[parameterPathPart];\n } else {\n break;\n }\n }\n if (i === parameterPath.length) {\n result.propertyValue = parent;\n result.propertyFound = true;\n }\n return result;\n}\n\n/**\n * Parses an {@link HttpOperationResponse} into a normalized HTTP response object ({@link RestResponse}).\n * @param _response - Wrapper object for http response.\n * @param responseSpec - Mappers for how to parse the response properties.\n * @returns - A normalized response object.\n */\nexport function flattenResponse(\n _response: HttpOperationResponse,\n responseSpec: OperationResponse | undefined\n): RestResponse {\n const parsedHeaders = _response.parsedHeaders;\n const bodyMapper = responseSpec && responseSpec.bodyMapper;\n\n const addOperationResponse = (\n obj: Record\n ): {\n _response: HttpOperationResponse;\n } => {\n return Object.defineProperty(obj, \"_response\", {\n value: _response,\n });\n };\n\n if (bodyMapper) {\n const typeName = bodyMapper.type.name;\n if (typeName === \"Stream\") {\n return addOperationResponse({\n ...parsedHeaders,\n blobBody: _response.blobBody,\n readableStreamBody: _response.readableStreamBody,\n });\n }\n\n const modelProperties =\n (typeName === \"Composite\" && (bodyMapper as CompositeMapper).type.modelProperties) || {};\n const isPageableResponse = Object.keys(modelProperties).some(\n (k) => modelProperties[k].serializedName === \"\"\n );\n if (typeName === \"Sequence\" || isPageableResponse) {\n const arrayResponse = [...(_response.parsedBody || [])] as RestResponse & any[];\n\n for (const key of Object.keys(modelProperties)) {\n if (modelProperties[key].serializedName) {\n arrayResponse[key] = _response.parsedBody[key];\n }\n }\n\n if (parsedHeaders) {\n for (const key of Object.keys(parsedHeaders)) {\n arrayResponse[key] = parsedHeaders[key];\n }\n }\n addOperationResponse(arrayResponse);\n return arrayResponse;\n }\n\n if (typeName === \"Composite\" || typeName === \"Dictionary\") {\n return addOperationResponse({\n ...parsedHeaders,\n ..._response.parsedBody,\n });\n }\n }\n\n if (\n bodyMapper ||\n _response.request.method === \"HEAD\" ||\n utils.isPrimitiveType(_response.parsedBody)\n ) {\n // primitive body types and HEAD booleans\n return addOperationResponse({\n ...parsedHeaders,\n body: _response.parsedBody,\n });\n }\n\n return addOperationResponse({\n ...parsedHeaders,\n ..._response.parsedBody,\n });\n}\n\nfunction getCredentialScopes(\n options?: ServiceClientOptions,\n baseUri?: string\n): string | string[] | undefined {\n if (options?.credentialScopes) {\n const scopes = options.credentialScopes;\n return Array.isArray(scopes)\n ? scopes.map((scope) => new URL(scope).toString())\n : new URL(scopes).toString();\n }\n\n if (baseUri) {\n return `${baseUri}/.default`;\n }\n return undefined;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/* eslint-disable eqeqeq */\n\nimport * as base64 from \"./util/base64\";\nimport * as utils from \"./util/utils\";\nimport { SerializerOptions, XML_ATTRKEY, XML_CHARKEY } from \"./util/serializer.common\";\n\n// This file contains utility code to serialize and deserialize network operations according to `OperationSpec` objects generated by AutoRest.TypeScript from OpenAPI specifications.\n\n/**\n * Used to map raw response objects to final shapes.\n * Helps packing and unpacking Dates and other encoded types that are not intrinsic to JSON.\n * Also allows pulling values from headers, as well as inserting default values and constants.\n */\nexport class Serializer {\n constructor(\n /**\n * The provided model mapper.\n */\n public readonly modelMappers: { [key: string]: any } = {},\n /**\n * Whether the contents are XML or not.\n */\n public readonly isXML?: boolean\n ) {}\n\n /**\n * Validates constraints, if any. This function will throw if the provided value does not respect those constraints.\n * @param mapper - The definition of data models.\n * @param value - The value.\n * @param objectName - Name of the object. Used in the error messages.\n */\n validateConstraints(mapper: Mapper, value: unknown, objectName: string): void {\n const failValidation = (\n constraintName: keyof MapperConstraints,\n constraintValue: any\n ): Error => {\n throw new Error(\n `\"${objectName}\" with value \"${value}\" should satisfy the constraint \"${constraintName}\": ${constraintValue}.`\n );\n };\n if (mapper.constraints && value != undefined) {\n const valueAsNumber = value as number;\n const {\n ExclusiveMaximum,\n ExclusiveMinimum,\n InclusiveMaximum,\n InclusiveMinimum,\n MaxItems,\n MaxLength,\n MinItems,\n MinLength,\n MultipleOf,\n Pattern,\n UniqueItems,\n } = mapper.constraints;\n if (ExclusiveMaximum != undefined && valueAsNumber >= ExclusiveMaximum) {\n failValidation(\"ExclusiveMaximum\", ExclusiveMaximum);\n }\n if (ExclusiveMinimum != undefined && valueAsNumber <= ExclusiveMinimum) {\n failValidation(\"ExclusiveMinimum\", ExclusiveMinimum);\n }\n if (InclusiveMaximum != undefined && valueAsNumber > InclusiveMaximum) {\n failValidation(\"InclusiveMaximum\", InclusiveMaximum);\n }\n if (InclusiveMinimum != undefined && valueAsNumber < InclusiveMinimum) {\n failValidation(\"InclusiveMinimum\", InclusiveMinimum);\n }\n const valueAsArray = value as any[];\n if (MaxItems != undefined && valueAsArray.length > MaxItems) {\n failValidation(\"MaxItems\", MaxItems);\n }\n if (MaxLength != undefined && valueAsArray.length > MaxLength) {\n failValidation(\"MaxLength\", MaxLength);\n }\n if (MinItems != undefined && valueAsArray.length < MinItems) {\n failValidation(\"MinItems\", MinItems);\n }\n if (MinLength != undefined && valueAsArray.length < MinLength) {\n failValidation(\"MinLength\", MinLength);\n }\n if (MultipleOf != undefined && valueAsNumber % MultipleOf !== 0) {\n failValidation(\"MultipleOf\", MultipleOf);\n }\n if (Pattern) {\n const pattern: RegExp = typeof Pattern === \"string\" ? new RegExp(Pattern) : Pattern;\n if (typeof value !== \"string\" || value.match(pattern) === null) {\n failValidation(\"Pattern\", Pattern);\n }\n }\n if (\n UniqueItems &&\n valueAsArray.some((item: any, i: number, ar: Array) => ar.indexOf(item) !== i)\n ) {\n failValidation(\"UniqueItems\", UniqueItems);\n }\n }\n }\n\n /**\n * Serialize the given object based on its metadata defined in the mapper.\n *\n * @param mapper - The mapper which defines the metadata of the serializable object.\n * @param object - A valid Javascript object to be serialized.\n * @param objectName - Name of the serialized object.\n * @param options - additional options to deserialization.\n * @returns A valid serialized Javascript object.\n */\n serialize(\n mapper: Mapper,\n object: unknown,\n objectName?: string,\n options: SerializerOptions = {}\n ): any {\n const updatedOptions: Required = {\n rootName: options.rootName ?? \"\",\n includeRoot: options.includeRoot ?? false,\n xmlCharKey: options.xmlCharKey ?? XML_CHARKEY,\n };\n let payload: any = {};\n const mapperType = mapper.type.name as string;\n if (!objectName) {\n objectName = mapper.serializedName!;\n }\n if (mapperType.match(/^Sequence$/i) !== null) {\n payload = [];\n }\n\n if (mapper.isConstant) {\n object = mapper.defaultValue;\n }\n\n // This table of allowed values should help explain\n // the mapper.required and mapper.nullable properties.\n // X means \"neither undefined or null are allowed\".\n // || required\n // || true | false\n // nullable || ==========================\n // true || null | undefined/null\n // false || X | undefined\n // undefined || X | undefined/null\n\n const { required, nullable } = mapper;\n\n if (required && nullable && object === undefined) {\n throw new Error(`${objectName} cannot be undefined.`);\n }\n if (required && !nullable && object == undefined) {\n throw new Error(`${objectName} cannot be null or undefined.`);\n }\n if (!required && nullable === false && object === null) {\n throw new Error(`${objectName} cannot be null.`);\n }\n\n if (object == undefined) {\n payload = object;\n } else {\n // Validate Constraints if any\n this.validateConstraints(mapper, object, objectName);\n if (mapperType.match(/^any$/i) !== null) {\n payload = object;\n } else if (mapperType.match(/^(Number|String|Boolean|Object|Stream|Uuid)$/i) !== null) {\n payload = serializeBasicTypes(mapperType, objectName, object);\n } else if (mapperType.match(/^Enum$/i) !== null) {\n const enumMapper: EnumMapper = mapper as EnumMapper;\n payload = serializeEnumType(objectName, enumMapper.type.allowedValues, object);\n } else if (\n mapperType.match(/^(Date|DateTime|TimeSpan|DateTimeRfc1123|UnixTime)$/i) !== null\n ) {\n payload = serializeDateTypes(mapperType, object, objectName);\n } else if (mapperType.match(/^ByteArray$/i) !== null) {\n payload = serializeByteArrayType(objectName, object as Uint8Array);\n } else if (mapperType.match(/^Base64Url$/i) !== null) {\n payload = serializeBase64UrlType(objectName, object as Uint8Array);\n } else if (mapperType.match(/^Sequence$/i) !== null) {\n payload = serializeSequenceType(\n this,\n mapper as SequenceMapper,\n object,\n objectName,\n Boolean(this.isXML),\n updatedOptions\n );\n } else if (mapperType.match(/^Dictionary$/i) !== null) {\n payload = serializeDictionaryType(\n this,\n mapper as DictionaryMapper,\n object,\n objectName,\n Boolean(this.isXML),\n updatedOptions\n );\n } else if (mapperType.match(/^Composite$/i) !== null) {\n payload = serializeCompositeType(\n this,\n mapper as CompositeMapper,\n object,\n objectName,\n Boolean(this.isXML),\n updatedOptions\n );\n }\n }\n return payload;\n }\n\n /**\n * Deserialize the given object based on its metadata defined in the mapper.\n *\n * @param mapper - The mapper which defines the metadata of the serializable object.\n * @param responseBody - A valid Javascript entity to be deserialized.\n * @param objectName - Name of the deserialized object.\n * @param options - Controls behavior of XML parser and builder.\n * @returns A valid deserialized Javascript object.\n */\n deserialize(\n mapper: Mapper,\n responseBody: unknown,\n objectName: string,\n options: SerializerOptions = {}\n ): any {\n const updatedOptions: Required = {\n rootName: options.rootName ?? \"\",\n includeRoot: options.includeRoot ?? false,\n xmlCharKey: options.xmlCharKey ?? XML_CHARKEY,\n };\n if (responseBody == undefined) {\n if (this.isXML && mapper.type.name === \"Sequence\" && !mapper.xmlIsWrapped) {\n // Edge case for empty XML non-wrapped lists. xml2js can't distinguish\n // between the list being empty versus being missing,\n // so let's do the more user-friendly thing and return an empty list.\n responseBody = [];\n }\n // specifically check for undefined as default value can be a falsey value `0, \"\", false, null`\n if (mapper.defaultValue !== undefined) {\n responseBody = mapper.defaultValue;\n }\n return responseBody;\n }\n\n let payload: any;\n const mapperType = mapper.type.name;\n if (!objectName) {\n objectName = mapper.serializedName!;\n }\n\n if (mapperType.match(/^Composite$/i) !== null) {\n payload = deserializeCompositeType(\n this,\n mapper as CompositeMapper,\n responseBody,\n objectName,\n updatedOptions\n );\n } else {\n if (this.isXML) {\n const xmlCharKey = updatedOptions.xmlCharKey;\n const castResponseBody = responseBody as Record;\n /**\n * If the mapper specifies this as a non-composite type value but the responseBody contains\n * both header (\"$\" i.e., XML_ATTRKEY) and body (\"#\" i.e., XML_CHARKEY) properties,\n * then just reduce the responseBody value to the body (\"#\" i.e., XML_CHARKEY) property.\n */\n if (\n castResponseBody[XML_ATTRKEY] != undefined &&\n castResponseBody[xmlCharKey] != undefined\n ) {\n responseBody = castResponseBody[xmlCharKey];\n }\n }\n\n if (mapperType.match(/^Number$/i) !== null) {\n payload = parseFloat(responseBody as string);\n if (isNaN(payload)) {\n payload = responseBody;\n }\n } else if (mapperType.match(/^Boolean$/i) !== null) {\n if (responseBody === \"true\") {\n payload = true;\n } else if (responseBody === \"false\") {\n payload = false;\n } else {\n payload = responseBody;\n }\n } else if (mapperType.match(/^(String|Enum|Object|Stream|Uuid|TimeSpan|any)$/i) !== null) {\n payload = responseBody;\n } else if (mapperType.match(/^(Date|DateTime|DateTimeRfc1123)$/i) !== null) {\n payload = new Date(responseBody as string);\n } else if (mapperType.match(/^UnixTime$/i) !== null) {\n payload = unixTimeToDate(responseBody as number);\n } else if (mapperType.match(/^ByteArray$/i) !== null) {\n payload = base64.decodeString(responseBody as string);\n } else if (mapperType.match(/^Base64Url$/i) !== null) {\n payload = base64UrlToByteArray(responseBody as string);\n } else if (mapperType.match(/^Sequence$/i) !== null) {\n payload = deserializeSequenceType(\n this,\n mapper as SequenceMapper,\n responseBody,\n objectName,\n updatedOptions\n );\n } else if (mapperType.match(/^Dictionary$/i) !== null) {\n payload = deserializeDictionaryType(\n this,\n mapper as DictionaryMapper,\n responseBody,\n objectName,\n updatedOptions\n );\n }\n }\n\n if (mapper.isConstant) {\n payload = mapper.defaultValue;\n }\n\n return payload;\n }\n}\n\nfunction trimEnd(str: string, ch: string): string {\n let len = str.length;\n while (len - 1 >= 0 && str[len - 1] === ch) {\n --len;\n }\n return str.substr(0, len);\n}\n\nfunction bufferToBase64Url(buffer: any): string | undefined {\n if (!buffer) {\n return undefined;\n }\n if (!(buffer instanceof Uint8Array)) {\n throw new Error(`Please provide an input of type Uint8Array for converting to Base64Url.`);\n }\n // Uint8Array to Base64.\n const str = base64.encodeByteArray(buffer);\n // Base64 to Base64Url.\n return trimEnd(str, \"=\").replace(/\\+/g, \"-\").replace(/\\//g, \"_\");\n}\n\nfunction base64UrlToByteArray(str: string): Uint8Array | undefined {\n if (!str) {\n return undefined;\n }\n if (str && typeof str.valueOf() !== \"string\") {\n throw new Error(\"Please provide an input of type string for converting to Uint8Array\");\n }\n // Base64Url to Base64.\n str = str.replace(/-/g, \"+\").replace(/_/g, \"/\");\n // Base64 to Uint8Array.\n return base64.decodeString(str);\n}\n\nfunction splitSerializeName(prop: string | undefined): string[] {\n const classes: string[] = [];\n let partialclass = \"\";\n if (prop) {\n const subwords = prop.split(\".\");\n\n for (const item of subwords) {\n if (item.charAt(item.length - 1) === \"\\\\\") {\n partialclass += item.substr(0, item.length - 1) + \".\";\n } else {\n partialclass += item;\n classes.push(partialclass);\n partialclass = \"\";\n }\n }\n }\n\n return classes;\n}\n\nfunction dateToUnixTime(d: string | Date): number | undefined {\n if (!d) {\n return undefined;\n }\n\n if (typeof d.valueOf() === \"string\") {\n d = new Date(d as string);\n }\n return Math.floor((d as Date).getTime() / 1000);\n}\n\nfunction unixTimeToDate(n: number): Date | undefined {\n if (!n) {\n return undefined;\n }\n return new Date(n * 1000);\n}\n\nfunction serializeBasicTypes(typeName: string, objectName: string, value: any): any {\n if (value !== null && value !== undefined) {\n if (typeName.match(/^Number$/i) !== null) {\n if (typeof value !== \"number\") {\n throw new Error(`${objectName} with value ${value} must be of type number.`);\n }\n } else if (typeName.match(/^String$/i) !== null) {\n if (typeof value.valueOf() !== \"string\") {\n throw new Error(`${objectName} with value \"${value}\" must be of type string.`);\n }\n } else if (typeName.match(/^Uuid$/i) !== null) {\n if (!(typeof value.valueOf() === \"string\" && utils.isValidUuid(value))) {\n throw new Error(\n `${objectName} with value \"${value}\" must be of type string and a valid uuid.`\n );\n }\n } else if (typeName.match(/^Boolean$/i) !== null) {\n if (typeof value !== \"boolean\") {\n throw new Error(`${objectName} with value ${value} must be of type boolean.`);\n }\n } else if (typeName.match(/^Stream$/i) !== null) {\n const objectType = typeof value;\n if (\n objectType !== \"string\" &&\n objectType !== \"function\" &&\n !(value instanceof ArrayBuffer) &&\n !ArrayBuffer.isView(value) &&\n !((typeof Blob === \"function\" || typeof Blob === \"object\") && value instanceof Blob)\n ) {\n throw new Error(\n `${objectName} must be a string, Blob, ArrayBuffer, ArrayBufferView, or a function returning NodeJS.ReadableStream.`\n );\n }\n }\n }\n\n return value;\n}\n\nfunction serializeEnumType(objectName: string, allowedValues: Array, value: any): any {\n if (!allowedValues) {\n throw new Error(\n `Please provide a set of allowedValues to validate ${objectName} as an Enum Type.`\n );\n }\n const isPresent = allowedValues.some((item) => {\n if (typeof item.valueOf() === \"string\") {\n return item.toLowerCase() === value.toLowerCase();\n }\n return item === value;\n });\n if (!isPresent) {\n throw new Error(\n `${value} is not a valid value for ${objectName}. The valid values are: ${JSON.stringify(\n allowedValues\n )}.`\n );\n }\n return value;\n}\n\nfunction serializeByteArrayType(objectName: string, value: Uint8Array): string {\n let returnValue: string = \"\";\n if (value != undefined) {\n if (!(value instanceof Uint8Array)) {\n throw new Error(`${objectName} must be of type Uint8Array.`);\n }\n returnValue = base64.encodeByteArray(value);\n }\n return returnValue;\n}\n\nfunction serializeBase64UrlType(objectName: string, value: Uint8Array): string {\n let returnValue: string = \"\";\n if (value != undefined) {\n if (!(value instanceof Uint8Array)) {\n throw new Error(`${objectName} must be of type Uint8Array.`);\n }\n returnValue = bufferToBase64Url(value) || \"\";\n }\n return returnValue;\n}\n\nfunction serializeDateTypes(typeName: string, value: any, objectName: string): any {\n if (value != undefined) {\n if (typeName.match(/^Date$/i) !== null) {\n if (\n !(\n value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value)))\n )\n ) {\n throw new Error(`${objectName} must be an instanceof Date or a string in ISO8601 format.`);\n }\n value =\n value instanceof Date\n ? value.toISOString().substring(0, 10)\n : new Date(value).toISOString().substring(0, 10);\n } else if (typeName.match(/^DateTime$/i) !== null) {\n if (\n !(\n value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value)))\n )\n ) {\n throw new Error(`${objectName} must be an instanceof Date or a string in ISO8601 format.`);\n }\n value = value instanceof Date ? value.toISOString() : new Date(value).toISOString();\n } else if (typeName.match(/^DateTimeRfc1123$/i) !== null) {\n if (\n !(\n value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value)))\n )\n ) {\n throw new Error(`${objectName} must be an instanceof Date or a string in RFC-1123 format.`);\n }\n value = value instanceof Date ? value.toUTCString() : new Date(value).toUTCString();\n } else if (typeName.match(/^UnixTime$/i) !== null) {\n if (\n !(\n value instanceof Date ||\n (typeof value.valueOf() === \"string\" && !isNaN(Date.parse(value)))\n )\n ) {\n throw new Error(\n `${objectName} must be an instanceof Date or a string in RFC-1123/ISO8601 format ` +\n `for it to be serialized in UnixTime/Epoch format.`\n );\n }\n value = dateToUnixTime(value);\n } else if (typeName.match(/^TimeSpan$/i) !== null) {\n if (!utils.isDuration(value)) {\n throw new Error(\n `${objectName} must be a string in ISO 8601 format. Instead was \"${value}\".`\n );\n }\n }\n }\n return value;\n}\n\nfunction serializeSequenceType(\n serializer: Serializer,\n mapper: SequenceMapper,\n object: any,\n objectName: string,\n isXml: boolean,\n options: Required\n): any[] {\n if (!Array.isArray(object)) {\n throw new Error(`${objectName} must be of type Array.`);\n }\n const elementType = mapper.type.element;\n if (!elementType || typeof elementType !== \"object\") {\n throw new Error(\n `element\" metadata for an Array must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}.`\n );\n }\n const tempArray = [];\n for (let i = 0; i < object.length; i++) {\n const serializedValue = serializer.serialize(elementType, object[i], objectName, options);\n\n if (isXml && elementType.xmlNamespace) {\n const xmlnsKey = elementType.xmlNamespacePrefix\n ? `xmlns:${elementType.xmlNamespacePrefix}`\n : \"xmlns\";\n if (elementType.type.name === \"Composite\") {\n tempArray[i] = { ...serializedValue };\n tempArray[i][XML_ATTRKEY] = { [xmlnsKey]: elementType.xmlNamespace };\n } else {\n tempArray[i] = {};\n tempArray[i][options.xmlCharKey] = serializedValue;\n tempArray[i][XML_ATTRKEY] = { [xmlnsKey]: elementType.xmlNamespace };\n }\n } else {\n tempArray[i] = serializedValue;\n }\n }\n return tempArray;\n}\n\nfunction serializeDictionaryType(\n serializer: Serializer,\n mapper: DictionaryMapper,\n object: any,\n objectName: string,\n isXml: boolean,\n options: Required\n): { [key: string]: any } {\n if (typeof object !== \"object\") {\n throw new Error(`${objectName} must be of type object.`);\n }\n const valueType = mapper.type.value;\n if (!valueType || typeof valueType !== \"object\") {\n throw new Error(\n `\"value\" metadata for a Dictionary must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}.`\n );\n }\n const tempDictionary: { [key: string]: any } = {};\n for (const key of Object.keys(object)) {\n const serializedValue = serializer.serialize(valueType, object[key], objectName, options);\n // If the element needs an XML namespace we need to add it within the $ property\n tempDictionary[key] = getXmlObjectValue(valueType, serializedValue, isXml, options);\n }\n\n // Add the namespace to the root element if needed\n if (isXml && mapper.xmlNamespace) {\n const xmlnsKey = mapper.xmlNamespacePrefix ? `xmlns:${mapper.xmlNamespacePrefix}` : \"xmlns\";\n\n const result = tempDictionary;\n result[XML_ATTRKEY] = { [xmlnsKey]: mapper.xmlNamespace };\n return result;\n }\n\n return tempDictionary;\n}\n\n/**\n * Resolves the additionalProperties property from a referenced mapper.\n * @param serializer - The serializer containing the entire set of mappers.\n * @param mapper - The composite mapper to resolve.\n * @param objectName - Name of the object being serialized.\n */\nfunction resolveAdditionalProperties(\n serializer: Serializer,\n mapper: CompositeMapper,\n objectName: string\n): SequenceMapper | BaseMapper | CompositeMapper | DictionaryMapper | EnumMapper | undefined {\n const additionalProperties = mapper.type.additionalProperties;\n\n if (!additionalProperties && mapper.type.className) {\n const modelMapper = resolveReferencedMapper(serializer, mapper, objectName);\n return modelMapper?.type.additionalProperties;\n }\n\n return additionalProperties;\n}\n\n/**\n * Finds the mapper referenced by `className`.\n * @param serializer - The serializer containing the entire set of mappers\n * @param mapper - The composite mapper to resolve\n * @param objectName - Name of the object being serialized\n */\nfunction resolveReferencedMapper(\n serializer: Serializer,\n mapper: CompositeMapper,\n objectName: string\n): CompositeMapper | undefined {\n const className = mapper.type.className;\n if (!className) {\n throw new Error(\n `Class name for model \"${objectName}\" is not provided in the mapper \"${JSON.stringify(\n mapper,\n undefined,\n 2\n )}\".`\n );\n }\n\n return serializer.modelMappers[className];\n}\n\n/**\n * Resolves a composite mapper's modelProperties.\n * @param serializer - The serializer containing the entire set of mappers\n * @param mapper - The composite mapper to resolve\n */\nfunction resolveModelProperties(\n serializer: Serializer,\n mapper: CompositeMapper,\n objectName: string\n): { [propertyName: string]: Mapper } {\n let modelProps = mapper.type.modelProperties;\n if (!modelProps) {\n const modelMapper = resolveReferencedMapper(serializer, mapper, objectName);\n if (!modelMapper) {\n throw new Error(`mapper() cannot be null or undefined for model \"${mapper.type.className}\".`);\n }\n modelProps = modelMapper?.type.modelProperties;\n if (!modelProps) {\n throw new Error(\n `modelProperties cannot be null or undefined in the ` +\n `mapper \"${JSON.stringify(modelMapper)}\" of type \"${\n mapper.type.className\n }\" for object \"${objectName}\".`\n );\n }\n }\n\n return modelProps;\n}\n\nfunction serializeCompositeType(\n serializer: Serializer,\n mapper: CompositeMapper,\n object: any,\n objectName: string,\n isXml: boolean,\n options: Required\n): any {\n if (getPolymorphicDiscriminatorRecursively(serializer, mapper)) {\n mapper = getPolymorphicMapper(serializer, mapper, object, \"clientName\");\n }\n\n if (object != undefined) {\n const payload: any = {};\n const modelProps = resolveModelProperties(serializer, mapper, objectName);\n for (const key of Object.keys(modelProps)) {\n const propertyMapper = modelProps[key];\n if (propertyMapper.readOnly) {\n continue;\n }\n\n let propName: string | undefined;\n let parentObject: any = payload;\n if (serializer.isXML) {\n if (propertyMapper.xmlIsWrapped) {\n propName = propertyMapper.xmlName;\n } else {\n propName = propertyMapper.xmlElementName || propertyMapper.xmlName;\n }\n } else {\n const paths = splitSerializeName(propertyMapper.serializedName!);\n propName = paths.pop();\n\n for (const pathName of paths) {\n const childObject = parentObject[pathName];\n if (\n childObject == undefined &&\n (object[key] != undefined || propertyMapper.defaultValue !== undefined)\n ) {\n parentObject[pathName] = {};\n }\n parentObject = parentObject[pathName];\n }\n }\n\n if (parentObject != undefined) {\n if (isXml && mapper.xmlNamespace) {\n const xmlnsKey = mapper.xmlNamespacePrefix\n ? `xmlns:${mapper.xmlNamespacePrefix}`\n : \"xmlns\";\n parentObject[XML_ATTRKEY] = {\n ...parentObject[XML_ATTRKEY],\n [xmlnsKey]: mapper.xmlNamespace,\n };\n }\n const propertyObjectName =\n propertyMapper.serializedName !== \"\"\n ? objectName + \".\" + propertyMapper.serializedName\n : objectName;\n\n let toSerialize = object[key];\n const polymorphicDiscriminator = getPolymorphicDiscriminatorRecursively(serializer, mapper);\n if (\n polymorphicDiscriminator &&\n polymorphicDiscriminator.clientName === key &&\n toSerialize == undefined\n ) {\n toSerialize = mapper.serializedName;\n }\n\n const serializedValue = serializer.serialize(\n propertyMapper,\n toSerialize,\n propertyObjectName,\n options\n );\n\n if (serializedValue !== undefined && propName != undefined) {\n const value = getXmlObjectValue(propertyMapper, serializedValue, isXml, options);\n if (isXml && propertyMapper.xmlIsAttribute) {\n // XML_ATTRKEY, i.e., $ is the key attributes are kept under in xml2js.\n // This keeps things simple while preventing name collision\n // with names in user documents.\n parentObject[XML_ATTRKEY] = parentObject[XML_ATTRKEY] || {};\n parentObject[XML_ATTRKEY][propName] = serializedValue;\n } else if (isXml && propertyMapper.xmlIsWrapped) {\n parentObject[propName] = { [propertyMapper.xmlElementName!]: value };\n } else {\n parentObject[propName] = value;\n }\n }\n }\n }\n\n const additionalPropertiesMapper = resolveAdditionalProperties(serializer, mapper, objectName);\n if (additionalPropertiesMapper) {\n const propNames = Object.keys(modelProps);\n for (const clientPropName in object) {\n const isAdditionalProperty = propNames.every((pn) => pn !== clientPropName);\n if (isAdditionalProperty) {\n payload[clientPropName] = serializer.serialize(\n additionalPropertiesMapper,\n object[clientPropName],\n objectName + '[\"' + clientPropName + '\"]',\n options\n );\n }\n }\n }\n\n return payload;\n }\n return object;\n}\n\nfunction getXmlObjectValue(\n propertyMapper: Mapper,\n serializedValue: any,\n isXml: boolean,\n options: Required\n): any {\n if (!isXml || !propertyMapper.xmlNamespace) {\n return serializedValue;\n }\n\n const xmlnsKey = propertyMapper.xmlNamespacePrefix\n ? `xmlns:${propertyMapper.xmlNamespacePrefix}`\n : \"xmlns\";\n const xmlNamespace = { [xmlnsKey]: propertyMapper.xmlNamespace };\n\n if ([\"Composite\"].includes(propertyMapper.type.name)) {\n if (serializedValue[XML_ATTRKEY]) {\n return serializedValue;\n } else {\n const result: any = { ...serializedValue };\n result[XML_ATTRKEY] = xmlNamespace;\n return result;\n }\n }\n const result: any = {};\n result[options.xmlCharKey] = serializedValue;\n result[XML_ATTRKEY] = xmlNamespace;\n return result;\n}\n\nfunction isSpecialXmlProperty(propertyName: string, options: Required): boolean {\n return [XML_ATTRKEY, options.xmlCharKey].includes(propertyName);\n}\n\nfunction deserializeCompositeType(\n serializer: Serializer,\n mapper: CompositeMapper,\n responseBody: any,\n objectName: string,\n options: Required\n): any {\n if (getPolymorphicDiscriminatorRecursively(serializer, mapper)) {\n mapper = getPolymorphicMapper(serializer, mapper, responseBody, \"serializedName\");\n }\n\n const modelProps = resolveModelProperties(serializer, mapper, objectName);\n let instance: { [key: string]: any } = {};\n const handledPropertyNames: string[] = [];\n\n for (const key of Object.keys(modelProps)) {\n const propertyMapper = modelProps[key];\n const paths = splitSerializeName(modelProps[key].serializedName!);\n handledPropertyNames.push(paths[0]);\n const { serializedName, xmlName, xmlElementName } = propertyMapper;\n let propertyObjectName = objectName;\n if (serializedName !== \"\" && serializedName !== undefined) {\n propertyObjectName = objectName + \".\" + serializedName;\n }\n\n const headerCollectionPrefix = (propertyMapper as DictionaryMapper).headerCollectionPrefix;\n if (headerCollectionPrefix) {\n const dictionary: any = {};\n for (const headerKey of Object.keys(responseBody)) {\n if (headerKey.startsWith(headerCollectionPrefix)) {\n dictionary[headerKey.substring(headerCollectionPrefix.length)] = serializer.deserialize(\n (propertyMapper as DictionaryMapper).type.value,\n responseBody[headerKey],\n propertyObjectName,\n options\n );\n }\n\n handledPropertyNames.push(headerKey);\n }\n instance[key] = dictionary;\n } else if (serializer.isXML) {\n if (propertyMapper.xmlIsAttribute && responseBody[XML_ATTRKEY]) {\n instance[key] = serializer.deserialize(\n propertyMapper,\n responseBody[XML_ATTRKEY][xmlName!],\n propertyObjectName,\n options\n );\n } else {\n const propertyName = xmlElementName || xmlName || serializedName;\n if (propertyMapper.xmlIsWrapped) {\n /* a list of wrapped by \n For the xml example below\n \n ...\n ...\n \n the responseBody has\n {\n Cors: {\n CorsRule: [{...}, {...}]\n }\n }\n xmlName is \"Cors\" and xmlElementName is\"CorsRule\".\n */\n const wrapped = responseBody[xmlName!];\n const elementList = wrapped?.[xmlElementName!] ?? [];\n instance[key] = serializer.deserialize(\n propertyMapper,\n elementList,\n propertyObjectName,\n options\n );\n } else {\n const property = responseBody[propertyName!];\n instance[key] = serializer.deserialize(\n propertyMapper,\n property,\n propertyObjectName,\n options\n );\n }\n }\n } else {\n // deserialize the property if it is present in the provided responseBody instance\n let propertyInstance;\n let res = responseBody;\n // traversing the object step by step.\n for (const item of paths) {\n if (!res) break;\n res = res[item];\n }\n propertyInstance = res;\n const polymorphicDiscriminator = mapper.type.polymorphicDiscriminator;\n // checking that the model property name (key)(ex: \"fishtype\") and the\n // clientName of the polymorphicDiscriminator {metadata} (ex: \"fishtype\")\n // instead of the serializedName of the polymorphicDiscriminator (ex: \"fish.type\")\n // is a better approach. The generator is not consistent with escaping '\\.' in the\n // serializedName of the property (ex: \"fish\\.type\") that is marked as polymorphic discriminator\n // and the serializedName of the metadata polymorphicDiscriminator (ex: \"fish.type\"). However,\n // the clientName transformation of the polymorphicDiscriminator (ex: \"fishtype\") and\n // the transformation of model property name (ex: \"fishtype\") is done consistently.\n // Hence, it is a safer bet to rely on the clientName of the polymorphicDiscriminator.\n if (\n polymorphicDiscriminator &&\n key === polymorphicDiscriminator.clientName &&\n propertyInstance == undefined\n ) {\n propertyInstance = mapper.serializedName;\n }\n\n let serializedValue;\n // paging\n if (Array.isArray(responseBody[key]) && modelProps[key].serializedName === \"\") {\n propertyInstance = responseBody[key];\n const arrayInstance = serializer.deserialize(\n propertyMapper,\n propertyInstance,\n propertyObjectName,\n options\n );\n // Copy over any properties that have already been added into the instance, where they do\n // not exist on the newly de-serialized array\n for (const [k, v] of Object.entries(instance)) {\n if (!Object.prototype.hasOwnProperty.call(arrayInstance, k)) {\n arrayInstance[k] = v;\n }\n }\n instance = arrayInstance;\n } else if (propertyInstance !== undefined || propertyMapper.defaultValue !== undefined) {\n serializedValue = serializer.deserialize(\n propertyMapper,\n propertyInstance,\n propertyObjectName,\n options\n );\n instance[key] = serializedValue;\n }\n }\n }\n\n const additionalPropertiesMapper = mapper.type.additionalProperties;\n if (additionalPropertiesMapper) {\n const isAdditionalProperty = (responsePropName: string): boolean => {\n for (const clientPropName in modelProps) {\n const paths = splitSerializeName(modelProps[clientPropName].serializedName);\n if (paths[0] === responsePropName) {\n return false;\n }\n }\n return true;\n };\n\n for (const responsePropName in responseBody) {\n if (isAdditionalProperty(responsePropName)) {\n instance[responsePropName] = serializer.deserialize(\n additionalPropertiesMapper,\n responseBody[responsePropName],\n objectName + '[\"' + responsePropName + '\"]',\n options\n );\n }\n }\n } else if (responseBody) {\n for (const key of Object.keys(responseBody)) {\n if (\n instance[key] === undefined &&\n !handledPropertyNames.includes(key) &&\n !isSpecialXmlProperty(key, options)\n ) {\n instance[key] = responseBody[key];\n }\n }\n }\n\n return instance;\n}\n\nfunction deserializeDictionaryType(\n serializer: Serializer,\n mapper: DictionaryMapper,\n responseBody: any,\n objectName: string,\n options: Required\n): { [key: string]: any } {\n const value = mapper.type.value;\n if (!value || typeof value !== \"object\") {\n throw new Error(\n `\"value\" metadata for a Dictionary must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}`\n );\n }\n if (responseBody) {\n const tempDictionary: { [key: string]: any } = {};\n for (const key of Object.keys(responseBody)) {\n tempDictionary[key] = serializer.deserialize(value, responseBody[key], objectName, options);\n }\n return tempDictionary;\n }\n return responseBody;\n}\n\nfunction deserializeSequenceType(\n serializer: Serializer,\n mapper: SequenceMapper,\n responseBody: any,\n objectName: string,\n options: Required\n): any[] {\n const element = mapper.type.element;\n if (!element || typeof element !== \"object\") {\n throw new Error(\n `element\" metadata for an Array must be defined in the ` +\n `mapper and it must of type \"object\" in ${objectName}`\n );\n }\n if (responseBody) {\n if (!Array.isArray(responseBody)) {\n // xml2js will interpret a single element array as just the element, so force it to be an array\n responseBody = [responseBody];\n }\n\n const tempArray = [];\n for (let i = 0; i < responseBody.length; i++) {\n tempArray[i] = serializer.deserialize(\n element,\n responseBody[i],\n `${objectName}[${i}]`,\n options\n );\n }\n return tempArray;\n }\n return responseBody;\n}\n\nfunction getPolymorphicMapper(\n serializer: Serializer,\n mapper: CompositeMapper,\n object: any,\n polymorphicPropertyName: \"clientName\" | \"serializedName\"\n): CompositeMapper {\n const polymorphicDiscriminator = getPolymorphicDiscriminatorRecursively(serializer, mapper);\n if (polymorphicDiscriminator) {\n const discriminatorName = polymorphicDiscriminator[polymorphicPropertyName];\n if (discriminatorName != undefined) {\n const discriminatorValue = object[discriminatorName];\n if (discriminatorValue != undefined) {\n const typeName = mapper.type.uberParent || mapper.type.className;\n const indexDiscriminator =\n discriminatorValue === typeName\n ? discriminatorValue\n : typeName + \".\" + discriminatorValue;\n const polymorphicMapper = serializer.modelMappers.discriminators[indexDiscriminator];\n if (polymorphicMapper) {\n mapper = polymorphicMapper;\n }\n }\n }\n }\n return mapper;\n}\n\nfunction getPolymorphicDiscriminatorRecursively(\n serializer: Serializer,\n mapper: CompositeMapper\n): PolymorphicDiscriminator | undefined {\n return (\n mapper.type.polymorphicDiscriminator ||\n getPolymorphicDiscriminatorSafely(serializer, mapper.type.uberParent) ||\n getPolymorphicDiscriminatorSafely(serializer, mapper.type.className)\n );\n}\n\nfunction getPolymorphicDiscriminatorSafely(serializer: Serializer, typeName?: string): any {\n return (\n typeName &&\n serializer.modelMappers[typeName] &&\n serializer.modelMappers[typeName].type.polymorphicDiscriminator\n );\n}\n\n/**\n * Description of various value constraints such as integer ranges and string regex.\n */\nexport interface MapperConstraints {\n /**\n * The value should be less than or equal to the `InclusiveMaximum` value.\n */\n InclusiveMaximum?: number;\n /**\n * The value should be less than the `ExclusiveMaximum` value.\n */\n ExclusiveMaximum?: number;\n /**\n * The value should be greater than or equal to the `InclusiveMinimum` value.\n */\n InclusiveMinimum?: number;\n /**\n * The value should be greater than the `InclusiveMinimum` value.\n */\n ExclusiveMinimum?: number;\n /**\n * The length should be smaller than the `MaxLength`.\n */\n MaxLength?: number;\n /**\n * The length should be bigger than the `MinLength`.\n */\n MinLength?: number;\n /**\n * The value must match the pattern.\n */\n Pattern?: RegExp;\n /**\n * The value must contain fewer items than the MaxItems value.\n */\n MaxItems?: number;\n /**\n * The value must contain more items than the `MinItems` value.\n */\n MinItems?: number;\n /**\n * The value must contain only unique items.\n */\n UniqueItems?: true;\n /**\n * The value should be exactly divisible by the `MultipleOf` value.\n */\n MultipleOf?: number;\n}\n\n/**\n * Type of the mapper. Includes known mappers.\n */\nexport type MapperType =\n | SimpleMapperType\n | CompositeMapperType\n | SequenceMapperType\n | DictionaryMapperType\n | EnumMapperType;\n\n/**\n * The type of a simple mapper.\n */\nexport interface SimpleMapperType {\n /**\n * Name of the type of the property.\n */\n name:\n | \"Base64Url\"\n | \"Boolean\"\n | \"ByteArray\"\n | \"Date\"\n | \"DateTime\"\n | \"DateTimeRfc1123\"\n | \"Object\"\n | \"Stream\"\n | \"String\"\n | \"TimeSpan\"\n | \"UnixTime\"\n | \"Uuid\"\n | \"Number\"\n | \"any\";\n}\n\n/**\n * Helps build a mapper that describes how to map a set of properties of an object based on other mappers.\n *\n * Only one of the following properties should be present: `className`, `modelProperties` and `additionalProperties`.\n */\nexport interface CompositeMapperType {\n /**\n * Name of the composite mapper type.\n */\n name: \"Composite\";\n\n /**\n * Use `className` to reference another type definition.\n */\n className?: string;\n\n /**\n * Use `modelProperties` when the reference to the other type has been resolved.\n */\n modelProperties?: { [propertyName: string]: Mapper };\n\n /**\n * Used when a model has `additionalProperties: true`. Allows the generic processing of unnamed model properties on the response object.\n */\n additionalProperties?: Mapper;\n\n /**\n * The name of the top-most parent scheme, the one that has no parents.\n */\n uberParent?: string;\n\n /**\n * A polymorphic discriminator.\n */\n polymorphicDiscriminator?: PolymorphicDiscriminator;\n}\n\n/**\n * Helps build a mapper that describes how to parse a sequence of mapped values.\n */\nexport interface SequenceMapperType {\n /**\n * Name of the sequence type mapper.\n */\n name: \"Sequence\";\n /**\n * The mapper to use to map each one of the properties of the sequence.\n */\n element: Mapper;\n}\n\n/**\n * Helps build a mapper that describes how to parse a dictionary of mapped values.\n */\nexport interface DictionaryMapperType {\n /**\n * Name of the sequence type mapper.\n */\n name: \"Dictionary\";\n /**\n * The mapper to use to map the value of each property in the dictionary.\n */\n value: Mapper;\n}\n\n/**\n * Helps build a mapper that describes how to parse an enum value.\n */\nexport interface EnumMapperType {\n /**\n * Name of the enum type mapper.\n */\n name: \"Enum\";\n /**\n * Values allowed by this mapper.\n */\n allowedValues: any[];\n}\n\n/**\n * The base definition of a mapper. Can be used for XML and plain JavaScript objects.\n */\nexport interface BaseMapper {\n /**\n * Name for the xml element\n */\n xmlName?: string;\n /**\n * Xml element namespace\n */\n xmlNamespace?: string;\n /**\n * Xml element namespace prefix\n */\n xmlNamespacePrefix?: string;\n /**\n * Determines if the current property should be serialized as an attribute of the parent xml element\n */\n xmlIsAttribute?: boolean;\n /**\n * Name for the xml elements when serializing an array\n */\n xmlElementName?: string;\n /**\n * Whether or not the current property should have a wrapping XML element\n */\n xmlIsWrapped?: boolean;\n /**\n * Whether or not the current property is readonly\n */\n readOnly?: boolean;\n /**\n * Whether or not the current property is a constant\n */\n isConstant?: boolean;\n /**\n * Whether or not the current property is required\n */\n required?: boolean;\n /**\n * Whether or not the current property allows mull as a value\n */\n nullable?: boolean;\n /**\n * The name to use when serializing\n */\n serializedName?: string;\n /**\n * Type of the mapper\n */\n type: MapperType;\n /**\n * Default value when one is not explicitly provided\n */\n defaultValue?: any;\n /**\n * Constraints to test the current value against\n */\n constraints?: MapperConstraints;\n}\n\n/**\n * Mappers are definitions of the data models used in the library.\n * These data models are part of the Operation or Client definitions in the responses or parameters.\n */\nexport type Mapper = BaseMapper | CompositeMapper | SequenceMapper | DictionaryMapper | EnumMapper;\n\n/**\n * Used to disambiguate discriminated type unions.\n * For example, if response can have many shapes but also includes a 'kind' field (or similar),\n * that field can be used to determine how to deserialize the response to the correct type.\n */\nexport interface PolymorphicDiscriminator {\n /**\n * Name of the discriminant property in the original JSON payload, e.g. `@odata.kind`.\n */\n serializedName: string;\n /**\n * Name to use on the resulting object instead of the original property name.\n * Useful since the JSON property could be difficult to work with.\n * For example: For a field received as `@odata.kind`, the final object could instead include a property simply named `kind`.\n */\n clientName: string;\n /**\n * It may contain any other property.\n */\n [key: string]: string;\n}\n\n/**\n * A mapper composed of other mappers.\n */\nexport interface CompositeMapper extends BaseMapper {\n /**\n * The type descriptor of the `CompositeMapper`.\n */\n type: CompositeMapperType;\n}\n\n/**\n * A mapper describing arrays.\n */\nexport interface SequenceMapper extends BaseMapper {\n /**\n * The type descriptor of the `SequenceMapper`.\n */\n type: SequenceMapperType;\n}\n\n/**\n * A mapper describing plain JavaScript objects used as key/value pairs.\n */\nexport interface DictionaryMapper extends BaseMapper {\n /**\n * The type descriptor of the `DictionaryMapper`.\n */\n type: DictionaryMapperType;\n /**\n * Optionally, a prefix to add to the header collection.\n */\n headerCollectionPrefix?: string;\n}\n\n/**\n * A mapper describing an enum value.\n */\nexport interface EnumMapper extends BaseMapper {\n /**\n * The type descriptor of the `EnumMapper`.\n */\n type: EnumMapperType;\n}\n\n/**\n * An interface representing an URL parameter value.\n */\nexport interface UrlParameterValue {\n /**\n * The URL value.\n */\n value: string;\n /**\n * Whether to keep or skip URL encoding.\n */\n skipUrlEncoding: boolean;\n}\n\n/**\n * Utility function that serializes an object that might contain binary information into a plain object, array or a string.\n */\nexport function serializeObject(toSerialize: unknown): any {\n const castToSerialize = toSerialize as Record;\n if (toSerialize == undefined) return undefined;\n if (toSerialize instanceof Uint8Array) {\n toSerialize = base64.encodeByteArray(toSerialize);\n return toSerialize;\n } else if (toSerialize instanceof Date) {\n return toSerialize.toISOString();\n } else if (Array.isArray(toSerialize)) {\n const array = [];\n for (let i = 0; i < toSerialize.length; i++) {\n array.push(serializeObject(toSerialize[i]));\n }\n return array;\n } else if (typeof toSerialize === \"object\") {\n const dictionary: { [key: string]: any } = {};\n for (const property in toSerialize) {\n dictionary[property] = serializeObject(castToSerialize[property]);\n }\n return dictionary;\n }\n return toSerialize;\n}\n\n/**\n * Utility function to create a K:V from a list of strings\n */\nfunction strEnum(o: Array): { [K in T]: K } {\n const result: any = {};\n for (const key of o) {\n result[key] = key;\n }\n return result;\n}\n\n/**\n * String enum containing the string types of property mappers.\n */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport const MapperType = strEnum([\n \"Base64Url\",\n \"Boolean\",\n \"ByteArray\",\n \"Composite\",\n \"Date\",\n \"DateTime\",\n \"DateTimeRfc1123\",\n \"Dictionary\",\n \"Enum\",\n \"Number\",\n \"Object\",\n \"Sequence\",\n \"String\",\n \"Stream\",\n \"TimeSpan\",\n \"UnixTime\",\n]);\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Encodes a string in base64 format.\n * @param value - The string to encode\n */\nexport function encodeString(value: string): string {\n return Buffer.from(value).toString(\"base64\");\n}\n\n/**\n * Encodes a byte array in base64 format.\n * @param value - The Uint8Aray to encode\n */\nexport function encodeByteArray(value: Uint8Array): string {\n // Buffer.from accepts | -- the TypeScript definition is off here\n // https://nodejs.org/api/buffer.html#buffer_class_method_buffer_from_arraybuffer_byteoffset_length\n const bufferValue = value instanceof Buffer ? value : Buffer.from(value.buffer as ArrayBuffer);\n return bufferValue.toString(\"base64\");\n}\n\n/**\n * Decodes a base64 string into a byte array.\n * @param value - The base64 string to decode\n */\nexport function decodeString(value: string): Uint8Array {\n return Buffer.from(value, \"base64\");\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n BaseRequestPolicy,\n RequestPolicy,\n RequestPolicyFactory,\n RequestPolicyOptions,\n} from \"./requestPolicy\";\nimport { SerializerOptions, XML_CHARKEY } from \"../util/serializer.common\";\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\nimport { MapperType } from \"../serializer\";\nimport { OperationResponse } from \"../operationResponse\";\nimport { OperationSpec } from \"../operationSpec\";\nimport { RestError } from \"../restError\";\nimport { WebResourceLike } from \"../webResource\";\nimport { parseXML } from \"../util/xml\";\n\n/**\n * Options to configure API response deserialization.\n */\nexport interface DeserializationOptions {\n /**\n * Configures the expected content types for the deserialization of\n * JSON and XML response bodies.\n */\n expectedContentTypes: DeserializationContentTypes;\n}\n\n/**\n * The content-types that will indicate that an operation response should be deserialized in a\n * particular way.\n */\nexport interface DeserializationContentTypes {\n /**\n * The content-types that indicate that an operation response should be deserialized as JSON.\n * Defaults to [ \"application/json\", \"text/json\" ].\n */\n json?: string[];\n\n /**\n * The content-types that indicate that an operation response should be deserialized as XML.\n * Defaults to [ \"application/xml\", \"application/atom+xml\" ].\n */\n xml?: string[];\n}\n\n/**\n * Create a new serialization RequestPolicyCreator that will serialized HTTP request bodies as they\n * pass through the HTTP pipeline.\n */\nexport function deserializationPolicy(\n deserializationContentTypes?: DeserializationContentTypes,\n parsingOptions?: SerializerOptions\n): RequestPolicyFactory {\n return {\n create: (nextPolicy: RequestPolicy, options: RequestPolicyOptions) => {\n return new DeserializationPolicy(\n nextPolicy,\n options,\n deserializationContentTypes,\n parsingOptions\n );\n },\n };\n}\n\nexport const defaultJsonContentTypes = [\"application/json\", \"text/json\"];\nexport const defaultXmlContentTypes = [\"application/xml\", \"application/atom+xml\"];\n\nexport const DefaultDeserializationOptions: DeserializationOptions = {\n expectedContentTypes: {\n json: defaultJsonContentTypes,\n xml: defaultXmlContentTypes,\n },\n};\n\n/**\n * A RequestPolicy that will deserialize HTTP response bodies and headers as they pass through the\n * HTTP pipeline.\n */\nexport class DeserializationPolicy extends BaseRequestPolicy {\n public readonly jsonContentTypes: string[];\n public readonly xmlContentTypes: string[];\n public readonly xmlCharKey: string;\n\n constructor(\n nextPolicy: RequestPolicy,\n requestPolicyOptions: RequestPolicyOptions,\n deserializationContentTypes?: DeserializationContentTypes,\n parsingOptions: SerializerOptions = {}\n ) {\n super(nextPolicy, requestPolicyOptions);\n\n this.jsonContentTypes =\n (deserializationContentTypes && deserializationContentTypes.json) || defaultJsonContentTypes;\n this.xmlContentTypes =\n (deserializationContentTypes && deserializationContentTypes.xml) || defaultXmlContentTypes;\n this.xmlCharKey = parsingOptions.xmlCharKey ?? XML_CHARKEY;\n }\n\n public async sendRequest(request: WebResourceLike): Promise {\n return this._nextPolicy.sendRequest(request).then((response: HttpOperationResponse) =>\n deserializeResponseBody(this.jsonContentTypes, this.xmlContentTypes, response, {\n xmlCharKey: this.xmlCharKey,\n })\n );\n }\n}\n\nfunction getOperationResponse(\n parsedResponse: HttpOperationResponse\n): undefined | OperationResponse {\n let result: OperationResponse | undefined;\n const request: WebResourceLike = parsedResponse.request;\n const operationSpec: OperationSpec | undefined = request.operationSpec;\n if (operationSpec) {\n const operationResponseGetter:\n | undefined\n | ((\n operationSpec: OperationSpec,\n response: HttpOperationResponse\n ) => undefined | OperationResponse) = request.operationResponseGetter;\n if (!operationResponseGetter) {\n result = operationSpec.responses[parsedResponse.status];\n } else {\n result = operationResponseGetter(operationSpec, parsedResponse);\n }\n }\n return result;\n}\n\nfunction shouldDeserializeResponse(parsedResponse: HttpOperationResponse): boolean {\n const shouldDeserialize: undefined | boolean | ((response: HttpOperationResponse) => boolean) =\n parsedResponse.request.shouldDeserialize;\n let result: boolean;\n if (shouldDeserialize === undefined) {\n result = true;\n } else if (typeof shouldDeserialize === \"boolean\") {\n result = shouldDeserialize;\n } else {\n result = shouldDeserialize(parsedResponse);\n }\n return result;\n}\n\n/**\n * Given a particular set of content types to parse as either JSON or XML, consumes the HTTP response to produce the result object defined by the request's {@link OperationSpec}.\n * @param jsonContentTypes - Response content types to parse the body as JSON.\n * @param xmlContentTypes - Response content types to parse the body as XML.\n * @param response - HTTP Response from the pipeline.\n * @param options - Options to the serializer, mostly for configuring the XML parser if needed.\n * @returns A parsed {@link HttpOperationResponse} object that can be returned by the {@link ServiceClient}.\n */\nexport function deserializeResponseBody(\n jsonContentTypes: string[],\n xmlContentTypes: string[],\n response: HttpOperationResponse,\n options: SerializerOptions = {}\n): Promise {\n const updatedOptions: Required = {\n rootName: options.rootName ?? \"\",\n includeRoot: options.includeRoot ?? false,\n xmlCharKey: options.xmlCharKey ?? XML_CHARKEY,\n };\n return parse(jsonContentTypes, xmlContentTypes, response, updatedOptions).then(\n (parsedResponse) => {\n if (!shouldDeserializeResponse(parsedResponse)) {\n return parsedResponse;\n }\n\n const operationSpec = parsedResponse.request.operationSpec;\n if (!operationSpec || !operationSpec.responses) {\n return parsedResponse;\n }\n\n const responseSpec = getOperationResponse(parsedResponse);\n\n const { error, shouldReturnResponse } = handleErrorResponse(\n parsedResponse,\n operationSpec,\n responseSpec\n );\n if (error) {\n throw error;\n } else if (shouldReturnResponse) {\n return parsedResponse;\n }\n\n // An operation response spec does exist for current status code, so\n // use it to deserialize the response.\n if (responseSpec) {\n if (responseSpec.bodyMapper) {\n let valueToDeserialize: any = parsedResponse.parsedBody;\n if (operationSpec.isXML && responseSpec.bodyMapper.type.name === MapperType.Sequence) {\n valueToDeserialize =\n typeof valueToDeserialize === \"object\"\n ? valueToDeserialize[responseSpec.bodyMapper.xmlElementName!]\n : [];\n }\n try {\n parsedResponse.parsedBody = operationSpec.serializer.deserialize(\n responseSpec.bodyMapper,\n valueToDeserialize,\n \"operationRes.parsedBody\",\n options\n );\n } catch (innerError) {\n const restError = new RestError(\n `Error ${innerError} occurred in deserializing the responseBody - ${parsedResponse.bodyAsText}`,\n undefined,\n parsedResponse.status,\n parsedResponse.request,\n parsedResponse\n );\n throw restError;\n }\n } else if (operationSpec.httpMethod === \"HEAD\") {\n // head methods never have a body, but we return a boolean to indicate presence/absence of the resource\n parsedResponse.parsedBody = response.status >= 200 && response.status < 300;\n }\n\n if (responseSpec.headersMapper) {\n parsedResponse.parsedHeaders = operationSpec.serializer.deserialize(\n responseSpec.headersMapper,\n parsedResponse.headers.rawHeaders(),\n \"operationRes.parsedHeaders\",\n options\n );\n }\n }\n\n return parsedResponse;\n }\n );\n}\n\nfunction isOperationSpecEmpty(operationSpec: OperationSpec): boolean {\n const expectedStatusCodes = Object.keys(operationSpec.responses);\n return (\n expectedStatusCodes.length === 0 ||\n (expectedStatusCodes.length === 1 && expectedStatusCodes[0] === \"default\")\n );\n}\n\nfunction handleErrorResponse(\n parsedResponse: HttpOperationResponse,\n operationSpec: OperationSpec,\n responseSpec: OperationResponse | undefined\n): { error: RestError | null; shouldReturnResponse: boolean } {\n const isSuccessByStatus = 200 <= parsedResponse.status && parsedResponse.status < 300;\n const isExpectedStatusCode: boolean = isOperationSpecEmpty(operationSpec)\n ? isSuccessByStatus\n : !!responseSpec;\n\n if (isExpectedStatusCode) {\n if (responseSpec) {\n if (!responseSpec.isError) {\n return { error: null, shouldReturnResponse: false };\n }\n } else {\n return { error: null, shouldReturnResponse: false };\n }\n }\n\n const errorResponseSpec = responseSpec ?? operationSpec.responses.default;\n const streaming =\n parsedResponse.request.streamResponseStatusCodes?.has(parsedResponse.status) ||\n parsedResponse.request.streamResponseBody;\n const initialErrorMessage = streaming\n ? `Unexpected status code: ${parsedResponse.status}`\n : (parsedResponse.bodyAsText as string);\n\n const error = new RestError(\n initialErrorMessage,\n undefined,\n parsedResponse.status,\n parsedResponse.request,\n parsedResponse\n );\n\n // If the item failed but there's no error spec or default spec to deserialize the error,\n // we should fail so we just throw the parsed response\n if (!errorResponseSpec) {\n throw error;\n }\n\n const defaultBodyMapper = errorResponseSpec.bodyMapper;\n const defaultHeadersMapper = errorResponseSpec.headersMapper;\n\n try {\n // If error response has a body, try to deserialize it using default body mapper.\n // Then try to extract error code & message from it\n if (parsedResponse.parsedBody) {\n const parsedBody = parsedResponse.parsedBody;\n let parsedError;\n if (defaultBodyMapper) {\n let valueToDeserialize: any = parsedBody;\n if (operationSpec.isXML && defaultBodyMapper.type.name === MapperType.Sequence) {\n valueToDeserialize =\n typeof parsedBody === \"object\" ? parsedBody[defaultBodyMapper.xmlElementName!] : [];\n }\n parsedError = operationSpec.serializer.deserialize(\n defaultBodyMapper,\n valueToDeserialize,\n \"error.response.parsedBody\"\n );\n }\n\n const internalError: any = parsedBody.error || parsedError || parsedBody;\n error.code = internalError.code;\n if (internalError.message) {\n error.message = internalError.message;\n }\n\n if (defaultBodyMapper) {\n error.response!.parsedBody = parsedError;\n }\n }\n\n // If error response has headers, try to deserialize it using default header mapper\n if (parsedResponse.headers && defaultHeadersMapper) {\n error.response!.parsedHeaders = operationSpec.serializer.deserialize(\n defaultHeadersMapper,\n parsedResponse.headers.rawHeaders(),\n \"operationRes.parsedHeaders\"\n );\n }\n } catch (defaultError) {\n error.message = `Error \"${defaultError.message}\" occurred in deserializing the responseBody - \"${parsedResponse.bodyAsText}\" for the default response.`;\n }\n\n return { error, shouldReturnResponse: false };\n}\n\nfunction parse(\n jsonContentTypes: string[],\n xmlContentTypes: string[],\n operationResponse: HttpOperationResponse,\n opts: Required\n): Promise {\n const errorHandler = (err: Error & { code: string }): Promise => {\n const msg = `Error \"${err}\" occurred while parsing the response body - ${operationResponse.bodyAsText}.`;\n const errCode = err.code || RestError.PARSE_ERROR;\n const e = new RestError(\n msg,\n errCode,\n operationResponse.status,\n operationResponse.request,\n operationResponse\n );\n return Promise.reject(e);\n };\n\n const streaming =\n operationResponse.request.streamResponseStatusCodes?.has(operationResponse.status) ||\n operationResponse.request.streamResponseBody;\n if (!streaming && operationResponse.bodyAsText) {\n const text = operationResponse.bodyAsText;\n const contentType: string = operationResponse.headers.get(\"Content-Type\") || \"\";\n const contentComponents: string[] = !contentType\n ? []\n : contentType.split(\";\").map((component) => component.toLowerCase());\n if (\n contentComponents.length === 0 ||\n contentComponents.some((component) => jsonContentTypes.indexOf(component) !== -1)\n ) {\n return new Promise((resolve) => {\n operationResponse.parsedBody = JSON.parse(text);\n resolve(operationResponse);\n }).catch(errorHandler);\n } else if (contentComponents.some((component) => xmlContentTypes.indexOf(component) !== -1)) {\n return parseXML(text, opts)\n .then((body) => {\n operationResponse.parsedBody = body;\n return operationResponse;\n })\n .catch(errorHandler);\n }\n }\n\n return Promise.resolve(operationResponse);\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { HttpOperationResponse } from \"../httpOperationResponse\";\nimport { HttpPipelineLogLevel } from \"../httpPipelineLogLevel\";\nimport { HttpPipelineLogger } from \"../httpPipelineLogger\";\nimport { WebResourceLike } from \"../webResource\";\n\n/**\n * Creates a new RequestPolicy per-request that uses the provided nextPolicy.\n */\nexport type RequestPolicyFactory = {\n create(nextPolicy: RequestPolicy, options: RequestPolicyOptionsLike): RequestPolicy;\n};\n\n/**\n * The underlying structure of a request policy.\n */\nexport interface RequestPolicy {\n /**\n * A method that retrieves an {@link HttpOperationResponse} given a {@link WebResourceLike} describing the request to be made.\n * @param httpRequest - {@link WebResourceLike} describing the request to be made.\n */\n sendRequest(httpRequest: WebResourceLike): Promise;\n}\n\n/**\n * The base class from which all request policies derive.\n */\nexport abstract class BaseRequestPolicy implements RequestPolicy {\n /**\n * The main method to implement that manipulates a request/response.\n */\n protected constructor(\n /**\n * The next policy in the pipeline. Each policy is responsible for executing the next one if the request is to continue through the pipeline.\n */\n readonly _nextPolicy: RequestPolicy,\n /**\n * The options that can be passed to a given request policy.\n */\n readonly _options: RequestPolicyOptionsLike\n ) {}\n\n /**\n * Sends a network request based on the given web resource.\n * @param webResource - A {@link WebResourceLike} that describes a HTTP request to be made.\n */\n public abstract sendRequest(webResource: WebResourceLike): Promise;\n\n /**\n * Get whether or not a log with the provided log level should be logged.\n * @param logLevel - The log level of the log that will be logged.\n * @returns Whether or not a log with the provided log level should be logged.\n */\n public shouldLog(logLevel: HttpPipelineLogLevel): boolean {\n return this._options.shouldLog(logLevel);\n }\n\n /**\n * Attempt to log the provided message to the provided logger. If no logger was provided or if\n * the log level does not meat the logger's threshold, then nothing will be logged.\n * @param logLevel - The log level of this log.\n * @param message - The message of this log.\n */\n public log(logLevel: HttpPipelineLogLevel, message: string): void {\n this._options.log(logLevel, message);\n }\n}\n\n/**\n * Optional properties that can be used when creating a RequestPolicy.\n */\nexport interface RequestPolicyOptionsLike {\n /**\n * Get whether or not a log with the provided log level should be logged.\n * @param logLevel - The log level of the log that will be logged.\n * @returns Whether or not a log with the provided log level should be logged.\n */\n shouldLog(logLevel: HttpPipelineLogLevel): boolean;\n\n /**\n * Attempt to log the provided message to the provided logger. If no logger was provided or if\n * the log level does not meet the logger's threshold, then nothing will be logged.\n * @param logLevel - The log level of this log.\n * @param message - The message of this log.\n */\n log(logLevel: HttpPipelineLogLevel, message: string): void;\n}\n\n/**\n * Optional properties that can be used when creating a RequestPolicy.\n */\nexport class RequestPolicyOptions {\n constructor(private _logger?: HttpPipelineLogger) {}\n\n /**\n * Get whether or not a log with the provided log level should be logged.\n * @param logLevel - The log level of the log that will be logged.\n * @returns Whether or not a log with the provided log level should be logged.\n */\n public shouldLog(logLevel: HttpPipelineLogLevel): boolean {\n return (\n !!this._logger &&\n logLevel !== HttpPipelineLogLevel.OFF &&\n logLevel <= this._logger.minimumLogLevel\n );\n }\n\n /**\n * Attempt to log the provided message to the provided logger. If no logger was provided or if\n * the log level does not meet the logger's threshold, then nothing will be logged.\n * @param logLevel - The log level of this log.\n * @param message - The message of this log.\n */\n public log(logLevel: HttpPipelineLogLevel, message: string): void {\n if (this._logger && this.shouldLog(logLevel)) {\n this._logger.log(logLevel, message);\n }\n }\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * The different levels of logs that can be used with the HttpPipelineLogger.\n */\nexport enum HttpPipelineLogLevel {\n /**\n * A log level that indicates that no logs will be logged.\n */\n OFF,\n\n /**\n * An error log.\n */\n ERROR,\n\n /**\n * A warning log.\n */\n WARNING,\n\n /**\n * An information log.\n */\n INFO,\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport * as xml2js from \"xml2js\";\nimport { SerializerOptions, XML_ATTRKEY, XML_CHARKEY } from \"./serializer.common\";\n\n// Note: The reason we re-define all of the xml2js default settings (version 2.0) here is because the default settings object exposed\n// by the xm2js library is mutable. See https://github.com/Leonidas-from-XIV/node-xml2js/issues/536\n// By creating a new copy of the settings each time we instantiate the parser,\n// we are safeguarding against the possibility of the default settings being mutated elsewhere unintentionally.\nconst xml2jsDefaultOptionsV2: xml2js.OptionsV2 = {\n explicitCharkey: false,\n trim: false,\n normalize: false,\n normalizeTags: false,\n attrkey: XML_ATTRKEY,\n explicitArray: true,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: true,\n validator: undefined,\n xmlns: false,\n explicitChildren: false,\n preserveChildrenOrder: false,\n childkey: \"$$\",\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: undefined,\n attrValueProcessors: undefined,\n tagNameProcessors: undefined,\n valueProcessors: undefined,\n rootName: \"root\",\n xmldec: {\n version: \"1.0\",\n encoding: \"UTF-8\",\n standalone: true,\n },\n doctype: undefined,\n renderOpts: {\n pretty: true,\n indent: \" \",\n newline: \"\\n\",\n },\n headless: false,\n chunkSize: 10000,\n emptyTag: \"\",\n cdata: false,\n};\n\n// The xml2js settings for general XML parsing operations.\nconst xml2jsParserSettings: any = Object.assign({}, xml2jsDefaultOptionsV2);\nxml2jsParserSettings.explicitArray = false;\n\n// The xml2js settings for general XML building operations.\nconst xml2jsBuilderSettings: any = Object.assign({}, xml2jsDefaultOptionsV2);\nxml2jsBuilderSettings.explicitArray = false;\nxml2jsBuilderSettings.renderOpts = {\n pretty: false,\n};\n\n/**\n * Converts given JSON object to XML string\n * @param obj - JSON object to be converted into XML string\n * @param opts - Options that govern the parsing of given JSON object\n */\nexport function stringifyXML(obj: unknown, opts: SerializerOptions = {}): string {\n xml2jsBuilderSettings.rootName = opts.rootName;\n xml2jsBuilderSettings.charkey = opts.xmlCharKey ?? XML_CHARKEY;\n const builder = new xml2js.Builder(xml2jsBuilderSettings);\n return builder.buildObject(obj);\n}\n\n/**\n * Converts given XML string into JSON\n * @param str - String containing the XML content to be parsed into JSON\n * @param opts - Options that govern the parsing of given xml string\n */\nexport function parseXML(str: string, opts: SerializerOptions = {}): Promise {\n xml2jsParserSettings.explicitRoot = !!opts.includeRoot;\n xml2jsParserSettings.charkey = opts.xmlCharKey ?? XML_CHARKEY;\n const xmlParser = new xml2js.Parser(xml2jsParserSettings);\n return new Promise((resolve, reject) => {\n if (!str) {\n reject(new Error(\"Document is empty\"));\n } else {\n xmlParser.parseString(str, (err?: Error, res?: any) => {\n if (err) {\n reject(err);\n } else {\n resolve(res);\n }\n });\n }\n });\n}\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, parser, processors,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n defaults = require('./defaults');\n\n builder = require('./builder');\n\n parser = require('./parser');\n\n processors = require('./processors');\n\n exports.defaults = defaults.defaults;\n\n exports.processors = processors;\n\n exports.ValidationError = (function(superClass) {\n extend(ValidationError, superClass);\n\n function ValidationError(message) {\n this.message = message;\n }\n\n return ValidationError;\n\n })(Error);\n\n exports.Builder = builder.Builder;\n\n exports.Parser = parser.Parser;\n\n exports.parseString = parser.parseString;\n\n exports.parseStringPromise = parser.parseStringPromise;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n exports.defaults = {\n \"0.1\": {\n explicitCharkey: false,\n trim: true,\n normalize: true,\n normalizeTags: false,\n attrkey: \"@\",\n charkey: \"#\",\n explicitArray: false,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: false,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n childkey: '@@',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n emptyTag: ''\n },\n \"0.2\": {\n explicitCharkey: false,\n trim: false,\n normalize: false,\n normalizeTags: false,\n attrkey: \"$\",\n charkey: \"_\",\n explicitArray: true,\n ignoreAttrs: false,\n mergeAttrs: false,\n explicitRoot: true,\n validator: null,\n xmlns: false,\n explicitChildren: false,\n preserveChildrenOrder: false,\n childkey: '$$',\n charsAsChildren: false,\n includeWhiteChars: false,\n async: false,\n strict: true,\n attrNameProcessors: null,\n attrValueProcessors: null,\n tagNameProcessors: null,\n valueProcessors: null,\n rootName: 'root',\n xmldec: {\n 'version': '1.0',\n 'encoding': 'UTF-8',\n 'standalone': true\n },\n doctype: null,\n renderOpts: {\n 'pretty': true,\n 'indent': ' ',\n 'newline': '\\n'\n },\n headless: false,\n chunkSize: 10000,\n emptyTag: '',\n cdata: false\n }\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var builder, defaults, escapeCDATA, requiresCDATA, wrapCDATA,\n hasProp = {}.hasOwnProperty;\n\n builder = require('xmlbuilder');\n\n defaults = require('./defaults').defaults;\n\n requiresCDATA = function(entry) {\n return typeof entry === \"string\" && (entry.indexOf('&') >= 0 || entry.indexOf('>') >= 0 || entry.indexOf('<') >= 0);\n };\n\n wrapCDATA = function(entry) {\n return \"\";\n };\n\n escapeCDATA = function(entry) {\n return entry.replace(']]>', ']]]]>');\n };\n\n exports.Builder = (function() {\n function Builder(opts) {\n var key, ref, value;\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n }\n\n Builder.prototype.buildObject = function(rootObj) {\n var attrkey, charkey, render, rootElement, rootName;\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n if ((Object.keys(rootObj).length === 1) && (this.options.rootName === defaults['0.2'].rootName)) {\n rootName = Object.keys(rootObj)[0];\n rootObj = rootObj[rootName];\n } else {\n rootName = this.options.rootName;\n }\n render = (function(_this) {\n return function(element, obj) {\n var attr, child, entry, index, key, value;\n if (typeof obj !== 'object') {\n if (_this.options.cdata && requiresCDATA(obj)) {\n element.raw(wrapCDATA(obj));\n } else {\n element.txt(obj);\n }\n } else if (Array.isArray(obj)) {\n for (index in obj) {\n if (!hasProp.call(obj, index)) continue;\n child = obj[index];\n for (key in child) {\n entry = child[key];\n element = render(element.ele(key), entry).up();\n }\n }\n } else {\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n child = obj[key];\n if (key === attrkey) {\n if (typeof child === \"object\") {\n for (attr in child) {\n value = child[attr];\n element = element.att(attr, value);\n }\n }\n } else if (key === charkey) {\n if (_this.options.cdata && requiresCDATA(child)) {\n element = element.raw(wrapCDATA(child));\n } else {\n element = element.txt(child);\n }\n } else if (Array.isArray(child)) {\n for (index in child) {\n if (!hasProp.call(child, index)) continue;\n entry = child[index];\n if (typeof entry === 'string') {\n if (_this.options.cdata && requiresCDATA(entry)) {\n element = element.ele(key).raw(wrapCDATA(entry)).up();\n } else {\n element = element.ele(key, entry).up();\n }\n } else {\n element = render(element.ele(key), entry).up();\n }\n }\n } else if (typeof child === \"object\") {\n element = render(element.ele(key), child).up();\n } else {\n if (typeof child === 'string' && _this.options.cdata && requiresCDATA(child)) {\n element = element.ele(key).raw(wrapCDATA(child)).up();\n } else {\n if (child == null) {\n child = '';\n }\n element = element.ele(key, child.toString()).up();\n }\n }\n }\n }\n return element;\n };\n })(this);\n rootElement = builder.create(rootName, this.options.xmldec, this.options.doctype, {\n headless: this.options.headless,\n allowSurrogateChars: this.options.allowSurrogateChars\n });\n return render(rootElement, rootObj).end(this.options.renderOpts);\n };\n\n return Builder;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLDOMImplementation, XMLDocument, XMLDocumentCB, XMLStreamWriter, XMLStringWriter, assign, isFunction, ref;\n\n ref = require('./Utility'), assign = ref.assign, isFunction = ref.isFunction;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDocument = require('./XMLDocument');\n\n XMLDocumentCB = require('./XMLDocumentCB');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n XMLStreamWriter = require('./XMLStreamWriter');\n\n NodeType = require('./NodeType');\n\n WriterState = require('./WriterState');\n\n module.exports.create = function(name, xmldec, doctype, options) {\n var doc, root;\n if (name == null) {\n throw new Error(\"Root element needs a name.\");\n }\n options = assign({}, xmldec, doctype, options);\n doc = new XMLDocument(options);\n root = doc.element(name);\n if (!options.headless) {\n doc.declaration(options);\n if ((options.pubID != null) || (options.sysID != null)) {\n doc.dtd(options);\n }\n }\n return root;\n };\n\n module.exports.begin = function(options, onData, onEnd) {\n var ref1;\n if (isFunction(options)) {\n ref1 = [options, onData], onData = ref1[0], onEnd = ref1[1];\n options = {};\n }\n if (onData) {\n return new XMLDocumentCB(options, onData, onEnd);\n } else {\n return new XMLDocument(options);\n }\n };\n\n module.exports.stringWriter = function(options) {\n return new XMLStringWriter(options);\n };\n\n module.exports.streamWriter = function(stream, options) {\n return new XMLStreamWriter(stream, options);\n };\n\n module.exports.implementation = new XMLDOMImplementation();\n\n module.exports.nodeType = NodeType;\n\n module.exports.writerState = WriterState;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var assign, getValue, isArray, isEmpty, isFunction, isObject, isPlainObject,\n slice = [].slice,\n hasProp = {}.hasOwnProperty;\n\n assign = function() {\n var i, key, len, source, sources, target;\n target = arguments[0], sources = 2 <= arguments.length ? slice.call(arguments, 1) : [];\n if (isFunction(Object.assign)) {\n Object.assign.apply(null, arguments);\n } else {\n for (i = 0, len = sources.length; i < len; i++) {\n source = sources[i];\n if (source != null) {\n for (key in source) {\n if (!hasProp.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n }\n }\n return target;\n };\n\n isFunction = function(val) {\n return !!val && Object.prototype.toString.call(val) === '[object Function]';\n };\n\n isObject = function(val) {\n var ref;\n return !!val && ((ref = typeof val) === 'function' || ref === 'object');\n };\n\n isArray = function(val) {\n if (isFunction(Array.isArray)) {\n return Array.isArray(val);\n } else {\n return Object.prototype.toString.call(val) === '[object Array]';\n }\n };\n\n isEmpty = function(val) {\n var key;\n if (isArray(val)) {\n return !val.length;\n } else {\n for (key in val) {\n if (!hasProp.call(val, key)) continue;\n return false;\n }\n return true;\n }\n };\n\n isPlainObject = function(val) {\n var ctor, proto;\n return isObject(val) && (proto = Object.getPrototypeOf(val)) && (ctor = proto.constructor) && (typeof ctor === 'function') && (ctor instanceof ctor) && (Function.prototype.toString.call(ctor) === Function.prototype.toString.call(Object));\n };\n\n getValue = function(obj) {\n if (isFunction(obj.valueOf)) {\n return obj.valueOf();\n } else {\n return obj;\n }\n };\n\n module.exports.assign = assign;\n\n module.exports.isFunction = isFunction;\n\n module.exports.isObject = isObject;\n\n module.exports.isArray = isArray;\n\n module.exports.isEmpty = isEmpty;\n\n module.exports.isPlainObject = isPlainObject;\n\n module.exports.getValue = getValue;\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMImplementation;\n\n module.exports = XMLDOMImplementation = (function() {\n function XMLDOMImplementation() {}\n\n XMLDOMImplementation.prototype.hasFeature = function(feature, version) {\n return true;\n };\n\n XMLDOMImplementation.prototype.createDocumentType = function(qualifiedName, publicId, systemId) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createDocument = function(namespaceURI, qualifiedName, doctype) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.createHTMLDocument = function(title) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLDOMImplementation.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLDOMImplementation;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDOMConfiguration, XMLDOMImplementation, XMLDocument, XMLNode, XMLStringWriter, XMLStringifier, isPlainObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isPlainObject = require('./Utility').isPlainObject;\n\n XMLDOMImplementation = require('./XMLDOMImplementation');\n\n XMLDOMConfiguration = require('./XMLDOMConfiguration');\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n module.exports = XMLDocument = (function(superClass) {\n extend(XMLDocument, superClass);\n\n function XMLDocument(options) {\n XMLDocument.__super__.constructor.call(this, null);\n this.name = \"#document\";\n this.type = NodeType.Document;\n this.documentURI = null;\n this.domConfig = new XMLDOMConfiguration();\n options || (options = {});\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.stringify = new XMLStringifier(options);\n }\n\n Object.defineProperty(XMLDocument.prototype, 'implementation', {\n value: new XMLDOMImplementation()\n });\n\n Object.defineProperty(XMLDocument.prototype, 'doctype', {\n get: function() {\n var child, i, len, ref;\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.DocType) {\n return child;\n }\n }\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'documentElement', {\n get: function() {\n return this.rootObject || null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'strictErrorChecking', {\n get: function() {\n return false;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlEncoding', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].encoding;\n } else {\n return null;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlStandalone', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].standalone === 'yes';\n } else {\n return false;\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'xmlVersion', {\n get: function() {\n if (this.children.length !== 0 && this.children[0].type === NodeType.Declaration) {\n return this.children[0].version;\n } else {\n return \"1.0\";\n }\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'URL', {\n get: function() {\n return this.documentURI;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'origin', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'compatMode', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'characterSet', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDocument.prototype, 'contentType', {\n get: function() {\n return null;\n }\n });\n\n XMLDocument.prototype.end = function(writer) {\n var writerOptions;\n writerOptions = {};\n if (!writer) {\n writer = this.options.writer;\n } else if (isPlainObject(writer)) {\n writerOptions = writer;\n writer = this.options.writer;\n }\n return writer.document(this, writer.filterOptions(writerOptions));\n };\n\n XMLDocument.prototype.toString = function(options) {\n return this.options.writer.document(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocument.prototype.createElement = function(tagName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createDocumentFragment = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTextNode = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createComment = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createCDATASection = function(data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createProcessingInstruction = function(target, data) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttribute = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEntityReference = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.importNode = function(importedNode, deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createElementNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createAttributeNS = function(namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementById = function(elementId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.adoptNode = function(source) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.normalizeDocument = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.renameNode = function(node, namespaceURI, qualifiedName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createEvent = function(eventInterface) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createRange = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createNodeIterator = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLDocument.prototype.createTreeWalker = function(root, whatToShow, filter) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLDocument;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMConfiguration, XMLDOMErrorHandler, XMLDOMStringList;\n\n XMLDOMErrorHandler = require('./XMLDOMErrorHandler');\n\n XMLDOMStringList = require('./XMLDOMStringList');\n\n module.exports = XMLDOMConfiguration = (function() {\n function XMLDOMConfiguration() {\n var clonedSelf;\n this.defaultParams = {\n \"canonical-form\": false,\n \"cdata-sections\": false,\n \"comments\": false,\n \"datatype-normalization\": false,\n \"element-content-whitespace\": true,\n \"entities\": true,\n \"error-handler\": new XMLDOMErrorHandler(),\n \"infoset\": true,\n \"validate-if-schema\": false,\n \"namespaces\": true,\n \"namespace-declarations\": true,\n \"normalize-characters\": false,\n \"schema-location\": '',\n \"schema-type\": '',\n \"split-cdata-sections\": true,\n \"validate\": false,\n \"well-formed\": true\n };\n this.params = clonedSelf = Object.create(this.defaultParams);\n }\n\n Object.defineProperty(XMLDOMConfiguration.prototype, 'parameterNames', {\n get: function() {\n return new XMLDOMStringList(Object.keys(this.defaultParams));\n }\n });\n\n XMLDOMConfiguration.prototype.getParameter = function(name) {\n if (this.params.hasOwnProperty(name)) {\n return this.params[name];\n } else {\n return null;\n }\n };\n\n XMLDOMConfiguration.prototype.canSetParameter = function(name, value) {\n return true;\n };\n\n XMLDOMConfiguration.prototype.setParameter = function(name, value) {\n if (value != null) {\n return this.params[name] = value;\n } else {\n return delete this.params[name];\n }\n };\n\n return XMLDOMConfiguration;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMErrorHandler;\n\n module.exports = XMLDOMErrorHandler = (function() {\n function XMLDOMErrorHandler() {}\n\n XMLDOMErrorHandler.prototype.handleError = function(error) {\n throw new Error(error);\n };\n\n return XMLDOMErrorHandler;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLDOMStringList;\n\n module.exports = XMLDOMStringList = (function() {\n function XMLDOMStringList(arr) {\n this.arr = arr || [];\n }\n\n Object.defineProperty(XMLDOMStringList.prototype, 'length', {\n get: function() {\n return this.arr.length;\n }\n });\n\n XMLDOMStringList.prototype.item = function(index) {\n return this.arr[index] || null;\n };\n\n XMLDOMStringList.prototype.contains = function(str) {\n return this.arr.indexOf(str) !== -1;\n };\n\n return XMLDOMStringList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var DocumentPosition, NodeType, XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLDummy, XMLElement, XMLNamedNodeMap, XMLNode, XMLNodeList, XMLProcessingInstruction, XMLRaw, XMLText, getValue, isEmpty, isFunction, isObject, ref1,\n hasProp = {}.hasOwnProperty;\n\n ref1 = require('./Utility'), isObject = ref1.isObject, isFunction = ref1.isFunction, isEmpty = ref1.isEmpty, getValue = ref1.getValue;\n\n XMLElement = null;\n\n XMLCData = null;\n\n XMLComment = null;\n\n XMLDeclaration = null;\n\n XMLDocType = null;\n\n XMLRaw = null;\n\n XMLText = null;\n\n XMLProcessingInstruction = null;\n\n XMLDummy = null;\n\n NodeType = null;\n\n XMLNodeList = null;\n\n XMLNamedNodeMap = null;\n\n DocumentPosition = null;\n\n module.exports = XMLNode = (function() {\n function XMLNode(parent1) {\n this.parent = parent1;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n this.value = null;\n this.children = [];\n this.baseURI = null;\n if (!XMLElement) {\n XMLElement = require('./XMLElement');\n XMLCData = require('./XMLCData');\n XMLComment = require('./XMLComment');\n XMLDeclaration = require('./XMLDeclaration');\n XMLDocType = require('./XMLDocType');\n XMLRaw = require('./XMLRaw');\n XMLText = require('./XMLText');\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n XMLDummy = require('./XMLDummy');\n NodeType = require('./NodeType');\n XMLNodeList = require('./XMLNodeList');\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n DocumentPosition = require('./DocumentPosition');\n }\n }\n\n Object.defineProperty(XMLNode.prototype, 'nodeName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nodeValue', {\n get: function() {\n return this.value;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'parentNode', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'childNodes', {\n get: function() {\n if (!this.childNodeList || !this.childNodeList.nodes) {\n this.childNodeList = new XMLNodeList(this.children);\n }\n return this.childNodeList;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'firstChild', {\n get: function() {\n return this.children[0] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'lastChild', {\n get: function() {\n return this.children[this.children.length - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'previousSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i - 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'nextSibling', {\n get: function() {\n var i;\n i = this.parent.children.indexOf(this);\n return this.parent.children[i + 1] || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'ownerDocument', {\n get: function() {\n return this.document() || null;\n }\n });\n\n Object.defineProperty(XMLNode.prototype, 'textContent', {\n get: function() {\n var child, j, len, ref2, str;\n if (this.nodeType === NodeType.Element || this.nodeType === NodeType.DocumentFragment) {\n str = '';\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (child.textContent) {\n str += child.textContent;\n }\n }\n return str;\n } else {\n return null;\n }\n },\n set: function(value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLNode.prototype.setParent = function(parent) {\n var child, j, len, ref2, results;\n this.parent = parent;\n if (parent) {\n this.options = parent.options;\n this.stringify = parent.stringify;\n }\n ref2 = this.children;\n results = [];\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n results.push(child.setParent(this));\n }\n return results;\n };\n\n XMLNode.prototype.element = function(name, attributes, text) {\n var childNode, item, j, k, key, lastChild, len, len1, ref2, ref3, val;\n lastChild = null;\n if (attributes === null && (text == null)) {\n ref2 = [{}, null], attributes = ref2[0], text = ref2[1];\n }\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref3 = [attributes, text], text = ref3[0], attributes = ref3[1];\n }\n if (name != null) {\n name = getValue(name);\n }\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n item = name[j];\n lastChild = this.element(item);\n }\n } else if (isFunction(name)) {\n lastChild = this.element(name.apply());\n } else if (isObject(name)) {\n for (key in name) {\n if (!hasProp.call(name, key)) continue;\n val = name[key];\n if (isFunction(val)) {\n val = val.apply();\n }\n if (!this.options.ignoreDecorators && this.stringify.convertAttKey && key.indexOf(this.stringify.convertAttKey) === 0) {\n lastChild = this.attribute(key.substr(this.stringify.convertAttKey.length), val);\n } else if (!this.options.separateArrayItems && Array.isArray(val) && isEmpty(val)) {\n lastChild = this.dummy();\n } else if (isObject(val) && isEmpty(val)) {\n lastChild = this.element(key);\n } else if (!this.options.keepNullNodes && (val == null)) {\n lastChild = this.dummy();\n } else if (!this.options.separateArrayItems && Array.isArray(val)) {\n for (k = 0, len1 = val.length; k < len1; k++) {\n item = val[k];\n childNode = {};\n childNode[key] = item;\n lastChild = this.element(childNode);\n }\n } else if (isObject(val)) {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && key.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.element(val);\n } else {\n lastChild = this.element(key);\n lastChild.element(val);\n }\n } else {\n lastChild = this.element(key, val);\n }\n }\n } else if (!this.options.keepNullNodes && text === null) {\n lastChild = this.dummy();\n } else {\n if (!this.options.ignoreDecorators && this.stringify.convertTextKey && name.indexOf(this.stringify.convertTextKey) === 0) {\n lastChild = this.text(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCDataKey && name.indexOf(this.stringify.convertCDataKey) === 0) {\n lastChild = this.cdata(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertCommentKey && name.indexOf(this.stringify.convertCommentKey) === 0) {\n lastChild = this.comment(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertRawKey && name.indexOf(this.stringify.convertRawKey) === 0) {\n lastChild = this.raw(text);\n } else if (!this.options.ignoreDecorators && this.stringify.convertPIKey && name.indexOf(this.stringify.convertPIKey) === 0) {\n lastChild = this.instruction(name.substr(this.stringify.convertPIKey.length), text);\n } else {\n lastChild = this.node(name, attributes, text);\n }\n }\n if (lastChild == null) {\n throw new Error(\"Could not create any elements with: \" + name + \". \" + this.debugInfo());\n }\n return lastChild;\n };\n\n XMLNode.prototype.insertBefore = function(name, attributes, text) {\n var child, i, newChild, refChild, removed;\n if (name != null ? name.type : void 0) {\n newChild = name;\n refChild = attributes;\n newChild.setParent(this);\n if (refChild) {\n i = children.indexOf(refChild);\n removed = children.splice(i);\n children.push(newChild);\n Array.prototype.push.apply(children, removed);\n } else {\n children.push(newChild);\n }\n return newChild;\n } else {\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n }\n };\n\n XMLNode.prototype.insertAfter = function(name, attributes, text) {\n var child, i, removed;\n if (this.isRoot) {\n throw new Error(\"Cannot insert elements at root level. \" + this.debugInfo(name));\n }\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.element(name, attributes, text);\n Array.prototype.push.apply(this.parent.children, removed);\n return child;\n };\n\n XMLNode.prototype.remove = function() {\n var i, ref2;\n if (this.isRoot) {\n throw new Error(\"Cannot remove the root element. \" + this.debugInfo());\n }\n i = this.parent.children.indexOf(this);\n [].splice.apply(this.parent.children, [i, i - i + 1].concat(ref2 = [])), ref2;\n return this.parent;\n };\n\n XMLNode.prototype.node = function(name, attributes, text) {\n var child, ref2;\n if (name != null) {\n name = getValue(name);\n }\n attributes || (attributes = {});\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref2 = [attributes, text], text = ref2[0], attributes = ref2[1];\n }\n child = new XMLElement(this, name, attributes);\n if (text != null) {\n child.text(text);\n }\n this.children.push(child);\n return child;\n };\n\n XMLNode.prototype.text = function(value) {\n var child;\n if (isObject(value)) {\n this.element(value);\n }\n child = new XMLText(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.cdata = function(value) {\n var child;\n child = new XMLCData(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.comment = function(value) {\n var child;\n child = new XMLComment(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.commentBefore = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.commentAfter = function(value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.comment(value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.raw = function(value) {\n var child;\n child = new XMLRaw(this, value);\n this.children.push(child);\n return this;\n };\n\n XMLNode.prototype.dummy = function() {\n var child;\n child = new XMLDummy(this);\n return child;\n };\n\n XMLNode.prototype.instruction = function(target, value) {\n var insTarget, insValue, instruction, j, len;\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (j = 0, len = target.length; j < len; j++) {\n insTarget = target[j];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n instruction = new XMLProcessingInstruction(this, target, value);\n this.children.push(instruction);\n }\n return this;\n };\n\n XMLNode.prototype.instructionBefore = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.instructionAfter = function(target, value) {\n var child, i, removed;\n i = this.parent.children.indexOf(this);\n removed = this.parent.children.splice(i + 1);\n child = this.parent.instruction(target, value);\n Array.prototype.push.apply(this.parent.children, removed);\n return this;\n };\n\n XMLNode.prototype.declaration = function(version, encoding, standalone) {\n var doc, xmldec;\n doc = this.document();\n xmldec = new XMLDeclaration(doc, version, encoding, standalone);\n if (doc.children.length === 0) {\n doc.children.unshift(xmldec);\n } else if (doc.children[0].type === NodeType.Declaration) {\n doc.children[0] = xmldec;\n } else {\n doc.children.unshift(xmldec);\n }\n return doc.root() || doc;\n };\n\n XMLNode.prototype.dtd = function(pubID, sysID) {\n var child, doc, doctype, i, j, k, len, len1, ref2, ref3;\n doc = this.document();\n doctype = new XMLDocType(doc, pubID, sysID);\n ref2 = doc.children;\n for (i = j = 0, len = ref2.length; j < len; i = ++j) {\n child = ref2[i];\n if (child.type === NodeType.DocType) {\n doc.children[i] = doctype;\n return doctype;\n }\n }\n ref3 = doc.children;\n for (i = k = 0, len1 = ref3.length; k < len1; i = ++k) {\n child = ref3[i];\n if (child.isRoot) {\n doc.children.splice(i, 0, doctype);\n return doctype;\n }\n }\n doc.children.push(doctype);\n return doctype;\n };\n\n XMLNode.prototype.up = function() {\n if (this.isRoot) {\n throw new Error(\"The root node has no parent. Use doc() if you need to get the document object.\");\n }\n return this.parent;\n };\n\n XMLNode.prototype.root = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node.rootObject;\n } else if (node.isRoot) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.document = function() {\n var node;\n node = this;\n while (node) {\n if (node.type === NodeType.Document) {\n return node;\n } else {\n node = node.parent;\n }\n }\n };\n\n XMLNode.prototype.end = function(options) {\n return this.document().end(options);\n };\n\n XMLNode.prototype.prev = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i < 1) {\n throw new Error(\"Already at the first node. \" + this.debugInfo());\n }\n return this.parent.children[i - 1];\n };\n\n XMLNode.prototype.next = function() {\n var i;\n i = this.parent.children.indexOf(this);\n if (i === -1 || i === this.parent.children.length - 1) {\n throw new Error(\"Already at the last node. \" + this.debugInfo());\n }\n return this.parent.children[i + 1];\n };\n\n XMLNode.prototype.importDocument = function(doc) {\n var clonedRoot;\n clonedRoot = doc.root().clone();\n clonedRoot.parent = this;\n clonedRoot.isRoot = false;\n this.children.push(clonedRoot);\n return this;\n };\n\n XMLNode.prototype.debugInfo = function(name) {\n var ref2, ref3;\n name = name || this.name;\n if ((name == null) && !((ref2 = this.parent) != null ? ref2.name : void 0)) {\n return \"\";\n } else if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else if (!((ref3 = this.parent) != null ? ref3.name : void 0)) {\n return \"node: <\" + name + \">\";\n } else {\n return \"node: <\" + name + \">, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLNode.prototype.ele = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.doc = function() {\n return this.document();\n };\n\n XMLNode.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLNode.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLNode.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLNode.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLNode.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLNode.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLNode.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLNode.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLNode.prototype.u = function() {\n return this.up();\n };\n\n XMLNode.prototype.importXMLBuilder = function(doc) {\n return this.importDocument(doc);\n };\n\n XMLNode.prototype.replaceChild = function(newChild, oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.removeChild = function(oldChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.appendChild = function(newChild) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.hasChildNodes = function() {\n return this.children.length !== 0;\n };\n\n XMLNode.prototype.cloneNode = function(deep) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.normalize = function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isSupported = function(feature, version) {\n return true;\n };\n\n XMLNode.prototype.hasAttributes = function() {\n return this.attribs.length !== 0;\n };\n\n XMLNode.prototype.compareDocumentPosition = function(other) {\n var ref, res;\n ref = this;\n if (ref === other) {\n return 0;\n } else if (this.document() !== other.document()) {\n res = DocumentPosition.Disconnected | DocumentPosition.ImplementationSpecific;\n if (Math.random() < 0.5) {\n res |= DocumentPosition.Preceding;\n } else {\n res |= DocumentPosition.Following;\n }\n return res;\n } else if (ref.isAncestor(other)) {\n return DocumentPosition.Contains | DocumentPosition.Preceding;\n } else if (ref.isDescendant(other)) {\n return DocumentPosition.Contains | DocumentPosition.Following;\n } else if (ref.isPreceding(other)) {\n return DocumentPosition.Preceding;\n } else {\n return DocumentPosition.Following;\n }\n };\n\n XMLNode.prototype.isSameNode = function(other) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupPrefix = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isDefaultNamespace = function(namespaceURI) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.lookupNamespaceURI = function(prefix) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.isEqualNode = function(node) {\n var i, j, ref2;\n if (node.nodeType !== this.nodeType) {\n return false;\n }\n if (node.children.length !== this.children.length) {\n return false;\n }\n for (i = j = 0, ref2 = this.children.length - 1; 0 <= ref2 ? j <= ref2 : j >= ref2; i = 0 <= ref2 ? ++j : --j) {\n if (!this.children[i].isEqualNode(node.children[i])) {\n return false;\n }\n }\n return true;\n };\n\n XMLNode.prototype.getFeature = function(feature, version) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.setUserData = function(key, data, handler) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.getUserData = function(key) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLNode.prototype.contains = function(other) {\n if (!other) {\n return false;\n }\n return other === this || this.isDescendant(other);\n };\n\n XMLNode.prototype.isDescendant = function(node) {\n var child, isDescendantChild, j, len, ref2;\n ref2 = this.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (node === child) {\n return true;\n }\n isDescendantChild = child.isDescendant(node);\n if (isDescendantChild) {\n return true;\n }\n }\n return false;\n };\n\n XMLNode.prototype.isAncestor = function(node) {\n return node.isDescendant(this);\n };\n\n XMLNode.prototype.isPreceding = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos < thisPos;\n }\n };\n\n XMLNode.prototype.isFollowing = function(node) {\n var nodePos, thisPos;\n nodePos = this.treePosition(node);\n thisPos = this.treePosition(this);\n if (nodePos === -1 || thisPos === -1) {\n return false;\n } else {\n return nodePos > thisPos;\n }\n };\n\n XMLNode.prototype.treePosition = function(node) {\n var found, pos;\n pos = 0;\n found = false;\n this.foreachTreeNode(this.document(), function(childNode) {\n pos++;\n if (!found && childNode === node) {\n return found = true;\n }\n });\n if (found) {\n return pos;\n } else {\n return -1;\n }\n };\n\n XMLNode.prototype.foreachTreeNode = function(node, func) {\n var child, j, len, ref2, res;\n node || (node = this.document());\n ref2 = node.children;\n for (j = 0, len = ref2.length; j < len; j++) {\n child = ref2[j];\n if (res = func(child)) {\n return res;\n } else {\n res = this.foreachTreeNode(child, func);\n if (res) {\n return res;\n }\n }\n }\n };\n\n return XMLNode;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLElement, XMLNamedNodeMap, XMLNode, getValue, isFunction, isObject, ref,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, getValue = ref.getValue;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLElement = (function(superClass) {\n extend(XMLElement, superClass);\n\n function XMLElement(parent, name, attributes) {\n var child, j, len, ref1;\n XMLElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing element name. \" + this.debugInfo());\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.Element;\n this.attribs = {};\n this.schemaTypeInfo = null;\n if (attributes != null) {\n this.attribute(attributes);\n }\n if (parent.type === NodeType.Document) {\n this.isRoot = true;\n this.documentObject = parent;\n parent.rootObject = this;\n if (parent.children) {\n ref1 = parent.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n if (child.type === NodeType.DocType) {\n child.name = this.name;\n break;\n }\n }\n }\n }\n }\n\n Object.defineProperty(XMLElement.prototype, 'tagName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'id', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'className', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'classList', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLElement.prototype, 'attributes', {\n get: function() {\n if (!this.attributeMap || !this.attributeMap.nodes) {\n this.attributeMap = new XMLNamedNodeMap(this.attribs);\n }\n return this.attributeMap;\n }\n });\n\n XMLElement.prototype.clone = function() {\n var att, attName, clonedSelf, ref1;\n clonedSelf = Object.create(this);\n if (clonedSelf.isRoot) {\n clonedSelf.documentObject = null;\n }\n clonedSelf.attribs = {};\n ref1 = this.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n clonedSelf.attribs[attName] = att.clone();\n }\n clonedSelf.children = [];\n this.children.forEach(function(child) {\n var clonedChild;\n clonedChild = child.clone();\n clonedChild.parent = clonedSelf;\n return clonedSelf.children.push(clonedChild);\n });\n return clonedSelf;\n };\n\n XMLElement.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLElement.prototype.removeAttribute = function(name) {\n var attName, j, len;\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo());\n }\n name = getValue(name);\n if (Array.isArray(name)) {\n for (j = 0, len = name.length; j < len; j++) {\n attName = name[j];\n delete this.attribs[attName];\n }\n } else {\n delete this.attribs[name];\n }\n return this;\n };\n\n XMLElement.prototype.toString = function(options) {\n return this.options.writer.element(this, this.options.writer.filterOptions(options));\n };\n\n XMLElement.prototype.att = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.a = function(name, value) {\n return this.attribute(name, value);\n };\n\n XMLElement.prototype.getAttribute = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].value;\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttribute = function(name, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNode = function(name) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name];\n } else {\n return null;\n }\n };\n\n XMLElement.prototype.setAttributeNode = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNode = function(oldAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(name) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNS = function(namespaceURI, qualifiedName, value) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.removeAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getAttributeNodeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setAttributeNodeNS = function(newAttr) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.hasAttribute = function(name) {\n return this.attribs.hasOwnProperty(name);\n };\n\n XMLElement.prototype.hasAttributeNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttribute = function(name, isId) {\n if (this.attribs.hasOwnProperty(name)) {\n return this.attribs[name].isId;\n } else {\n return isId;\n }\n };\n\n XMLElement.prototype.setIdAttributeNS = function(namespaceURI, localName, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.setIdAttributeNode = function(idAttr, isId) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagName = function(tagname) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByTagNameNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.getElementsByClassName = function(classNames) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLElement.prototype.isEqualNode = function(node) {\n var i, j, ref1;\n if (!XMLElement.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.attribs.length !== this.attribs.length) {\n return false;\n }\n for (i = j = 0, ref1 = this.attribs.length - 1; 0 <= ref1 ? j <= ref1 : j >= ref1; i = 0 <= ref1 ? ++j : --j) {\n if (!this.attribs[i].isEqualNode(node.attribs[i])) {\n return false;\n }\n }\n return true;\n };\n\n return XMLElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Element: 1,\n Attribute: 2,\n Text: 3,\n CData: 4,\n EntityReference: 5,\n EntityDeclaration: 6,\n ProcessingInstruction: 7,\n Comment: 8,\n Document: 9,\n DocType: 10,\n DocumentFragment: 11,\n NotationDeclaration: 12,\n Declaration: 201,\n Raw: 202,\n AttributeDeclaration: 203,\n ElementDeclaration: 204,\n Dummy: 205\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLAttribute, XMLNode;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLAttribute = (function() {\n function XMLAttribute(parent, name, value) {\n this.parent = parent;\n if (this.parent) {\n this.options = this.parent.options;\n this.stringify = this.parent.stringify;\n }\n if (name == null) {\n throw new Error(\"Missing attribute name. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.value = this.stringify.attValue(value);\n this.type = NodeType.Attribute;\n this.isId = false;\n this.schemaTypeInfo = null;\n }\n\n Object.defineProperty(XMLAttribute.prototype, 'nodeType', {\n get: function() {\n return this.type;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'ownerElement', {\n get: function() {\n return this.parent;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'namespaceURI', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'prefix', {\n get: function() {\n return '';\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'localName', {\n get: function() {\n return this.name;\n }\n });\n\n Object.defineProperty(XMLAttribute.prototype, 'specified', {\n get: function() {\n return true;\n }\n });\n\n XMLAttribute.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLAttribute.prototype.toString = function(options) {\n return this.options.writer.attribute(this, this.options.writer.filterOptions(options));\n };\n\n XMLAttribute.prototype.debugInfo = function(name) {\n name = name || this.name;\n if (name == null) {\n return \"parent: <\" + this.parent.name + \">\";\n } else {\n return \"attribute: {\" + name + \"}, parent: <\" + this.parent.name + \">\";\n }\n };\n\n XMLAttribute.prototype.isEqualNode = function(node) {\n if (node.namespaceURI !== this.namespaceURI) {\n return false;\n }\n if (node.prefix !== this.prefix) {\n return false;\n }\n if (node.localName !== this.localName) {\n return false;\n }\n if (node.value !== this.value) {\n return false;\n }\n return true;\n };\n\n return XMLAttribute;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNamedNodeMap;\n\n module.exports = XMLNamedNodeMap = (function() {\n function XMLNamedNodeMap(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNamedNodeMap.prototype, 'length', {\n get: function() {\n return Object.keys(this.nodes).length || 0;\n }\n });\n\n XMLNamedNodeMap.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItem = function(name) {\n return this.nodes[name];\n };\n\n XMLNamedNodeMap.prototype.setNamedItem = function(node) {\n var oldNode;\n oldNode = this.nodes[node.nodeName];\n this.nodes[node.nodeName] = node;\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.removeNamedItem = function(name) {\n var oldNode;\n oldNode = this.nodes[name];\n delete this.nodes[name];\n return oldNode || null;\n };\n\n XMLNamedNodeMap.prototype.item = function(index) {\n return this.nodes[Object.keys(this.nodes)[index]] || null;\n };\n\n XMLNamedNodeMap.prototype.getNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.setNamedItemNS = function(node) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n XMLNamedNodeMap.prototype.removeNamedItemNS = function(namespaceURI, localName) {\n throw new Error(\"This DOM method is not implemented.\");\n };\n\n return XMLNamedNodeMap;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCData, XMLCharacterData,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLCData = (function(superClass) {\n extend(XMLCData, superClass);\n\n function XMLCData(parent, text) {\n XMLCData.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing CDATA text. \" + this.debugInfo());\n }\n this.name = \"#cdata-section\";\n this.type = NodeType.CData;\n this.value = this.stringify.cdata(text);\n }\n\n XMLCData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCData.prototype.toString = function(options) {\n return this.options.writer.cdata(this, this.options.writer.filterOptions(options));\n };\n\n return XMLCData;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLCharacterData, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLCharacterData = (function(superClass) {\n extend(XMLCharacterData, superClass);\n\n function XMLCharacterData(parent) {\n XMLCharacterData.__super__.constructor.call(this, parent);\n this.value = '';\n }\n\n Object.defineProperty(XMLCharacterData.prototype, 'data', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'length', {\n get: function() {\n return this.value.length;\n }\n });\n\n Object.defineProperty(XMLCharacterData.prototype, 'textContent', {\n get: function() {\n return this.value;\n },\n set: function(value) {\n return this.value = value || '';\n }\n });\n\n XMLCharacterData.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLCharacterData.prototype.substringData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.appendData = function(arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.insertData = function(offset, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.deleteData = function(offset, count) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.replaceData = function(offset, count, arg) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLCharacterData.prototype.isEqualNode = function(node) {\n if (!XMLCharacterData.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.data !== this.data) {\n return false;\n }\n return true;\n };\n\n return XMLCharacterData;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLComment,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLComment = (function(superClass) {\n extend(XMLComment, superClass);\n\n function XMLComment(parent, text) {\n XMLComment.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing comment text. \" + this.debugInfo());\n }\n this.name = \"#comment\";\n this.type = NodeType.Comment;\n this.value = this.stringify.comment(text);\n }\n\n XMLComment.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLComment.prototype.toString = function(options) {\n return this.options.writer.comment(this, this.options.writer.filterOptions(options));\n };\n\n return XMLComment;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDeclaration, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDeclaration = (function(superClass) {\n extend(XMLDeclaration, superClass);\n\n function XMLDeclaration(parent, version, encoding, standalone) {\n var ref;\n XMLDeclaration.__super__.constructor.call(this, parent);\n if (isObject(version)) {\n ref = version, version = ref.version, encoding = ref.encoding, standalone = ref.standalone;\n }\n if (!version) {\n version = '1.0';\n }\n this.type = NodeType.Declaration;\n this.version = this.stringify.xmlVersion(version);\n if (encoding != null) {\n this.encoding = this.stringify.xmlEncoding(encoding);\n }\n if (standalone != null) {\n this.standalone = this.stringify.xmlStandalone(standalone);\n }\n }\n\n XMLDeclaration.prototype.toString = function(options) {\n return this.options.writer.declaration(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDeclaration;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLNamedNodeMap, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLNamedNodeMap = require('./XMLNamedNodeMap');\n\n module.exports = XMLDocType = (function(superClass) {\n extend(XMLDocType, superClass);\n\n function XMLDocType(parent, pubID, sysID) {\n var child, i, len, ref, ref1, ref2;\n XMLDocType.__super__.constructor.call(this, parent);\n this.type = NodeType.DocType;\n if (parent.children) {\n ref = parent.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.Element) {\n this.name = child.name;\n break;\n }\n }\n }\n this.documentObject = parent;\n if (isObject(pubID)) {\n ref1 = pubID, pubID = ref1.pubID, sysID = ref1.sysID;\n }\n if (sysID == null) {\n ref2 = [pubID, sysID], sysID = ref2[0], pubID = ref2[1];\n }\n if (pubID != null) {\n this.pubID = this.stringify.dtdPubID(pubID);\n }\n if (sysID != null) {\n this.sysID = this.stringify.dtdSysID(sysID);\n }\n }\n\n Object.defineProperty(XMLDocType.prototype, 'entities', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if ((child.type === NodeType.EntityDeclaration) && !child.pe) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'notations', {\n get: function() {\n var child, i, len, nodes, ref;\n nodes = {};\n ref = this.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n if (child.type === NodeType.NotationDeclaration) {\n nodes[child.name] = child;\n }\n }\n return new XMLNamedNodeMap(nodes);\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDocType.prototype, 'internalSubset', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n XMLDocType.prototype.element = function(name, value) {\n var child;\n child = new XMLDTDElement(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var child;\n child = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.entity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, false, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.pEntity = function(name, value) {\n var child;\n child = new XMLDTDEntity(this, true, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.notation = function(name, value) {\n var child;\n child = new XMLDTDNotation(this, name, value);\n this.children.push(child);\n return this;\n };\n\n XMLDocType.prototype.toString = function(options) {\n return this.options.writer.docType(this, this.options.writer.filterOptions(options));\n };\n\n XMLDocType.prototype.ele = function(name, value) {\n return this.element(name, value);\n };\n\n XMLDocType.prototype.att = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n return this.attList(elementName, attributeName, attributeType, defaultValueType, defaultValue);\n };\n\n XMLDocType.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocType.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocType.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n XMLDocType.prototype.up = function() {\n return this.root() || this.documentObject;\n };\n\n XMLDocType.prototype.isEqualNode = function(node) {\n if (!XMLDocType.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.name !== this.name) {\n return false;\n }\n if (node.publicId !== this.publicId) {\n return false;\n }\n if (node.systemId !== this.systemId) {\n return false;\n }\n return true;\n };\n\n return XMLDocType;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDAttList, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDAttList = (function(superClass) {\n extend(XMLDTDAttList, superClass);\n\n function XMLDTDAttList(parent, elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n XMLDTDAttList.__super__.constructor.call(this, parent);\n if (elementName == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (attributeName == null) {\n throw new Error(\"Missing DTD attribute name. \" + this.debugInfo(elementName));\n }\n if (!attributeType) {\n throw new Error(\"Missing DTD attribute type. \" + this.debugInfo(elementName));\n }\n if (!defaultValueType) {\n throw new Error(\"Missing DTD attribute default. \" + this.debugInfo(elementName));\n }\n if (defaultValueType.indexOf('#') !== 0) {\n defaultValueType = '#' + defaultValueType;\n }\n if (!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n if (defaultValue && !defaultValueType.match(/^(#FIXED|#DEFAULT)$/)) {\n throw new Error(\"Default value only applies to #FIXED or #DEFAULT. \" + this.debugInfo(elementName));\n }\n this.elementName = this.stringify.name(elementName);\n this.type = NodeType.AttributeDeclaration;\n this.attributeName = this.stringify.name(attributeName);\n this.attributeType = this.stringify.dtdAttType(attributeType);\n if (defaultValue) {\n this.defaultValue = this.stringify.dtdAttDefault(defaultValue);\n }\n this.defaultValueType = defaultValueType;\n }\n\n XMLDTDAttList.prototype.toString = function(options) {\n return this.options.writer.dtdAttList(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDAttList;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDEntity, XMLNode, isObject,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n isObject = require('./Utility').isObject;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDEntity = (function(superClass) {\n extend(XMLDTDEntity, superClass);\n\n function XMLDTDEntity(parent, pe, name, value) {\n XMLDTDEntity.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD entity name. \" + this.debugInfo(name));\n }\n if (value == null) {\n throw new Error(\"Missing DTD entity value. \" + this.debugInfo(name));\n }\n this.pe = !!pe;\n this.name = this.stringify.name(name);\n this.type = NodeType.EntityDeclaration;\n if (!isObject(value)) {\n this.value = this.stringify.dtdEntityValue(value);\n this.internal = true;\n } else {\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public and/or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n if (value.pubID && !value.sysID) {\n throw new Error(\"System identifier is required for a public external entity. \" + this.debugInfo(name));\n }\n this.internal = false;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n if (value.nData != null) {\n this.nData = this.stringify.dtdNData(value.nData);\n }\n if (this.pe && this.nData) {\n throw new Error(\"Notation declaration is not allowed in a parameter entity. \" + this.debugInfo(name));\n }\n }\n }\n\n Object.defineProperty(XMLDTDEntity.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'notationName', {\n get: function() {\n return this.nData || null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'inputEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlEncoding', {\n get: function() {\n return null;\n }\n });\n\n Object.defineProperty(XMLDTDEntity.prototype, 'xmlVersion', {\n get: function() {\n return null;\n }\n });\n\n XMLDTDEntity.prototype.toString = function(options) {\n return this.options.writer.dtdEntity(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDEntity;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDElement, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDElement = (function(superClass) {\n extend(XMLDTDElement, superClass);\n\n function XMLDTDElement(parent, name, value) {\n XMLDTDElement.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD element name. \" + this.debugInfo());\n }\n if (!value) {\n value = '(#PCDATA)';\n }\n if (Array.isArray(value)) {\n value = '(' + value.join(',') + ')';\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.ElementDeclaration;\n this.value = this.stringify.dtdElementValue(value);\n }\n\n XMLDTDElement.prototype.toString = function(options) {\n return this.options.writer.dtdElement(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDElement;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDTDNotation, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDTDNotation = (function(superClass) {\n extend(XMLDTDNotation, superClass);\n\n function XMLDTDNotation(parent, name, value) {\n XMLDTDNotation.__super__.constructor.call(this, parent);\n if (name == null) {\n throw new Error(\"Missing DTD notation name. \" + this.debugInfo(name));\n }\n if (!value.pubID && !value.sysID) {\n throw new Error(\"Public or system identifiers are required for an external entity. \" + this.debugInfo(name));\n }\n this.name = this.stringify.name(name);\n this.type = NodeType.NotationDeclaration;\n if (value.pubID != null) {\n this.pubID = this.stringify.dtdPubID(value.pubID);\n }\n if (value.sysID != null) {\n this.sysID = this.stringify.dtdSysID(value.sysID);\n }\n }\n\n Object.defineProperty(XMLDTDNotation.prototype, 'publicId', {\n get: function() {\n return this.pubID;\n }\n });\n\n Object.defineProperty(XMLDTDNotation.prototype, 'systemId', {\n get: function() {\n return this.sysID;\n }\n });\n\n XMLDTDNotation.prototype.toString = function(options) {\n return this.options.writer.dtdNotation(this, this.options.writer.filterOptions(options));\n };\n\n return XMLDTDNotation;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLNode, XMLRaw,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLNode = require('./XMLNode');\n\n module.exports = XMLRaw = (function(superClass) {\n extend(XMLRaw, superClass);\n\n function XMLRaw(parent, text) {\n XMLRaw.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing raw text. \" + this.debugInfo());\n }\n this.type = NodeType.Raw;\n this.value = this.stringify.raw(text);\n }\n\n XMLRaw.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLRaw.prototype.toString = function(options) {\n return this.options.writer.raw(this, this.options.writer.filterOptions(options));\n };\n\n return XMLRaw;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLText,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLText = (function(superClass) {\n extend(XMLText, superClass);\n\n function XMLText(parent, text) {\n XMLText.__super__.constructor.call(this, parent);\n if (text == null) {\n throw new Error(\"Missing element text. \" + this.debugInfo());\n }\n this.name = \"#text\";\n this.type = NodeType.Text;\n this.value = this.stringify.text(text);\n }\n\n Object.defineProperty(XMLText.prototype, 'isElementContentWhitespace', {\n get: function() {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n }\n });\n\n Object.defineProperty(XMLText.prototype, 'wholeText', {\n get: function() {\n var next, prev, str;\n str = '';\n prev = this.previousSibling;\n while (prev) {\n str = prev.data + str;\n prev = prev.previousSibling;\n }\n str += this.data;\n next = this.nextSibling;\n while (next) {\n str = str + next.data;\n next = next.nextSibling;\n }\n return str;\n }\n });\n\n XMLText.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLText.prototype.toString = function(options) {\n return this.options.writer.text(this, this.options.writer.filterOptions(options));\n };\n\n XMLText.prototype.splitText = function(offset) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n XMLText.prototype.replaceWholeText = function(content) {\n throw new Error(\"This DOM method is not implemented.\" + this.debugInfo());\n };\n\n return XMLText;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLCharacterData, XMLProcessingInstruction,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLCharacterData = require('./XMLCharacterData');\n\n module.exports = XMLProcessingInstruction = (function(superClass) {\n extend(XMLProcessingInstruction, superClass);\n\n function XMLProcessingInstruction(parent, target, value) {\n XMLProcessingInstruction.__super__.constructor.call(this, parent);\n if (target == null) {\n throw new Error(\"Missing instruction target. \" + this.debugInfo());\n }\n this.type = NodeType.ProcessingInstruction;\n this.target = this.stringify.insTarget(target);\n this.name = this.target;\n if (value) {\n this.value = this.stringify.insValue(value);\n }\n }\n\n XMLProcessingInstruction.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLProcessingInstruction.prototype.toString = function(options) {\n return this.options.writer.processingInstruction(this, this.options.writer.filterOptions(options));\n };\n\n XMLProcessingInstruction.prototype.isEqualNode = function(node) {\n if (!XMLProcessingInstruction.__super__.isEqualNode.apply(this, arguments).isEqualNode(node)) {\n return false;\n }\n if (node.target !== this.target) {\n return false;\n }\n return true;\n };\n\n return XMLProcessingInstruction;\n\n })(XMLCharacterData);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, XMLDummy, XMLNode,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n XMLNode = require('./XMLNode');\n\n NodeType = require('./NodeType');\n\n module.exports = XMLDummy = (function(superClass) {\n extend(XMLDummy, superClass);\n\n function XMLDummy(parent) {\n XMLDummy.__super__.constructor.call(this, parent);\n this.type = NodeType.Dummy;\n }\n\n XMLDummy.prototype.clone = function() {\n return Object.create(this);\n };\n\n XMLDummy.prototype.toString = function(options) {\n return '';\n };\n\n return XMLDummy;\n\n })(XMLNode);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLNodeList;\n\n module.exports = XMLNodeList = (function() {\n function XMLNodeList(nodes) {\n this.nodes = nodes;\n }\n\n Object.defineProperty(XMLNodeList.prototype, 'length', {\n get: function() {\n return this.nodes.length || 0;\n }\n });\n\n XMLNodeList.prototype.clone = function() {\n return this.nodes = null;\n };\n\n XMLNodeList.prototype.item = function(index) {\n return this.nodes[index] || null;\n };\n\n return XMLNodeList;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n Disconnected: 1,\n Preceding: 2,\n Following: 4,\n Contains: 8,\n ContainedBy: 16,\n ImplementationSpecific: 32\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var XMLStringifier,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n hasProp = {}.hasOwnProperty;\n\n module.exports = XMLStringifier = (function() {\n function XMLStringifier(options) {\n this.assertLegalName = bind(this.assertLegalName, this);\n this.assertLegalChar = bind(this.assertLegalChar, this);\n var key, ref, value;\n options || (options = {});\n this.options = options;\n if (!this.options.version) {\n this.options.version = '1.0';\n }\n ref = options.stringify || {};\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this[key] = value;\n }\n }\n\n XMLStringifier.prototype.name = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalName('' + val || '');\n };\n\n XMLStringifier.prototype.text = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.textEscape('' + val || ''));\n };\n\n XMLStringifier.prototype.cdata = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n val = val.replace(']]>', ']]]]>');\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.comment = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/--/)) {\n throw new Error(\"Comment text cannot contain double-hypen: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.raw = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return '' + val || '';\n };\n\n XMLStringifier.prototype.attValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar(this.attEscape(val = '' + val || ''));\n };\n\n XMLStringifier.prototype.insTarget = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.insValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (val.match(/\\?>/)) {\n throw new Error(\"Invalid processing instruction value: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlVersion = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/1\\.[0-9]+/)) {\n throw new Error(\"Invalid version number: \" + val);\n }\n return val;\n };\n\n XMLStringifier.prototype.xmlEncoding = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n val = '' + val || '';\n if (!val.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/)) {\n throw new Error(\"Invalid encoding: \" + val);\n }\n return this.assertLegalChar(val);\n };\n\n XMLStringifier.prototype.xmlStandalone = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n if (val) {\n return \"yes\";\n } else {\n return \"no\";\n }\n };\n\n XMLStringifier.prototype.dtdPubID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdSysID = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdElementValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttType = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdAttDefault = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdEntityValue = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.dtdNData = function(val) {\n if (this.options.noValidation) {\n return val;\n }\n return this.assertLegalChar('' + val || '');\n };\n\n XMLStringifier.prototype.convertAttKey = '@';\n\n XMLStringifier.prototype.convertPIKey = '?';\n\n XMLStringifier.prototype.convertTextKey = '#text';\n\n XMLStringifier.prototype.convertCDataKey = '#cdata';\n\n XMLStringifier.prototype.convertCommentKey = '#comment';\n\n XMLStringifier.prototype.convertRawKey = '#raw';\n\n XMLStringifier.prototype.assertLegalChar = function(str) {\n var regex, res;\n if (this.options.noValidation) {\n return str;\n }\n regex = '';\n if (this.options.version === '1.0') {\n regex = /[\\0-\\x08\\x0B\\f\\x0E-\\x1F\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n } else if (this.options.version === '1.1') {\n regex = /[\\0\\uFFFE\\uFFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF]/;\n if (res = str.match(regex)) {\n throw new Error(\"Invalid character in string: \" + str + \" at index \" + res.index);\n }\n }\n return str;\n };\n\n XMLStringifier.prototype.assertLegalName = function(str) {\n var regex;\n if (this.options.noValidation) {\n return str;\n }\n this.assertLegalChar(str);\n regex = /^([:A-Z_a-z\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])([\\x2D\\.0-:A-Z_a-z\\xB7\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u037D\\u037F-\\u1FFF\\u200C\\u200D\\u203F\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]|[\\uD800-\\uDB7F][\\uDC00-\\uDFFF])*$/;\n if (!str.match(regex)) {\n throw new Error(\"Invalid character in name\");\n }\n return str;\n };\n\n XMLStringifier.prototype.textEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&').replace(//g, '>').replace(/\\r/g, ' ');\n };\n\n XMLStringifier.prototype.attEscape = function(str) {\n var ampregex;\n if (this.options.noValidation) {\n return str;\n }\n ampregex = this.options.noDoubleEncoding ? /(?!&\\S+;)&/g : /&/g;\n return str.replace(ampregex, '&').replace(/ 0) {\n return new Array(indentLevel).join(options.indent);\n }\n }\n return '';\n };\n\n XMLWriterBase.prototype.endline = function(node, options, level) {\n if (!options.pretty || options.suppressPrettyCount) {\n return '';\n } else {\n return options.newline;\n }\n };\n\n XMLWriterBase.prototype.attribute = function(att, options, level) {\n var r;\n this.openAttribute(att, options, level);\n r = ' ' + att.name + '=\"' + att.value + '\"';\n this.closeAttribute(att, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.cdata = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.comment = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.declaration = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.docType = function(node, options, level) {\n var child, i, len, r, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n r += ' 0) {\n r += ' [';\n r += this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (i = 0, len = ref.length; i < len; i++) {\n child = ref[i];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += ']';\n }\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '>';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, i, j, len, len1, name, prettySuppressed, r, ref, ref1, ref2;\n level || (level = 0);\n prettySuppressed = false;\n r = '';\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r += this.indent(node, options, level) + '<' + node.name;\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n r += this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n r += '>';\n options.state = WriterState.CloseTag;\n r += '' + this.endline(node, options, level);\n } else {\n options.state = WriterState.CloseTag;\n r += options.spaceBeforeSlash + '/>' + this.endline(node, options, level);\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n r += '>';\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n r += this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n r += '' + this.endline(node, options, level);\n } else {\n if (options.dontPrettyTextNodes) {\n ref1 = node.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n if ((child.type === NodeType.Text || child.type === NodeType.Raw) && (child.value != null)) {\n options.suppressPrettyCount++;\n prettySuppressed = true;\n break;\n }\n }\n }\n r += '>' + this.endline(node, options, level);\n options.state = WriterState.InsideTag;\n ref2 = node.children;\n for (j = 0, len1 = ref2.length; j < len1; j++) {\n child = ref2[j];\n r += this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n r += this.indent(node, options, level) + '';\n if (prettySuppressed) {\n options.suppressPrettyCount--;\n }\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n }\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.writeChildNode = function(node, options, level) {\n switch (node.type) {\n case NodeType.CData:\n return this.cdata(node, options, level);\n case NodeType.Comment:\n return this.comment(node, options, level);\n case NodeType.Element:\n return this.element(node, options, level);\n case NodeType.Raw:\n return this.raw(node, options, level);\n case NodeType.Text:\n return this.text(node, options, level);\n case NodeType.ProcessingInstruction:\n return this.processingInstruction(node, options, level);\n case NodeType.Dummy:\n return '';\n case NodeType.Declaration:\n return this.declaration(node, options, level);\n case NodeType.DocType:\n return this.docType(node, options, level);\n case NodeType.AttributeDeclaration:\n return this.dtdAttList(node, options, level);\n case NodeType.ElementDeclaration:\n return this.dtdElement(node, options, level);\n case NodeType.EntityDeclaration:\n return this.dtdEntity(node, options, level);\n case NodeType.NotationDeclaration:\n return this.dtdNotation(node, options, level);\n default:\n throw new Error(\"Unknown XML node type: \" + node.constructor.name);\n }\n };\n\n XMLWriterBase.prototype.processingInstruction = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '';\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.raw = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.text = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level);\n options.state = WriterState.InsideTag;\n r += node.value;\n options.state = WriterState.CloseTag;\n r += this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdAttList = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdElement = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdEntity = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.dtdNotation = function(node, options, level) {\n var r;\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n r = this.indent(node, options, level) + '' + this.endline(node, options, level);\n options.state = WriterState.None;\n this.closeNode(node, options, level);\n return r;\n };\n\n XMLWriterBase.prototype.openNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.closeNode = function(node, options, level) {};\n\n XMLWriterBase.prototype.openAttribute = function(att, options, level) {};\n\n XMLWriterBase.prototype.closeAttribute = function(att, options, level) {};\n\n return XMLWriterBase;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n module.exports = {\n None: 0,\n OpenTag: 1,\n InsideTag: 2,\n CloseTag: 3\n };\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLAttribute, XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDeclaration, XMLDocType, XMLDocument, XMLDocumentCB, XMLElement, XMLProcessingInstruction, XMLRaw, XMLStringWriter, XMLStringifier, XMLText, getValue, isFunction, isObject, isPlainObject, ref,\n hasProp = {}.hasOwnProperty;\n\n ref = require('./Utility'), isObject = ref.isObject, isFunction = ref.isFunction, isPlainObject = ref.isPlainObject, getValue = ref.getValue;\n\n NodeType = require('./NodeType');\n\n XMLDocument = require('./XMLDocument');\n\n XMLElement = require('./XMLElement');\n\n XMLCData = require('./XMLCData');\n\n XMLComment = require('./XMLComment');\n\n XMLRaw = require('./XMLRaw');\n\n XMLText = require('./XMLText');\n\n XMLProcessingInstruction = require('./XMLProcessingInstruction');\n\n XMLDeclaration = require('./XMLDeclaration');\n\n XMLDocType = require('./XMLDocType');\n\n XMLDTDAttList = require('./XMLDTDAttList');\n\n XMLDTDEntity = require('./XMLDTDEntity');\n\n XMLDTDElement = require('./XMLDTDElement');\n\n XMLDTDNotation = require('./XMLDTDNotation');\n\n XMLAttribute = require('./XMLAttribute');\n\n XMLStringifier = require('./XMLStringifier');\n\n XMLStringWriter = require('./XMLStringWriter');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLDocumentCB = (function() {\n function XMLDocumentCB(options, onData, onEnd) {\n var writerOptions;\n this.name = \"?xml\";\n this.type = NodeType.Document;\n options || (options = {});\n writerOptions = {};\n if (!options.writer) {\n options.writer = new XMLStringWriter();\n } else if (isPlainObject(options.writer)) {\n writerOptions = options.writer;\n options.writer = new XMLStringWriter();\n }\n this.options = options;\n this.writer = options.writer;\n this.writerOptions = this.writer.filterOptions(writerOptions);\n this.stringify = new XMLStringifier(options);\n this.onDataCallback = onData || function() {};\n this.onEndCallback = onEnd || function() {};\n this.currentNode = null;\n this.currentLevel = -1;\n this.openTags = {};\n this.documentStarted = false;\n this.documentCompleted = false;\n this.root = null;\n }\n\n XMLDocumentCB.prototype.createChildNode = function(node) {\n var att, attName, attributes, child, i, len, ref1, ref2;\n switch (node.type) {\n case NodeType.CData:\n this.cdata(node.value);\n break;\n case NodeType.Comment:\n this.comment(node.value);\n break;\n case NodeType.Element:\n attributes = {};\n ref1 = node.attribs;\n for (attName in ref1) {\n if (!hasProp.call(ref1, attName)) continue;\n att = ref1[attName];\n attributes[attName] = att.value;\n }\n this.node(node.name, attributes);\n break;\n case NodeType.Dummy:\n this.dummy();\n break;\n case NodeType.Raw:\n this.raw(node.value);\n break;\n case NodeType.Text:\n this.text(node.value);\n break;\n case NodeType.ProcessingInstruction:\n this.instruction(node.target, node.value);\n break;\n default:\n throw new Error(\"This XML node type is not supported in a JS object: \" + node.constructor.name);\n }\n ref2 = node.children;\n for (i = 0, len = ref2.length; i < len; i++) {\n child = ref2[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.dummy = function() {\n return this;\n };\n\n XMLDocumentCB.prototype.node = function(name, attributes, text) {\n var ref1;\n if (name == null) {\n throw new Error(\"Missing node name.\");\n }\n if (this.root && this.currentLevel === -1) {\n throw new Error(\"Document can only have one root node. \" + this.debugInfo(name));\n }\n this.openCurrent();\n name = getValue(name);\n if (attributes == null) {\n attributes = {};\n }\n attributes = getValue(attributes);\n if (!isObject(attributes)) {\n ref1 = [attributes, text], text = ref1[0], attributes = ref1[1];\n }\n this.currentNode = new XMLElement(this, name, attributes);\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n if (text != null) {\n this.text(text);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.element = function(name, attributes, text) {\n var child, i, len, oldValidationFlag, ref1, root;\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n this.dtdElement.apply(this, arguments);\n } else {\n if (Array.isArray(name) || isObject(name) || isFunction(name)) {\n oldValidationFlag = this.options.noValidation;\n this.options.noValidation = true;\n root = new XMLDocument(this.options).element('TEMP_ROOT');\n root.element(name);\n this.options.noValidation = oldValidationFlag;\n ref1 = root.children;\n for (i = 0, len = ref1.length; i < len; i++) {\n child = ref1[i];\n this.createChildNode(child);\n if (child.type === NodeType.Element) {\n this.up();\n }\n }\n } else {\n this.node(name, attributes, text);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.attribute = function(name, value) {\n var attName, attValue;\n if (!this.currentNode || this.currentNode.children) {\n throw new Error(\"att() can only be used immediately after an ele() call in callback mode. \" + this.debugInfo(name));\n }\n if (name != null) {\n name = getValue(name);\n }\n if (isObject(name)) {\n for (attName in name) {\n if (!hasProp.call(name, attName)) continue;\n attValue = name[attName];\n this.attribute(attName, attValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n if (this.options.keepNullAttributes && (value == null)) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, \"\");\n } else if (value != null) {\n this.currentNode.attribs[name] = new XMLAttribute(this, name, value);\n }\n }\n return this;\n };\n\n XMLDocumentCB.prototype.text = function(value) {\n var node;\n this.openCurrent();\n node = new XMLText(this, value);\n this.onData(this.writer.text(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.cdata = function(value) {\n var node;\n this.openCurrent();\n node = new XMLCData(this, value);\n this.onData(this.writer.cdata(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.comment = function(value) {\n var node;\n this.openCurrent();\n node = new XMLComment(this, value);\n this.onData(this.writer.comment(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.raw = function(value) {\n var node;\n this.openCurrent();\n node = new XMLRaw(this, value);\n this.onData(this.writer.raw(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.instruction = function(target, value) {\n var i, insTarget, insValue, len, node;\n this.openCurrent();\n if (target != null) {\n target = getValue(target);\n }\n if (value != null) {\n value = getValue(value);\n }\n if (Array.isArray(target)) {\n for (i = 0, len = target.length; i < len; i++) {\n insTarget = target[i];\n this.instruction(insTarget);\n }\n } else if (isObject(target)) {\n for (insTarget in target) {\n if (!hasProp.call(target, insTarget)) continue;\n insValue = target[insTarget];\n this.instruction(insTarget, insValue);\n }\n } else {\n if (isFunction(value)) {\n value = value.apply();\n }\n node = new XMLProcessingInstruction(this, target, value);\n this.onData(this.writer.processingInstruction(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n }\n return this;\n };\n\n XMLDocumentCB.prototype.declaration = function(version, encoding, standalone) {\n var node;\n this.openCurrent();\n if (this.documentStarted) {\n throw new Error(\"declaration() must be the first node.\");\n }\n node = new XMLDeclaration(this, version, encoding, standalone);\n this.onData(this.writer.declaration(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.doctype = function(root, pubID, sysID) {\n this.openCurrent();\n if (root == null) {\n throw new Error(\"Missing root node name.\");\n }\n if (this.root) {\n throw new Error(\"dtd() must come before the root node.\");\n }\n this.currentNode = new XMLDocType(this, pubID, sysID);\n this.currentNode.rootNodeName = root;\n this.currentNode.children = false;\n this.currentLevel++;\n this.openTags[this.currentLevel] = this.currentNode;\n return this;\n };\n\n XMLDocumentCB.prototype.dtdElement = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDElement(this, name, value);\n this.onData(this.writer.dtdElement(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.attList = function(elementName, attributeName, attributeType, defaultValueType, defaultValue) {\n var node;\n this.openCurrent();\n node = new XMLDTDAttList(this, elementName, attributeName, attributeType, defaultValueType, defaultValue);\n this.onData(this.writer.dtdAttList(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.entity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, false, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.pEntity = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDEntity(this, true, name, value);\n this.onData(this.writer.dtdEntity(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.notation = function(name, value) {\n var node;\n this.openCurrent();\n node = new XMLDTDNotation(this, name, value);\n this.onData(this.writer.dtdNotation(node, this.writerOptions, this.currentLevel + 1), this.currentLevel + 1);\n return this;\n };\n\n XMLDocumentCB.prototype.up = function() {\n if (this.currentLevel < 0) {\n throw new Error(\"The document node has no parent.\");\n }\n if (this.currentNode) {\n if (this.currentNode.children) {\n this.closeNode(this.currentNode);\n } else {\n this.openNode(this.currentNode);\n }\n this.currentNode = null;\n } else {\n this.closeNode(this.openTags[this.currentLevel]);\n }\n delete this.openTags[this.currentLevel];\n this.currentLevel--;\n return this;\n };\n\n XMLDocumentCB.prototype.end = function() {\n while (this.currentLevel >= 0) {\n this.up();\n }\n return this.onEnd();\n };\n\n XMLDocumentCB.prototype.openCurrent = function() {\n if (this.currentNode) {\n this.currentNode.children = true;\n return this.openNode(this.currentNode);\n }\n };\n\n XMLDocumentCB.prototype.openNode = function(node) {\n var att, chunk, name, ref1;\n if (!node.isOpen) {\n if (!this.root && this.currentLevel === 0 && node.type === NodeType.Element) {\n this.root = node;\n }\n chunk = '';\n if (node.type === NodeType.Element) {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '<' + node.name;\n ref1 = node.attribs;\n for (name in ref1) {\n if (!hasProp.call(ref1, name)) continue;\n att = ref1[name];\n chunk += this.writer.attribute(att, this.writerOptions, this.currentLevel);\n }\n chunk += (node.children ? '>' : '/>') + this.writer.endline(node, this.writerOptions, this.currentLevel);\n this.writerOptions.state = WriterState.InsideTag;\n } else {\n this.writerOptions.state = WriterState.OpenTag;\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '';\n }\n chunk += this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.onData(chunk, this.currentLevel);\n return node.isOpen = true;\n }\n };\n\n XMLDocumentCB.prototype.closeNode = function(node) {\n var chunk;\n if (!node.isClosed) {\n chunk = '';\n this.writerOptions.state = WriterState.CloseTag;\n if (node.type === NodeType.Element) {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + '' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n } else {\n chunk = this.writer.indent(node, this.writerOptions, this.currentLevel) + ']>' + this.writer.endline(node, this.writerOptions, this.currentLevel);\n }\n this.writerOptions.state = WriterState.None;\n this.onData(chunk, this.currentLevel);\n return node.isClosed = true;\n }\n };\n\n XMLDocumentCB.prototype.onData = function(chunk, level) {\n this.documentStarted = true;\n return this.onDataCallback(chunk, level + 1);\n };\n\n XMLDocumentCB.prototype.onEnd = function() {\n this.documentCompleted = true;\n return this.onEndCallback();\n };\n\n XMLDocumentCB.prototype.debugInfo = function(name) {\n if (name == null) {\n return \"\";\n } else {\n return \"node: <\" + name + \">\";\n }\n };\n\n XMLDocumentCB.prototype.ele = function() {\n return this.element.apply(this, arguments);\n };\n\n XMLDocumentCB.prototype.nod = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.txt = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.dat = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.com = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.ins = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.dec = function(version, encoding, standalone) {\n return this.declaration(version, encoding, standalone);\n };\n\n XMLDocumentCB.prototype.dtd = function(root, pubID, sysID) {\n return this.doctype(root, pubID, sysID);\n };\n\n XMLDocumentCB.prototype.e = function(name, attributes, text) {\n return this.element(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.n = function(name, attributes, text) {\n return this.node(name, attributes, text);\n };\n\n XMLDocumentCB.prototype.t = function(value) {\n return this.text(value);\n };\n\n XMLDocumentCB.prototype.d = function(value) {\n return this.cdata(value);\n };\n\n XMLDocumentCB.prototype.c = function(value) {\n return this.comment(value);\n };\n\n XMLDocumentCB.prototype.r = function(value) {\n return this.raw(value);\n };\n\n XMLDocumentCB.prototype.i = function(target, value) {\n return this.instruction(target, value);\n };\n\n XMLDocumentCB.prototype.att = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.a = function() {\n if (this.currentNode && this.currentNode.type === NodeType.DocType) {\n return this.attList.apply(this, arguments);\n } else {\n return this.attribute.apply(this, arguments);\n }\n };\n\n XMLDocumentCB.prototype.ent = function(name, value) {\n return this.entity(name, value);\n };\n\n XMLDocumentCB.prototype.pent = function(name, value) {\n return this.pEntity(name, value);\n };\n\n XMLDocumentCB.prototype.not = function(name, value) {\n return this.notation(name, value);\n };\n\n return XMLDocumentCB;\n\n })();\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n var NodeType, WriterState, XMLStreamWriter, XMLWriterBase,\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n NodeType = require('./NodeType');\n\n XMLWriterBase = require('./XMLWriterBase');\n\n WriterState = require('./WriterState');\n\n module.exports = XMLStreamWriter = (function(superClass) {\n extend(XMLStreamWriter, superClass);\n\n function XMLStreamWriter(stream, options) {\n this.stream = stream;\n XMLStreamWriter.__super__.constructor.call(this, options);\n }\n\n XMLStreamWriter.prototype.endline = function(node, options, level) {\n if (node.isLastRootNode && options.state === WriterState.CloseTag) {\n return '';\n } else {\n return XMLStreamWriter.__super__.endline.call(this, node, options, level);\n }\n };\n\n XMLStreamWriter.prototype.document = function(doc, options) {\n var child, i, j, k, len, len1, ref, ref1, results;\n ref = doc.children;\n for (i = j = 0, len = ref.length; j < len; i = ++j) {\n child = ref[i];\n child.isLastRootNode = i === doc.children.length - 1;\n }\n options = this.filterOptions(options);\n ref1 = doc.children;\n results = [];\n for (k = 0, len1 = ref1.length; k < len1; k++) {\n child = ref1[k];\n results.push(this.writeChildNode(child, options, 0));\n }\n return results;\n };\n\n XMLStreamWriter.prototype.attribute = function(att, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.attribute.call(this, att, options, level));\n };\n\n XMLStreamWriter.prototype.cdata = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.cdata.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.comment = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.comment.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.declaration = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.declaration.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.docType = function(node, options, level) {\n var child, j, len, ref;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level));\n this.stream.write(' 0) {\n this.stream.write(' [');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref = node.children;\n for (j = 0, len = ref.length; j < len; j++) {\n child = ref[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(']');\n }\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '>');\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.element = function(node, options, level) {\n var att, child, childNodeCount, firstChildNode, j, len, name, prettySuppressed, ref, ref1;\n level || (level = 0);\n this.openNode(node, options, level);\n options.state = WriterState.OpenTag;\n this.stream.write(this.indent(node, options, level) + '<' + node.name);\n ref = node.attribs;\n for (name in ref) {\n if (!hasProp.call(ref, name)) continue;\n att = ref[name];\n this.attribute(att, options, level);\n }\n childNodeCount = node.children.length;\n firstChildNode = childNodeCount === 0 ? null : node.children[0];\n if (childNodeCount === 0 || node.children.every(function(e) {\n return (e.type === NodeType.Text || e.type === NodeType.Raw) && e.value === '';\n })) {\n if (options.allowEmpty) {\n this.stream.write('>');\n options.state = WriterState.CloseTag;\n this.stream.write('');\n } else {\n options.state = WriterState.CloseTag;\n this.stream.write(options.spaceBeforeSlash + '/>');\n }\n } else if (options.pretty && childNodeCount === 1 && (firstChildNode.type === NodeType.Text || firstChildNode.type === NodeType.Raw) && (firstChildNode.value != null)) {\n this.stream.write('>');\n options.state = WriterState.InsideTag;\n options.suppressPrettyCount++;\n prettySuppressed = true;\n this.writeChildNode(firstChildNode, options, level + 1);\n options.suppressPrettyCount--;\n prettySuppressed = false;\n options.state = WriterState.CloseTag;\n this.stream.write('');\n } else {\n this.stream.write('>' + this.endline(node, options, level));\n options.state = WriterState.InsideTag;\n ref1 = node.children;\n for (j = 0, len = ref1.length; j < len; j++) {\n child = ref1[j];\n this.writeChildNode(child, options, level + 1);\n }\n options.state = WriterState.CloseTag;\n this.stream.write(this.indent(node, options, level) + '');\n }\n this.stream.write(this.endline(node, options, level));\n options.state = WriterState.None;\n return this.closeNode(node, options, level);\n };\n\n XMLStreamWriter.prototype.processingInstruction = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.processingInstruction.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.raw = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.raw.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.text = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.text.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdAttList = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdAttList.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdElement = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdElement.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdEntity = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdEntity.call(this, node, options, level));\n };\n\n XMLStreamWriter.prototype.dtdNotation = function(node, options, level) {\n return this.stream.write(XMLStreamWriter.__super__.dtdNotation.call(this, node, options, level));\n };\n\n return XMLStreamWriter;\n\n })(XMLWriterBase);\n\n}).call(this);\n","// Generated by CoffeeScript 1.12.7\n(function() {\n \"use strict\";\n var bom, defaults, events, isEmpty, processItem, processors, sax, setImmediate,\n bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },\n extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },\n hasProp = {}.hasOwnProperty;\n\n sax = require('sax');\n\n events = require('events');\n\n bom = require('./bom');\n\n processors = require('./processors');\n\n setImmediate = require('timers').setImmediate;\n\n defaults = require('./defaults').defaults;\n\n isEmpty = function(thing) {\n return typeof thing === \"object\" && (thing != null) && Object.keys(thing).length === 0;\n };\n\n processItem = function(processors, item, key) {\n var i, len, process;\n for (i = 0, len = processors.length; i < len; i++) {\n process = processors[i];\n item = process(item, key);\n }\n return item;\n };\n\n exports.Parser = (function(superClass) {\n extend(Parser, superClass);\n\n function Parser(opts) {\n this.parseStringPromise = bind(this.parseStringPromise, this);\n this.parseString = bind(this.parseString, this);\n this.reset = bind(this.reset, this);\n this.assignOrPush = bind(this.assignOrPush, this);\n this.processAsync = bind(this.processAsync, this);\n var key, ref, value;\n if (!(this instanceof exports.Parser)) {\n return new exports.Parser(opts);\n }\n this.options = {};\n ref = defaults[\"0.2\"];\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n value = ref[key];\n this.options[key] = value;\n }\n for (key in opts) {\n if (!hasProp.call(opts, key)) continue;\n value = opts[key];\n this.options[key] = value;\n }\n if (this.options.xmlns) {\n this.options.xmlnskey = this.options.attrkey + \"ns\";\n }\n if (this.options.normalizeTags) {\n if (!this.options.tagNameProcessors) {\n this.options.tagNameProcessors = [];\n }\n this.options.tagNameProcessors.unshift(processors.normalize);\n }\n this.reset();\n }\n\n Parser.prototype.processAsync = function() {\n var chunk, err;\n try {\n if (this.remaining.length <= this.options.chunkSize) {\n chunk = this.remaining;\n this.remaining = '';\n this.saxParser = this.saxParser.write(chunk);\n return this.saxParser.close();\n } else {\n chunk = this.remaining.substr(0, this.options.chunkSize);\n this.remaining = this.remaining.substr(this.options.chunkSize, this.remaining.length);\n this.saxParser = this.saxParser.write(chunk);\n return setImmediate(this.processAsync);\n }\n } catch (error1) {\n err = error1;\n if (!this.saxParser.errThrown) {\n this.saxParser.errThrown = true;\n return this.emit(err);\n }\n }\n };\n\n Parser.prototype.assignOrPush = function(obj, key, newValue) {\n if (!(key in obj)) {\n if (!this.options.explicitArray) {\n return obj[key] = newValue;\n } else {\n return obj[key] = [newValue];\n }\n } else {\n if (!(obj[key] instanceof Array)) {\n obj[key] = [obj[key]];\n }\n return obj[key].push(newValue);\n }\n };\n\n Parser.prototype.reset = function() {\n var attrkey, charkey, ontext, stack;\n this.removeAllListeners();\n this.saxParser = sax.parser(this.options.strict, {\n trim: false,\n normalize: false,\n xmlns: this.options.xmlns\n });\n this.saxParser.errThrown = false;\n this.saxParser.onerror = (function(_this) {\n return function(error) {\n _this.saxParser.resume();\n if (!_this.saxParser.errThrown) {\n _this.saxParser.errThrown = true;\n return _this.emit(\"error\", error);\n }\n };\n })(this);\n this.saxParser.onend = (function(_this) {\n return function() {\n if (!_this.saxParser.ended) {\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n this.saxParser.ended = false;\n this.EXPLICIT_CHARKEY = this.options.explicitCharkey;\n this.resultObject = null;\n stack = [];\n attrkey = this.options.attrkey;\n charkey = this.options.charkey;\n this.saxParser.onopentag = (function(_this) {\n return function(node) {\n var key, newValue, obj, processedKey, ref;\n obj = {};\n obj[charkey] = \"\";\n if (!_this.options.ignoreAttrs) {\n ref = node.attributes;\n for (key in ref) {\n if (!hasProp.call(ref, key)) continue;\n if (!(attrkey in obj) && !_this.options.mergeAttrs) {\n obj[attrkey] = {};\n }\n newValue = _this.options.attrValueProcessors ? processItem(_this.options.attrValueProcessors, node.attributes[key], key) : node.attributes[key];\n processedKey = _this.options.attrNameProcessors ? processItem(_this.options.attrNameProcessors, key) : key;\n if (_this.options.mergeAttrs) {\n _this.assignOrPush(obj, processedKey, newValue);\n } else {\n obj[attrkey][processedKey] = newValue;\n }\n }\n }\n obj[\"#name\"] = _this.options.tagNameProcessors ? processItem(_this.options.tagNameProcessors, node.name) : node.name;\n if (_this.options.xmlns) {\n obj[_this.options.xmlnskey] = {\n uri: node.uri,\n local: node.local\n };\n }\n return stack.push(obj);\n };\n })(this);\n this.saxParser.onclosetag = (function(_this) {\n return function() {\n var cdata, emptyStr, key, node, nodeName, obj, objClone, old, s, xpath;\n obj = stack.pop();\n nodeName = obj[\"#name\"];\n if (!_this.options.explicitChildren || !_this.options.preserveChildrenOrder) {\n delete obj[\"#name\"];\n }\n if (obj.cdata === true) {\n cdata = obj.cdata;\n delete obj.cdata;\n }\n s = stack[stack.length - 1];\n if (obj[charkey].match(/^\\s*$/) && !cdata) {\n emptyStr = obj[charkey];\n delete obj[charkey];\n } else {\n if (_this.options.trim) {\n obj[charkey] = obj[charkey].trim();\n }\n if (_this.options.normalize) {\n obj[charkey] = obj[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n obj[charkey] = _this.options.valueProcessors ? processItem(_this.options.valueProcessors, obj[charkey], nodeName) : obj[charkey];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n if (isEmpty(obj)) {\n obj = _this.options.emptyTag !== '' ? _this.options.emptyTag : emptyStr;\n }\n if (_this.options.validator != null) {\n xpath = \"/\" + ((function() {\n var i, len, results;\n results = [];\n for (i = 0, len = stack.length; i < len; i++) {\n node = stack[i];\n results.push(node[\"#name\"]);\n }\n return results;\n })()).concat(nodeName).join(\"/\");\n (function() {\n var err;\n try {\n return obj = _this.options.validator(xpath, s && s[nodeName], obj);\n } catch (error1) {\n err = error1;\n return _this.emit(\"error\", err);\n }\n })();\n }\n if (_this.options.explicitChildren && !_this.options.mergeAttrs && typeof obj === 'object') {\n if (!_this.options.preserveChildrenOrder) {\n node = {};\n if (_this.options.attrkey in obj) {\n node[_this.options.attrkey] = obj[_this.options.attrkey];\n delete obj[_this.options.attrkey];\n }\n if (!_this.options.charsAsChildren && _this.options.charkey in obj) {\n node[_this.options.charkey] = obj[_this.options.charkey];\n delete obj[_this.options.charkey];\n }\n if (Object.getOwnPropertyNames(obj).length > 0) {\n node[_this.options.childkey] = obj;\n }\n obj = node;\n } else if (s) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n objClone = {};\n for (key in obj) {\n if (!hasProp.call(obj, key)) continue;\n objClone[key] = obj[key];\n }\n s[_this.options.childkey].push(objClone);\n delete obj[\"#name\"];\n if (Object.keys(obj).length === 1 && charkey in obj && !_this.EXPLICIT_CHARKEY) {\n obj = obj[charkey];\n }\n }\n }\n if (stack.length > 0) {\n return _this.assignOrPush(s, nodeName, obj);\n } else {\n if (_this.options.explicitRoot) {\n old = obj;\n obj = {};\n obj[nodeName] = old;\n }\n _this.resultObject = obj;\n _this.saxParser.ended = true;\n return _this.emit(\"end\", _this.resultObject);\n }\n };\n })(this);\n ontext = (function(_this) {\n return function(text) {\n var charChild, s;\n s = stack[stack.length - 1];\n if (s) {\n s[charkey] += text;\n if (_this.options.explicitChildren && _this.options.preserveChildrenOrder && _this.options.charsAsChildren && (_this.options.includeWhiteChars || text.replace(/\\\\n/g, '').trim() !== '')) {\n s[_this.options.childkey] = s[_this.options.childkey] || [];\n charChild = {\n '#name': '__text__'\n };\n charChild[charkey] = text;\n if (_this.options.normalize) {\n charChild[charkey] = charChild[charkey].replace(/\\s{2,}/g, \" \").trim();\n }\n s[_this.options.childkey].push(charChild);\n }\n return s;\n }\n };\n })(this);\n this.saxParser.ontext = ontext;\n return this.saxParser.oncdata = (function(_this) {\n return function(text) {\n var s;\n s = ontext(text);\n if (s) {\n return s.cdata = true;\n }\n };\n })(this);\n };\n\n Parser.prototype.parseString = function(str, cb) {\n var err;\n if ((cb != null) && typeof cb === \"function\") {\n this.on(\"end\", function(result) {\n this.reset();\n return cb(null, result);\n });\n this.on(\"error\", function(err) {\n this.reset();\n return cb(err);\n });\n }\n try {\n str = str.toString();\n if (str.trim() === '') {\n this.emit(\"end\", null);\n return true;\n }\n str = bom.stripBOM(str);\n if (this.options.async) {\n this.remaining = str;\n setImmediate(this.processAsync);\n return this.saxParser;\n }\n return this.saxParser.write(str).close();\n } catch (error1) {\n err = error1;\n if (!(this.saxParser.errThrown || this.saxParser.ended)) {\n this.emit('error', err);\n return this.saxParser.errThrown = true;\n } else if (this.saxParser.ended) {\n throw err;\n }\n }\n };\n\n Parser.prototype.parseStringPromise = function(str) {\n return new Promise((function(_this) {\n return function(resolve, reject) {\n return _this.parseString(str, function(err, value) {\n if (err) {\n return reject(err);\n } else {\n return resolve(value);\n }\n });\n };\n })(this));\n };\n\n return Parser;\n\n })(events);\n\n exports.parseString = function(str, a, b) {\n var cb, options, parser;\n if (b != null) {\n if (typeof b === 'function') {\n cb = b;\n }\n if (typeof a === 'object') {\n options = a;\n }\n } else {\n if (typeof a === 'function') {\n cb = a;\n }\n options = {};\n }\n parser = new exports.Parser(options);\n return parser.parseString(str, cb);\n };\n\n exports.parseStringPromise = function(str, a) {\n var options, parser;\n if (typeof a === 'object') {\n options = a;\n }\n parser = new exports.Parser(options);\n return parser.parseStringPromise(str);\n };\n\n}).call(this);\n",";(function (sax) { // wrapper for non-node envs\n sax.parser = function (strict, opt) { return new SAXParser(strict, opt) }\n sax.SAXParser = SAXParser\n sax.SAXStream = SAXStream\n sax.createStream = createStream\n\n // When we pass the MAX_BUFFER_LENGTH position, start checking for buffer overruns.\n // When we check, schedule the next check for MAX_BUFFER_LENGTH - (max(buffer lengths)),\n // since that's the earliest that a buffer overrun could occur. This way, checks are\n // as rare as required, but as often as necessary to ensure never crossing this bound.\n // Furthermore, buffers are only tested at most once per write(), so passing a very\n // large string into write() might have undesirable effects, but this is manageable by\n // the caller, so it is assumed to be safe. Thus, a call to write() may, in the extreme\n // edge case, result in creating at most one complete copy of the string passed in.\n // Set to Infinity to have unlimited buffers.\n sax.MAX_BUFFER_LENGTH = 64 * 1024\n\n var buffers = [\n 'comment', 'sgmlDecl', 'textNode', 'tagName', 'doctype',\n 'procInstName', 'procInstBody', 'entity', 'attribName',\n 'attribValue', 'cdata', 'script'\n ]\n\n sax.EVENTS = [\n 'text',\n 'processinginstruction',\n 'sgmldeclaration',\n 'doctype',\n 'comment',\n 'opentagstart',\n 'attribute',\n 'opentag',\n 'closetag',\n 'opencdata',\n 'cdata',\n 'closecdata',\n 'error',\n 'end',\n 'ready',\n 'script',\n 'opennamespace',\n 'closenamespace'\n ]\n\n function SAXParser (strict, opt) {\n if (!(this instanceof SAXParser)) {\n return new SAXParser(strict, opt)\n }\n\n var parser = this\n clearBuffers(parser)\n parser.q = parser.c = ''\n parser.bufferCheckPosition = sax.MAX_BUFFER_LENGTH\n parser.opt = opt || {}\n parser.opt.lowercase = parser.opt.lowercase || parser.opt.lowercasetags\n parser.looseCase = parser.opt.lowercase ? 'toLowerCase' : 'toUpperCase'\n parser.tags = []\n parser.closed = parser.closedRoot = parser.sawRoot = false\n parser.tag = parser.error = null\n parser.strict = !!strict\n parser.noscript = !!(strict || parser.opt.noscript)\n parser.state = S.BEGIN\n parser.strictEntities = parser.opt.strictEntities\n parser.ENTITIES = parser.strictEntities ? Object.create(sax.XML_ENTITIES) : Object.create(sax.ENTITIES)\n parser.attribList = []\n\n // namespaces form a prototype chain.\n // it always points at the current tag,\n // which protos to its parent tag.\n if (parser.opt.xmlns) {\n parser.ns = Object.create(rootNS)\n }\n\n // mostly just for error reporting\n parser.trackPosition = parser.opt.position !== false\n if (parser.trackPosition) {\n parser.position = parser.line = parser.column = 0\n }\n emit(parser, 'onready')\n }\n\n if (!Object.create) {\n Object.create = function (o) {\n function F () {}\n F.prototype = o\n var newf = new F()\n return newf\n }\n }\n\n if (!Object.keys) {\n Object.keys = function (o) {\n var a = []\n for (var i in o) if (o.hasOwnProperty(i)) a.push(i)\n return a\n }\n }\n\n function checkBufferLength (parser) {\n var maxAllowed = Math.max(sax.MAX_BUFFER_LENGTH, 10)\n var maxActual = 0\n for (var i = 0, l = buffers.length; i < l; i++) {\n var len = parser[buffers[i]].length\n if (len > maxAllowed) {\n // Text/cdata nodes can get big, and since they're buffered,\n // we can get here under normal conditions.\n // Avoid issues by emitting the text node now,\n // so at least it won't get any bigger.\n switch (buffers[i]) {\n case 'textNode':\n closeText(parser)\n break\n\n case 'cdata':\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n break\n\n case 'script':\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n break\n\n default:\n error(parser, 'Max buffer length exceeded: ' + buffers[i])\n }\n }\n maxActual = Math.max(maxActual, len)\n }\n // schedule the next check for the earliest possible buffer overrun.\n var m = sax.MAX_BUFFER_LENGTH - maxActual\n parser.bufferCheckPosition = m + parser.position\n }\n\n function clearBuffers (parser) {\n for (var i = 0, l = buffers.length; i < l; i++) {\n parser[buffers[i]] = ''\n }\n }\n\n function flushBuffers (parser) {\n closeText(parser)\n if (parser.cdata !== '') {\n emitNode(parser, 'oncdata', parser.cdata)\n parser.cdata = ''\n }\n if (parser.script !== '') {\n emitNode(parser, 'onscript', parser.script)\n parser.script = ''\n }\n }\n\n SAXParser.prototype = {\n end: function () { end(this) },\n write: write,\n resume: function () { this.error = null; return this },\n close: function () { return this.write(null) },\n flush: function () { flushBuffers(this) }\n }\n\n var Stream\n try {\n Stream = require('stream').Stream\n } catch (ex) {\n Stream = function () {}\n }\n\n var streamWraps = sax.EVENTS.filter(function (ev) {\n return ev !== 'error' && ev !== 'end'\n })\n\n function createStream (strict, opt) {\n return new SAXStream(strict, opt)\n }\n\n function SAXStream (strict, opt) {\n if (!(this instanceof SAXStream)) {\n return new SAXStream(strict, opt)\n }\n\n Stream.apply(this)\n\n this._parser = new SAXParser(strict, opt)\n this.writable = true\n this.readable = true\n\n var me = this\n\n this._parser.onend = function () {\n me.emit('end')\n }\n\n this._parser.onerror = function (er) {\n me.emit('error', er)\n\n // if didn't throw, then means error was handled.\n // go ahead and clear error, so we can write again.\n me._parser.error = null\n }\n\n this._decoder = null\n\n streamWraps.forEach(function (ev) {\n Object.defineProperty(me, 'on' + ev, {\n get: function () {\n return me._parser['on' + ev]\n },\n set: function (h) {\n if (!h) {\n me.removeAllListeners(ev)\n me._parser['on' + ev] = h\n return h\n }\n me.on(ev, h)\n },\n enumerable: true,\n configurable: false\n })\n })\n }\n\n SAXStream.prototype = Object.create(Stream.prototype, {\n constructor: {\n value: SAXStream\n }\n })\n\n SAXStream.prototype.write = function (data) {\n if (typeof Buffer === 'function' &&\n typeof Buffer.isBuffer === 'function' &&\n Buffer.isBuffer(data)) {\n if (!this._decoder) {\n var SD = require('string_decoder').StringDecoder\n this._decoder = new SD('utf8')\n }\n data = this._decoder.write(data)\n }\n\n this._parser.write(data.toString())\n this.emit('data', data)\n return true\n }\n\n SAXStream.prototype.end = function (chunk) {\n if (chunk && chunk.length) {\n this.write(chunk)\n }\n this._parser.end()\n return true\n }\n\n SAXStream.prototype.on = function (ev, handler) {\n var me = this\n if (!me._parser['on' + ev] && streamWraps.indexOf(ev) !== -1) {\n me._parser['on' + ev] = function () {\n var args = arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments)\n args.splice(0, 0, ev)\n me.emit.apply(me, args)\n }\n }\n\n return Stream.prototype.on.call(me, ev, handler)\n }\n\n // this really needs to be replaced with character classes.\n // XML allows all manner of ridiculous numbers and digits.\n var CDATA = '[CDATA['\n var DOCTYPE = 'DOCTYPE'\n var XML_NAMESPACE = 'http://www.w3.org/XML/1998/namespace'\n var XMLNS_NAMESPACE = 'http://www.w3.org/2000/xmlns/'\n var rootNS = { xml: XML_NAMESPACE, xmlns: XMLNS_NAMESPACE }\n\n // http://www.w3.org/TR/REC-xml/#NT-NameStartChar\n // This implementation works on strings, a single character at a time\n // as such, it cannot ever support astral-plane characters (10000-EFFFF)\n // without a significant breaking change to either this parser, or the\n // JavaScript language. Implementation of an emoji-capable xml parser\n // is left as an exercise for the reader.\n var nameStart = /[:_A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]/\n\n var nameBody = /[:_A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n var entityStart = /[#:_A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD]/\n var entityBody = /[#:_A-Za-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\u00B7\\u0300-\\u036F\\u203F-\\u2040.\\d-]/\n\n function isWhitespace (c) {\n return c === ' ' || c === '\\n' || c === '\\r' || c === '\\t'\n }\n\n function isQuote (c) {\n return c === '\"' || c === '\\''\n }\n\n function isAttribEnd (c) {\n return c === '>' || isWhitespace(c)\n }\n\n function isMatch (regex, c) {\n return regex.test(c)\n }\n\n function notMatch (regex, c) {\n return !isMatch(regex, c)\n }\n\n var S = 0\n sax.STATE = {\n BEGIN: S++, // leading byte order mark or whitespace\n BEGIN_WHITESPACE: S++, // leading whitespace\n TEXT: S++, // general stuff\n TEXT_ENTITY: S++, // & and such.\n OPEN_WAKA: S++, // <\n SGML_DECL: S++, // \n SCRIPT: S++, //