!function(u){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=u();else if("function"==typeof define&&define.amd)define([],u);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).parseRequest=u()}}((function(){var u,e,t,n=function(u){var e;return function(t){return e||u(e={exports:{},parent:t},e.exports),e.exports}},r=n((function(u,e){var t=1e3,n=6e4,r=60*n,i=24*r;function o(u,e,t,n){var r=e>=1.5*t;return Math.round(u/t)+" "+n+(r?"s":"")}u.exports=function(u,e){e=e||{};var a,c,s=typeof u;if("string"===s&&u.length>0)return function(u){if(!((u=String(u)).length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(e){var o=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*o;case"weeks":case"week":case"w":return 6048e5*o;case"days":case"day":case"d":return o*i;case"hours":case"hour":case"hrs":case"hr":case"h":return o*r;case"minutes":case"minute":case"mins":case"min":case"m":return o*n;case"seconds":case"second":case"secs":case"sec":case"s":return o*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return o;default:return}}}}(u);if("number"===s&&isFinite(u))return e.long?(a=u,(c=Math.abs(a))>=i?o(a,c,i,"day"):c>=r?o(a,c,r,"hour"):c>=n?o(a,c,n,"minute"):c>=t?o(a,c,t,"second"):a+" ms"):function(u){var e=Math.abs(u);return e>=i?Math.round(u/i)+"d":e>=r?Math.round(u/r)+"h":e>=n?Math.round(u/n)+"m":e>=t?Math.round(u/t)+"s":u+"ms"}(u);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(u))}})),i=n((function(u,e){(function(u){(function(){"use strict";e.Buffer=t,e.INSPECT_MAX_BYTES=50;function u(u){if(u>2147483647)throw new RangeError('The value "'+u+'" is invalid for option "size"');var e=new Uint8Array(u);return e.__proto__=t.prototype,e}function t(u,e,t){if("number"==typeof u){if("string"==typeof e)throw new TypeError('The "string" argument must be of type string. Received type number');return i(u)}return n(u,e,t)}function n(e,n,r){if("string"==typeof e)return function(e,n){if("string"==typeof n&&""!==n||(n="utf8"),!t.isEncoding(n))throw new TypeError("Unknown encoding: "+n);var r=0|c(e,n),i=u(r),o=i.write(e,n);return o!==r&&(i=i.slice(0,o)),i}(e,n);if(ArrayBuffer.isView(e))return o(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(U(e,ArrayBuffer)||e&&U(e.buffer,ArrayBuffer))return function(u,e,n){if(e<0||u.byteLength=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|u}function c(u,e){if(t.isBuffer(u))return u.length;if(ArrayBuffer.isView(u)||U(u,ArrayBuffer))return u.byteLength;if("string"!=typeof u)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof u);var n=u.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return P(u).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return O(u).length;default:if(i)return r?-1:P(u).length;e=(""+e).toLowerCase(),i=!0}}function s(u,e,t){var n=u[e];u[e]=u[t],u[t]=n}function p(u,e,n,r,i){if(0===u.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),L(n=+n)&&(n=i?0:u.length-1),n<0&&(n=u.length+n),n>=u.length){if(i)return-1;n=u.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof e&&(e=t.from(e,r)),t.isBuffer(e))return 0===e.length?-1:f(u,e,n,r,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(u,e,n):Uint8Array.prototype.lastIndexOf.call(u,e,n):f(u,[e],n,r,i);throw new TypeError("val must be string, number or Buffer")}function f(u,e,t,n,r){var i,o=1,a=u.length,c=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(u.length<2||e.length<2)return-1;o=2,a/=2,c/=2,t/=2}function s(u,e){return 1===o?u[e]:u.readUInt16BE(e*o)}if(r){var p=-1;for(i=t;ia&&(t=a-c),i=t;i>=0;i--){for(var f=!0,d=0;dr&&(n=r):n=r;var i=e.length;n>i/2&&(n=i/2);for(var o=0;o>8,r=t%256,i.push(r),i.push(n);return i}(e,u.length-t),u,t,n)}function y(u,e,t){return 0===e&&t===u.length?F.fromByteArray(u):F.fromByteArray(u.slice(e,t))}function m(u,e,t){t=Math.min(u.length,t);for(var n=[],r=e;r239?4:s>223?3:s>191?2:1;if(r+f<=t)switch(f){case 1:s<128&&(p=s);break;case 2:128==(192&(i=u[r+1]))&&(c=(31&s)<<6|63&i)>127&&(p=c);break;case 3:i=u[r+1],o=u[r+2],128==(192&i)&&128==(192&o)&&(c=(15&s)<<12|(63&i)<<6|63&o)>2047&&(c<55296||c>57343)&&(p=c);break;case 4:i=u[r+1],o=u[r+2],a=u[r+3],128==(192&i)&&128==(192&o)&&128==(192&a)&&(c=(15&s)<<18|(63&i)<<12|(63&o)<<6|63&a)>65535&&c<1114112&&(p=c)}null===p?(p=65533,f=1):p>65535&&(p-=65536,n.push(p>>>10&1023|55296),p=56320|1023&p),n.push(p),r+=f}return function(u){var e=u.length;if(e<=h)return String.fromCharCode.apply(String,u);for(var t="",n=0;nthis.length)return"";if((void 0===t||t>this.length)&&(t=this.length),t<=0)return"";if((t>>>=0)<=(e>>>=0))return"";for(u||(u="utf8");;)switch(u){case"hex":return D(this,e,t);case"utf8":case"utf-8":return m(this,e,t);case"ascii":return b(this,e,t);case"latin1":case"binary":return g(this,e,t);case"base64":return y(this,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,t);default:if(n)throw new TypeError("Unknown encoding: "+u);u=(u+"").toLowerCase(),n=!0}}.apply(this,arguments)},t.prototype.toLocaleString=t.prototype.toString,t.prototype.equals=function(u){if(!t.isBuffer(u))throw new TypeError("Argument must be a Buffer");return this===u||0===t.compare(this,u)},t.prototype.inspect=function(){var u="",t=e.INSPECT_MAX_BYTES;return u=this.toString("hex",0,t).replace(/(.{2})/g,"$1 ").trim(),this.length>t&&(u+=" ... "),""},t.prototype.compare=function(u,e,n,r,i){if(U(u,Uint8Array)&&(u=t.from(u,u.offset,u.byteLength)),!t.isBuffer(u))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof u);if(void 0===e&&(e=0),void 0===n&&(n=u?u.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),e<0||n>u.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&e>=n)return 0;if(r>=i)return-1;if(e>=n)return 1;if(this===u)return 0;for(var o=(i>>>=0)-(r>>>=0),a=(n>>>=0)-(e>>>=0),c=Math.min(o,a),s=this.slice(r,i),p=u.slice(e,n),f=0;f>>=0,isFinite(t)?(t>>>=0,void 0===n&&(n="utf8")):(n=t,t=void 0)}var r=this.length-e;if((void 0===t||t>r)&&(t=r),u.length>0&&(t<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var i=!1;;)switch(n){case"hex":return d(this,u,e,t);case"utf8":case"utf-8":return l(this,u,e,t);case"ascii":return A(this,u,e,t);case"latin1":case"binary":return E(this,u,e,t);case"base64":return C(this,u,e,t);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _(this,u,e,t);default:if(i)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),i=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var h=4096;function b(u,e,t){var n="";t=Math.min(u.length,t);for(var r=e;rr)&&(t=r);for(var i="",o=e;ot)throw new RangeError("Trying to access beyond buffer length")}function N(u,e,n,r,i,o){if(!t.isBuffer(u))throw new TypeError('"buffer" argument must be a Buffer instance');if(e>i||eu.length)throw new RangeError("Index out of range")}function T(u,e,t,n,r,i){if(t+n>u.length)throw new RangeError("Index out of range");if(t<0)throw new RangeError("Index out of range")}function v(u,e,t,n,r){return e=+e,t>>>=0,r||T(u,0,t,4),w.write(u,e,t,n,23,4),t+4}function k(u,e,t,n,r){return e=+e,t>>>=0,r||T(u,0,t,8),w.write(u,e,t,n,52,8),t+8}t.prototype.slice=function(u,e){var n=this.length;(u=~~u)<0?(u+=n)<0&&(u=0):u>n&&(u=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e>>=0,e>>>=0,t||B(u,e,this.length);for(var n=this[u],r=1,i=0;++i>>=0,e>>>=0,t||B(u,e,this.length);for(var n=this[u+--e],r=1;e>0&&(r*=256);)n+=this[u+--e]*r;return n},t.prototype.readUInt8=function(u,e){return u>>>=0,e||B(u,1,this.length),this[u]},t.prototype.readUInt16LE=function(u,e){return u>>>=0,e||B(u,2,this.length),this[u]|this[u+1]<<8},t.prototype.readUInt16BE=function(u,e){return u>>>=0,e||B(u,2,this.length),this[u]<<8|this[u+1]},t.prototype.readUInt32LE=function(u,e){return u>>>=0,e||B(u,4,this.length),(this[u]|this[u+1]<<8|this[u+2]<<16)+16777216*this[u+3]},t.prototype.readUInt32BE=function(u,e){return u>>>=0,e||B(u,4,this.length),16777216*this[u]+(this[u+1]<<16|this[u+2]<<8|this[u+3])},t.prototype.readIntLE=function(u,e,t){u>>>=0,e>>>=0,t||B(u,e,this.length);for(var n=this[u],r=1,i=0;++i=(r*=128)&&(n-=Math.pow(2,8*e)),n},t.prototype.readIntBE=function(u,e,t){u>>>=0,e>>>=0,t||B(u,e,this.length);for(var n=e,r=1,i=this[u+--n];n>0&&(r*=256);)i+=this[u+--n]*r;return i>=(r*=128)&&(i-=Math.pow(2,8*e)),i},t.prototype.readInt8=function(u,e){return u>>>=0,e||B(u,1,this.length),128&this[u]?-1*(255-this[u]+1):this[u]},t.prototype.readInt16LE=function(u,e){u>>>=0,e||B(u,2,this.length);var t=this[u]|this[u+1]<<8;return 32768&t?4294901760|t:t},t.prototype.readInt16BE=function(u,e){u>>>=0,e||B(u,2,this.length);var t=this[u+1]|this[u]<<8;return 32768&t?4294901760|t:t},t.prototype.readInt32LE=function(u,e){return u>>>=0,e||B(u,4,this.length),this[u]|this[u+1]<<8|this[u+2]<<16|this[u+3]<<24},t.prototype.readInt32BE=function(u,e){return u>>>=0,e||B(u,4,this.length),this[u]<<24|this[u+1]<<16|this[u+2]<<8|this[u+3]},t.prototype.readFloatLE=function(u,e){return u>>>=0,e||B(u,4,this.length),w.read(this,u,!0,23,4)},t.prototype.readFloatBE=function(u,e){return u>>>=0,e||B(u,4,this.length),w.read(this,u,!1,23,4)},t.prototype.readDoubleLE=function(u,e){return u>>>=0,e||B(u,8,this.length),w.read(this,u,!0,52,8)},t.prototype.readDoubleBE=function(u,e){return u>>>=0,e||B(u,8,this.length),w.read(this,u,!1,52,8)},t.prototype.writeUIntLE=function(u,e,t,n){u=+u,e>>>=0,t>>>=0,n||N(this,u,e,t,Math.pow(2,8*t)-1,0);var r=1,i=0;for(this[e]=255&u;++i>>=0,t>>>=0,n||N(this,u,e,t,Math.pow(2,8*t)-1,0);var r=t-1,i=1;for(this[e+r]=255&u;--r>=0&&(i*=256);)this[e+r]=u/i&255;return e+t},t.prototype.writeUInt8=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,1,255,0),this[e]=255&u,e+1},t.prototype.writeUInt16LE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,2,65535,0),this[e]=255&u,this[e+1]=u>>>8,e+2},t.prototype.writeUInt16BE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,2,65535,0),this[e]=u>>>8,this[e+1]=255&u,e+2},t.prototype.writeUInt32LE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,4,4294967295,0),this[e+3]=u>>>24,this[e+2]=u>>>16,this[e+1]=u>>>8,this[e]=255&u,e+4},t.prototype.writeUInt32BE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,4,4294967295,0),this[e]=u>>>24,this[e+1]=u>>>16,this[e+2]=u>>>8,this[e+3]=255&u,e+4},t.prototype.writeIntLE=function(u,e,t,n){if(u=+u,e>>>=0,!n){var r=Math.pow(2,8*t-1);N(this,u,e,t,r-1,-r)}var i=0,o=1,a=0;for(this[e]=255&u;++i>0)-a&255;return e+t},t.prototype.writeIntBE=function(u,e,t,n){if(u=+u,e>>>=0,!n){var r=Math.pow(2,8*t-1);N(this,u,e,t,r-1,-r)}var i=t-1,o=1,a=0;for(this[e+i]=255&u;--i>=0&&(o*=256);)u<0&&0===a&&0!==this[e+i+1]&&(a=1),this[e+i]=(u/o>>0)-a&255;return e+t},t.prototype.writeInt8=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,1,127,-128),u<0&&(u=255+u+1),this[e]=255&u,e+1},t.prototype.writeInt16LE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,2,32767,-32768),this[e]=255&u,this[e+1]=u>>>8,e+2},t.prototype.writeInt16BE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,2,32767,-32768),this[e]=u>>>8,this[e+1]=255&u,e+2},t.prototype.writeInt32LE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,4,2147483647,-2147483648),this[e]=255&u,this[e+1]=u>>>8,this[e+2]=u>>>16,this[e+3]=u>>>24,e+4},t.prototype.writeInt32BE=function(u,e,t){return u=+u,e>>>=0,t||N(this,u,e,4,2147483647,-2147483648),u<0&&(u=4294967295+u+1),this[e]=u>>>24,this[e+1]=u>>>16,this[e+2]=u>>>8,this[e+3]=255&u,e+4},t.prototype.writeFloatLE=function(u,e,t){return v(this,u,e,!0,t)},t.prototype.writeFloatBE=function(u,e,t){return v(this,u,e,!1,t)},t.prototype.writeDoubleLE=function(u,e,t){return k(this,u,e,!0,t)},t.prototype.writeDoubleBE=function(u,e,t){return k(this,u,e,!1,t)},t.prototype.copy=function(u,e,n,r){if(!t.isBuffer(u))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),e>=u.length&&(e=u.length),e||(e=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),u.length-e=0;--o)u[o+e]=this[o+n];else Uint8Array.prototype.set.call(u,this.subarray(n,r),e);return i},t.prototype.fill=function(u,e,n,r){if("string"==typeof u){if("string"==typeof e?(r=e,e=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!t.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===u.length){var i=u.charCodeAt(0);("utf8"===r&&i<128||"latin1"===r)&&(u=i)}}else"number"==typeof u&&(u&=255);if(e<0||this.length>>=0,n=void 0===n?this.length:n>>>0,u||(u=0),"number"==typeof u)for(o=e;o55295&&t<57344){if(!r){if(t>56319){(e-=3)>-1&&i.push(239,191,189);continue}if(o+1===n){(e-=3)>-1&&i.push(239,191,189);continue}r=t;continue}if(t<56320){(e-=3)>-1&&i.push(239,191,189),r=t;continue}t=65536+(r-55296<<10|t-56320)}else r&&(e-=3)>-1&&i.push(239,191,189);if(r=null,t<128){if((e-=1)<0)break;i.push(t)}else if(t<2048){if((e-=2)<0)break;i.push(t>>6|192,63&t|128)}else if(t<65536){if((e-=3)<0)break;i.push(t>>12|224,t>>6&63|128,63&t|128)}else{if(!(t<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;i.push(t>>18|240,t>>12&63|128,t>>6&63|128,63&t|128)}}return i}function O(u){return F.toByteArray(function(u){if((u=(u=u.split("=")[0]).trim().replace(S,"")).length<2)return"";for(;u.length%4!=0;)u+="=";return u}(u))}function R(u,e,t,n){for(var r=0;r=e.length||r>=u.length);++r)e[r+t]=u[r];return r}function U(u,e){return u instanceof e||null!=u&&null!=u.constructor&&null!=u.constructor.name&&u.constructor.name===e.name}function L(u){return u!=u}}).call(this)}).call(this,i({}).Buffer)})),o=u={};function a(){throw new Error("setTimeout has not been defined")}function c(){throw new Error("clearTimeout has not been defined")}function s(u){if(e===setTimeout)return setTimeout(u,0);if((e===a||!e)&&setTimeout)return e=setTimeout,setTimeout(u,0);try{return e(u,0)}catch(t){try{return e.call(null,u,0)}catch(t){return e.call(this,u,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:a}catch(u){e=a}try{t="function"==typeof clearTimeout?clearTimeout:c}catch(u){t=c}}();var p,f=[],d=!1,l=-1;function A(){d&&p&&(d=!1,p.length?f=p.concat(f):l=-1,f.length&&E())}function E(){if(!d){var u=s(A);d=!0;for(var e=f.length;e;){for(p=f,f=[];++l1)for(var t=1;t0?r-4:r;for(t=0;t>16&255,o[a++]=e>>8&255,o[a++]=255&e;return 2===i&&(e=m[u.charCodeAt(t)]<<2|m[u.charCodeAt(t+1)]>>4,o[a++]=255&e),1===i&&(e=m[u.charCodeAt(t)]<<10|m[u.charCodeAt(t+1)]<<4|m[u.charCodeAt(t+2)]>>2,o[a++]=e>>8&255,o[a++]=255&e),o},fromByteArray:function(u){for(var e,t=u.length,n=t%3,r=[],i=0,o=t-n;io?o:i+16383));return 1===n?(e=u[t-1],r.push(y[e>>2]+y[e<<4&63]+"==")):2===n&&(e=(u[t-2]<<8)+u[t-1],r.push(y[e>>10]+y[e>>4&63]+y[e<<2&63]+"=")),r.join("")}},y=[],m=[],h="undefined"!=typeof Uint8Array?Uint8Array:Array,b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",g=0,D=b.length;g0)throw new Error("Invalid string. Length must be a multiple of 4");var t=u.indexOf("=");return-1===t&&(t=e),[t,t===e?0:4-t%4]}function B(u,e,t){for(var n,r,i=[],o=e;o>18&63]+y[r>>12&63]+y[r>>6&63]+y[63&r]);return i.join("")}m["-".charCodeAt(0)]=62,m["_".charCodeAt(0)]=63;var w={read:function(u,e,t,n,r){var i,o,a=8*r-n-1,c=(1<>1,p=-7,f=t?r-1:0,d=t?-1:1,l=u[e+f];for(f+=d,i=l&(1<<-p)-1,l>>=-p,p+=a;p>0;i=256*i+u[e+f],f+=d,p-=8);for(o=i&(1<<-p)-1,i>>=-p,p+=n;p>0;o=256*o+u[e+f],f+=d,p-=8);if(0===i)i=1-s;else{if(i===c)return o?NaN:1/0*(l?-1:1);o+=Math.pow(2,n),i-=s}return(l?-1:1)*o*Math.pow(2,i-n)},write:function(u,e,t,n,r,i){var o,a,c,s=8*i-r-1,p=(1<>1,d=23===r?Math.pow(2,-24)-Math.pow(2,-77):0,l=n?0:i-1,A=n?1:-1,E=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,o=p):(o=Math.floor(Math.log(e)/Math.LN2),e*(c=Math.pow(2,-o))<1&&(o--,c*=2),(e+=o+f>=1?d/c:d*Math.pow(2,1-f))*c>=2&&(o++,c/=2),o+f>=p?(a=0,o=p):o+f>=1?(a=(e*c-1)*Math.pow(2,r),o+=f):(a=e*Math.pow(2,f-1)*Math.pow(2,r),o=0));r>=8;u[t+l]=255&a,l+=A,a/=256,r-=8);for(o=o<0;u[t+l]=255&o,l+=A,o/=256,s-=8);u[t+l-A]|=128*E}},N={};(function(u,e){(function(){for(var t=Math.floor(16777215*Math.random()),n=f.index=parseInt(16777215*Math.random(),10),r=(void 0===u||"number"!=typeof u.pid?Math.floor(1e5*Math.random()):u.pid)%65535,i=(()=>{try{return _Buffer}catch(u){try{return e}catch(u){return null}}})(),o=function(u){return!(null==u||!u.constructor||"function"!=typeof u.constructor.isBuffer||!u.constructor.isBuffer(u))},a=[],c=0;c<256;c++)a[c]=(c<=15?"0":"")+c.toString(16);var s=new RegExp("^[0-9a-fA-F]{24}$"),p=[];for(c=0;c<10;)p[48+c]=c++;for(;c<16;)p[55+c]=p[87+c]=c++;function f(u){if(!(this instanceof f))return new f(u);if(u&&(u instanceof f||"ObjectID"===u._bsontype))return u;if(this._bsontype="ObjectID",null!=u&&"number"!=typeof u){var e=f.isValid(u);if(!e&&null!=u)throw new Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");if(e&&"string"==typeof u&&24===u.length)return f.createFromHexString(u);if(null==u||12!==u.length){if(null!=u&&"function"==typeof u.toHexString)return u;throw new Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters")}this.id=u}else this.id=this.generate(u)}N=f,f.default=f,f.createFromTime=function(u){return new f((8,(8===(e=(e=u=parseInt(u,10)%4294967295).toString(16)).length?e:"00000000".substring(e.length,8)+e)+"0000000000000000"));var e},f.createFromHexString=function(u){if(void 0===u||null!=u&&24!==u.length)throw new Error("Argument passed in must be a single String of 12 bytes or a string of 24 hex characters");for(var e="",t=0;t<24;)e+=String.fromCharCode(p[u.charCodeAt(t++)]<<4|p[u.charCodeAt(t++)]);return new f(e)},f.isValid=function(u){return null!=u&&("number"==typeof u||("string"==typeof u?12===u.length||24===u.length&&s.test(u):u instanceof f||(o(u)?f.isValid(u.toString("hex")):!("function"!=typeof u.toHexString||!i||!(u.id instanceof i||"string"==typeof u.id))&&(12===u.id.length||24===u.id.length&&s.test(u.id)))))},f.prototype={constructor:f,toHexString:function(){if(!this.id||!this.id.length)throw new Error("invalid ObjectId, ObjectId.id must be either a string or a Buffer, but is ["+JSON.stringify(this.id)+"]");if(24===this.id.length)return this.id;if(o(this.id))return this.id.toString("hex");for(var u="",e=0;e>24&255,u>>16&255,u>>8&255,255&u,t>>16&255,t>>8&255,255&t,r>>8&255,255&r,e>>16&255,e>>8&255,255&e)}};var d=Symbol&&Symbol.for&&Symbol.for("nodejs.util.inspect.custom")||"inspect";f.prototype[d]=function(){return"ObjectID("+this+")"},f.prototype.toJSON=f.prototype.toHexString,f.prototype.toString=f.prototype.toHexString}).call(this)}).call(this,u,i({}).Buffer);var T=function(u,e){if(e=e.split(":")[0],!(u=+u))return!1;switch(e){case"http":case"ws":return 80!==u;case"https":case"wss":return 443!==u;case"ftp":return 21!==u;case"gopher":return 70!==u;case"file":return!1}return 0!==u},v={},k=Object.prototype.hasOwnProperty;function S(u){try{return decodeURIComponent(u.replace(/\+/g," "))}catch(e){return null}}function P(u){try{return encodeURIComponent(u)}catch(e){return null}}v.stringify=function(u,e){e=e||"";var t,n,r=[];for(n in"string"!=typeof e&&(e="?"),u)if(k.call(u,n)){if((t=u[n])||null!=t&&!isNaN(t)||(t=""),n=P(n),t=P(t),null===n||null===t)continue;r.push(n+"="+t)}return r.length?e+r.join("&"):""},v.parse=function(u){for(var e,t=/([^=?#&]+)=?([^&]*)/g,n={};e=t.exec(u);){var r=S(e[1]),i=S(e[2]);null===r||null===i||r in n||(n[r]=i)}return n};var O={};(function(u){(function(){"use strict";var e=/^[\x00-\x20\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]+/,t=/[\n\r\t]/g,n=/^[A-Za-z][A-Za-z0-9+-.]*:\/\//,r=/:\d+$/,i=/^([a-z][a-z0-9.+-]*:)?(\/\/)?([\\/]+)?([\S\s]*)/i,o=/^[a-zA-Z]:/;function a(u){return(u||"").toString().replace(e,"")}var c=[["#","hash"],["?","query"],function(u,e){return f(e.protocol)?u.replace(/\\/g,"/"):u},["/","pathname"],["@","auth",1],[NaN,"host",void 0,1,1],[/:(\d*)$/,"port",void 0,1],[NaN,"hostname",void 0,1,1]],s={hash:1,query:1};function p(e){var t,r=("undefined"!=typeof window?window:void 0!==u?u:"undefined"!=typeof self?self:{}).location||{},i={},o=typeof(e=e||r);if("blob:"===e.protocol)i=new l(unescape(e.pathname),{});else if("string"===o)for(t in i=new l(e,{}),s)delete i[t];else if("object"===o){for(t in e)t in s||(i[t]=e[t]);void 0===i.slashes&&(i.slashes=n.test(e.href))}return i}function f(u){return"file:"===u||"ftp:"===u||"http:"===u||"https:"===u||"ws:"===u||"wss:"===u}function d(u,e){u=(u=a(u)).replace(t,""),e=e||{};var n,r=i.exec(u),o=r[1]?r[1].toLowerCase():"",c=!!r[2],s=!!r[3],p=0;return c?s?(n=r[2]+r[3]+r[4],p=r[2].length+r[3].length):(n=r[2]+r[4],p=r[2].length):s?(n=r[3]+r[4],p=r[3].length):n=r[4],"file:"===o?p>=2&&(n=n.slice(2)):f(o)?n=r[4]:o?c&&(n=n.slice(2)):p>=2&&f(e.protocol)&&(n=r[4]),{protocol:o,slashes:c||f(o),slashesCount:p,rest:n}}function l(u,e,n){if(u=(u=a(u)).replace(t,""),!(this instanceof l))return new l(u,e,n);var r,i,s,A,E,C,_=c.slice(),F=typeof e,y=this,m=0;for("object"!==F&&"string"!==F&&(n=e,e=null),n&&"function"!=typeof n&&(n=v.parse),r=!(i=d(u||"",e=p(e))).protocol&&!i.slashes,y.slashes=i.slashes||r&&e.slashes,y.protocol=i.protocol||e.protocol||"",u=i.rest,("file:"===i.protocol&&(2!==i.slashesCount||o.test(u))||!i.slashes&&(i.protocol||i.slashesCount<2||!f(y.protocol)))&&(_[3]=[/(.*)/,"pathname"]);m<_.length;m++)"function"!=typeof(A=_[m])?(s=A[0],C=A[1],s!=s?y[C]=u:"string"==typeof s?~(E="@"===s?u.lastIndexOf(s):u.indexOf(s))&&("number"==typeof A[2]?(y[C]=u.slice(0,E),u=u.slice(E+A[2])):(y[C]=u.slice(E),u=u.slice(0,E))):(E=s.exec(u))&&(y[C]=E[1],u=u.slice(0,E.index)),y[C]=y[C]||r&&A[3]&&e[C]||"",A[4]&&(y[C]=y[C].toLowerCase())):u=A(u,y);n&&(y.query=n(y.query)),r&&e.slashes&&"/"!==y.pathname.charAt(0)&&(""!==y.pathname||""!==e.pathname)&&(y.pathname=function(u,e){if(""===u)return e;for(var t=(e||"/").split("/").slice(0,-1).concat(u.split("/")),n=t.length,r=t[n-1],i=!1,o=0;n--;)"."===t[n]?t.splice(n,1):".."===t[n]?(t.splice(n,1),o++):o&&(0===n&&(i=!0),t.splice(n,1),o--);return i&&t.unshift(""),"."!==r&&".."!==r||t.push(""),t.join("/")}(y.pathname,e.pathname)),"/"!==y.pathname.charAt(0)&&f(y.protocol)&&(y.pathname="/"+y.pathname),T(y.port,y.protocol)||(y.host=y.hostname,y.port=""),y.username=y.password="",y.auth&&(~(E=y.auth.indexOf(":"))?(y.username=y.auth.slice(0,E),y.username=encodeURIComponent(decodeURIComponent(y.username)),y.password=y.auth.slice(E+1),y.password=encodeURIComponent(decodeURIComponent(y.password))):y.username=encodeURIComponent(decodeURIComponent(y.auth)),y.auth=y.password?y.username+":"+y.password:y.username),y.origin="file:"!==y.protocol&&f(y.protocol)&&y.host?y.protocol+"//"+y.host:"null",y.href=y.toString()}l.prototype={set:function(u,e,t){var n=this;switch(u){case"query":"string"==typeof e&&e.length&&(e=(t||v.parse)(e)),n[u]=e;break;case"port":n[u]=e,T(e,n.protocol)?e&&(n.host=n.hostname+":"+e):(n.host=n.hostname,n[u]="");break;case"hostname":n[u]=e,n.port&&(e+=":"+n.port),n.host=e;break;case"host":n[u]=e,r.test(e)?(e=e.split(":"),n.port=e.pop(),n.hostname=e.join(":")):(n.hostname=e,n.port="");break;case"protocol":n.protocol=e.toLowerCase(),n.slashes=!t;break;case"pathname":case"hash":if(e){var i="pathname"===u?"/":"#";n[u]=e.charAt(0)!==i?i+e:e}else n[u]=e;break;case"username":case"password":n[u]=encodeURIComponent(e);break;case"auth":var o=e.indexOf(":");~o?(n.username=e.slice(0,o),n.username=encodeURIComponent(decodeURIComponent(n.username)),n.password=e.slice(o+1),n.password=encodeURIComponent(decodeURIComponent(n.password))):n.username=encodeURIComponent(decodeURIComponent(e))}for(var a=0;a{const e=1e9*u[0]+u[1];return{seconds:e/1e9,milliseconds:e/1e6,nanoseconds:e}},U={parse:function(u,e){if("string"!=typeof u)throw new TypeError("argument str must be a string");for(var t={},n=(e||{}).decode||L,r=0;r=e&&i<=t}(u,e[0],e[1]):function(u,e){return(e=String(e)).substring(0,u.length)===u.substring(0,e.length)}(u,e)};var W={};Object.defineProperty(W,"__esModule",{value:!0}),W.addMatchingCardsToResults=void 0,W.addMatchingCardsToResults=function(u,e,t){var n,r;for(n=0;n=r&&(o.matchStrength=r),t.push(o);break}}};var q={};Object.defineProperty(q,"__esModule",{value:!0}),q.isValidInputType=void 0,q.isValidInputType=function(u){return"string"==typeof u||u instanceof String};var V={};Object.defineProperty(V,"__esModule",{value:!0}),V.findBestMatch=void 0,V.findBestMatch=function(u){return function(u){var e=u.filter((function(u){return u.matchStrength})).length;return e>0&&e===u.length}(u)?u.reduce((function(u,e){return u?Number(u.matchStrength){"%%"!==u&&(t++,"%c"===u&&(n=t))}),u.splice(n,0,e)},uu.save=function(u){try{u?uu.storage.setItem("debug",u):uu.storage.removeItem("debug")}catch(e){}},uu.load=function(){let e;try{e=uu.storage.getItem("debug")}catch(t){}return!e&&void 0!==u&&"env"in u&&(e=u.env.DEBUG),e},uu.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},uu.storage=function(){try{return localStorage}catch(u){}}(),uu.destroy=(()=>{let u=!1;return()=>{u||(u=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),uu.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],uu.log=console.debug||console.log||(()=>{}),uu=function(u){function e(u){let n,r,i,o=null;function a(){for(var u=arguments.length,t=new Array(u),r=0;r{if("%%"===u)return"%";s++;const r=e.formatters[n];if("function"==typeof r){const e=t[s];u=r.call(i,e),t.splice(s,1),s--}return u}),e.formatArgs.call(i,t),(i.log||e.log).apply(i,t)}return a.namespace=u,a.useColors=e.useColors(),a.color=e.selectColor(u),a.extend=t,a.destroy=e.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==o?o:(r!==e.namespaces&&(r=e.namespaces,i=e.enabled(u)),i),set:u=>{o=u}}),"function"==typeof e.init&&e.init(a),a}function t(u,t){const n=e(this.namespace+(void 0===t?":":t)+u);return n.log=this.log,n}function n(u){return u.toString().substring(2,u.toString().length-2).replace(/\.\*\?$/,"*")}return e.debug=e,e.default=e,e.coerce=function(u){return u instanceof Error?u.stack||u.message:u},e.disable=function(){const u=[...e.names.map(n),...e.skips.map(n).map(u=>"-"+u)].join(",");return e.enable(""),u},e.enable=function(u){let t;e.save(u),e.namespaces=u,e.names=[],e.skips=[];const n=("string"==typeof u?u:"").split(/[\s,]+/),r=n.length;for(t=0;t{e[t]=u[t]}),e.names=[],e.skips=[],e.formatters={},e.selectColor=function(u){let t=0;for(let e=0;ee?1:u1&&"boolean"!=typeof e)throw new _u('"allowMissing" argument must be a boolean');if(null===Wu(/^%?[^%]*%?$/,u))throw new Cu("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var t=function(u){var e=Ku(u,0,1),t=Ku(u,-1);if("%"===e&&"%"!==t)throw new Cu("invalid intrinsic syntax, expected closing `%`");if("%"===t&&"%"!==e)throw new Cu("invalid intrinsic syntax, expected opening `%`");var n=[];return xu(u,qu,(function(u,e,t,r){n[n.length]=t?xu(r,Vu,"$1"):e||u})),n}(u),n=t.length>0?t[0]:"",r=Gu("%"+n+"%",e),i=r.name,o=r.value,a=!1,c=r.alias;c&&(n=c[0],ju(t,Mu([0,1],c)));for(var s=1,p=!0;s=t.length){var A=wu(o,f);o=(p=!!A)&&"get"in A&&!("originalValue"in A.get)?A.get:o[f]}else p=Du(o,f),o=o[f];p&&!a&&(Ru[i]=o)}}return o},zu=Yu("%Object.defineProperty%",!0)||!1;if(zu)try{zu({},"a",{value:1})}catch(_t){zu=!1}var Hu=zu,$u=Yu("%Object.getOwnPropertyDescriptor%",!0);if($u)try{$u([],"length")}catch(_t){$u=null}var Ju=$u,Zu=function(u,e,t){if(!u||"object"!=typeof u&&"function"!=typeof u)throw new _u("`obj` must be an object or a function`");if("string"!=typeof e&&"symbol"!=typeof e)throw new _u("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new _u("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new _u("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new _u("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new _u("`loose`, if provided, must be a boolean");var n=arguments.length>3?arguments[3]:null,r=arguments.length>4?arguments[4]:null,i=arguments.length>5?arguments[5]:null,o=arguments.length>6&&arguments[6],a=!!Ju&&Ju(u,e);if(Hu)Hu(u,e,{configurable:null===i&&a?a.configurable:!i,enumerable:null===n&&a?a.enumerable:!n,value:t,writable:null===r&&a?a.writable:!r});else{if(!o&&(n||r||i))throw new Cu("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");u[e]=t}},Qu=function(){return!!Hu};Qu.hasArrayLengthDefineBug=function(){if(!Hu)return null;try{return 1!==Hu([],"length",{value:1}).length}catch(_t){return!0}};var Xu,ue=Qu(),ee=Yu("%Math.floor%"),te=function(u,e){if("function"!=typeof u)throw new _u("`fn` is not a function");if("number"!=typeof e||e<0||e>4294967295||ee(e)!==e)throw new _u("`length` must be a positive 32-bit integer");var t=arguments.length>2&&!!arguments[2],n=!0,r=!0;if("length"in u&&Ju){var i=Ju(u,"length");i&&!i.configurable&&(n=!1),i&&!i.writable&&(r=!1)}return(n||r||!t)&&(ue?Zu(u,"length",e,!0,!0):Zu(u,"length",e)),u},ne=Yu("%Function.prototype.apply%"),re=Yu("%Function.prototype.call%"),ie=Yu("%Reflect.apply%",!0)||fu.call(re,ne),oe=Yu("%Math.max%");Xu=function(u){if("function"!=typeof u)throw new _u("a function is required");var e=ie(fu,re,arguments);return te(e,1+oe(0,u.length-(arguments.length-1)),!0)};var ae=function(){return ie(fu,ne,arguments)};Hu?Hu(Xu,"apply",{value:ae}):Xu.apply=ae;var ce=Xu(Yu("String.prototype.indexOf")),se=function(u,e){var t=Yu(u,!!e);return"function"==typeof t&&ce(u,".prototype.")>-1?Xu(t):t},pe=Yu("%ArrayBuffer%",!0),fe=se("ArrayBuffer.prototype.byteLength",!0),de=se("Object.prototype.toString"),le=!!pe&&!fe&&new pe(0).slice,Ae=!!le&&Xu(le),Ee=fe||Ae?function(u){if(!u||"object"!=typeof u)return!1;try{return fe?fe(u):Ae(u,0),!0}catch(_t){return!1}}:pe?function(u){return"[object ArrayBuffer]"===de(u)}:function(u){return!1},Ce=function(u){return null!=u&&null!=u.constructor&&"function"==typeof u.constructor.isBuffer&&u.constructor.isBuffer(u)},_e={};const Fe=u=>null!==u&&"object"==typeof u&&"function"==typeof u.pipe;Fe.writable=u=>Fe(u)&&!1!==u.writable&&"function"==typeof u._write&&"object"==typeof u._writableState,Fe.readable=u=>Fe(u)&&!1!==u.readable&&"function"==typeof u._read&&"object"==typeof u._readableState,Fe.duplex=u=>Fe.writable(u)&&Fe.readable(u),Fe.transform=u=>Fe.duplex(u)&&"function"==typeof u._transform,_e=Fe;var ye=/^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,me=function(u){return ye.test(u)};function he(u,e,t,n){var r=e>=1.5*t;return Math.round(u/t)+" "+n+(r?"s":"")}var be=function(u,e){e=e||{};var t,n,r=typeof u;if("string"===r&&u.length>0)return function(u){if(!((u=String(u)).length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(u);if(e){var t=parseFloat(e[1]);switch((e[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*t;case"weeks":case"week":case"w":return 6048e5*t;case"days":case"day":case"d":return 864e5*t;case"hours":case"hour":case"hrs":case"hr":case"h":return 36e5*t;case"minutes":case"minute":case"mins":case"min":case"m":return 6e4*t;case"seconds":case"second":case"secs":case"sec":case"s":return 1e3*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return t;default:return}}}}(u);if("number"===r&&isFinite(u))return e.long?(t=u,(n=Math.abs(t))>=864e5?he(t,n,864e5,"day"):n>=36e5?he(t,n,36e5,"hour"):n>=6e4?he(t,n,6e4,"minute"):n>=1e3?he(t,n,1e3,"second"):t+" ms"):function(u){var e=Math.abs(u);return e>=864e5?Math.round(u/864e5)+"d":e>=36e5?Math.round(u/36e5)+"h":e>=6e4?Math.round(u/6e4)+"m":e>=1e3?Math.round(u/1e3)+"s":u+"ms"}(u);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(u))},ge={tr:{regexp:/\u0130|\u0049|\u0049\u0307/g,map:{"\u0130":"i",I:"\u0131","I\u0307":"i"}},az:{regexp:/[\u0130]/g,map:{"\u0130":"i",I:"\u0131","I\u0307":"i"}},lt:{regexp:/[\u0049\u004A\u012E\u00CC\u00CD\u0128]/g,map:{I:"i\u0307",J:"j\u0307","\u012e":"\u012f\u0307","\xcc":"i\u0307\u0300","\xcd":"i\u0307\u0301","\u0128":"i\u0307\u0303"}}},De=/[^A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0-\u08B4\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FD5\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AD\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D66-\u0D75\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]+/g,Ie=/([a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D66-\u0D75\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19])([A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A])/g,Be=/([A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A])([A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AD\uA7B0-\uA7B4\uA7B6\uFF21-\uFF3A][a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0561-\u0587\u13F8-\u13FD\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7B5\uA7B7\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A])/g,we=function(u,e,t){return null==u?"":(t="string"!=typeof t?" ":t,function(u,e){var t=ge[e];return u=null==u?"":String(u),t&&(u=u.replace(t.regexp,(function(u){return t.map[u]}))),u.toLowerCase()}(u=String(u).replace(Ie,"$1 $2").replace(Be,"$1 $2").replace(De,(function(u,e,n){return 0===e||e===n.length-u.length?"":t})),e))},Ne={};(function(u){(function(){var e="function"==typeof Map&&Map.prototype,t=Object.getOwnPropertyDescriptor&&e?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,n=e&&t&&"function"==typeof t.get?t.get:null,r=e&&Map.prototype.forEach,i="function"==typeof Set&&Set.prototype,o=Object.getOwnPropertyDescriptor&&i?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,a=i&&o&&"function"==typeof o.get?o.get:null,c=i&&Set.prototype.forEach,s="function"==typeof WeakMap&&WeakMap.prototype?WeakMap.prototype.has:null,p="function"==typeof WeakSet&&WeakSet.prototype?WeakSet.prototype.has:null,f="function"==typeof WeakRef&&WeakRef.prototype?WeakRef.prototype.deref:null,d=Boolean.prototype.valueOf,l=Object.prototype.toString,A=Function.prototype.toString,E=String.prototype.match,C=String.prototype.slice,_=String.prototype.replace,F=String.prototype.toUpperCase,y=String.prototype.toLowerCase,m=RegExp.prototype.test,h=Array.prototype.concat,b=Array.prototype.join,g=Array.prototype.slice,D=Math.floor,I="function"==typeof BigInt?BigInt.prototype.valueOf:null,B=Object.getOwnPropertySymbols,w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?Symbol.prototype.toString:null,N="function"==typeof Symbol&&"object"==typeof Symbol.iterator,T="function"==typeof Symbol&&Symbol.toStringTag&&(Symbol.toStringTag,1)?Symbol.toStringTag:null,v=Object.prototype.propertyIsEnumerable,k=("function"==typeof Reflect?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function(u){return u.__proto__}:null);function S(u,e){if(u===1/0||u===-1/0||u!=u||u&&u>-1e3&&u<1e3||m.call(/e/,e))return e;var t=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof u){var n=u<0?-D(-u):D(u);if(n!==u){var r=String(n),i=C.call(e,r.length+1);return _.call(r,t,"$&_")+"."+_.call(_.call(i,/([0-9]{3})/g,"$&_"),/_$/,"")}}return _.call(e,t,"$&_")}var P=Ne.custom,O=j(P)?P:null;function R(u,e,t){var n="double"===(t.quoteStyle||e)?'"':"'";return n+u+n}function U(u){return _.call(String(u),/"/g,""")}function L(u){return!("[object Array]"!==W(u)||T&&"object"==typeof u&&T in u)}function M(u){return!("[object RegExp]"!==W(u)||T&&"object"==typeof u&&T in u)}function j(u){if(N)return u&&"object"==typeof u&&u instanceof Symbol;if("symbol"==typeof u)return!0;if(!u||"object"!=typeof u||!w)return!1;try{return w.call(u),!0}catch(_t){}return!1}(function e(t,i,o,l){var F=i||{};if(K(F,"quoteStyle")&&"single"!==F.quoteStyle&&"double"!==F.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(K(F,"maxStringLength")&&("number"==typeof F.maxStringLength?F.maxStringLength<0&&F.maxStringLength!==1/0:null!==F.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var m=!K(F,"customInspect")||F.customInspect;if("boolean"!=typeof m&&"symbol"!==m)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(K(F,"indent")&&null!==F.indent&&"\t"!==F.indent&&!(parseInt(F.indent,10)===F.indent&&F.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(K(F,"numericSeparator")&&"boolean"!=typeof F.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var D=F.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return function u(e,t){if(e.length>t.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return u(C.call(e,0,t.maxStringLength),t)+r}return R(_.call(_.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,V),"single",t)}(t,F);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var B=String(t);return D?S(t,B):B}if("bigint"==typeof t){var P=String(t)+"n";return D?S(t,P):P}var x=void 0===F.depth?5:F.depth;if(void 0===o&&(o=0),o>=x&&x>0&&"object"==typeof t)return L(t)?"[Array]":"[Object]";var J,Z=function(u,e){var t;if("\t"===u.indent)t="\t";else{if(!("number"==typeof u.indent&&u.indent>0))return null;t=b.call(Array(u.indent+1)," ")}return{base:t,prev:b.call(Array(e+1),t)}}(F,o);if(void 0===l)l=[];else if(q(l,t)>=0)return"[Circular]";function Q(u,t,n){if(t&&(l=g.call(l)).push(t),n){var r={depth:F.depth};return K(F,"quoteStyle")&&(r.quoteStyle=F.quoteStyle),e(u,r,o+1,l)}return e(u,F,o+1,l)}if("function"==typeof t&&!M(t)){var X=function(u){if(u.name)return u.name;var e=E.call(A.call(u),/^function\s*([\w$]+)/);return e?e[1]:null}(t),uu=$(t,Q);return"[Function"+(X?": "+X:" (anonymous)")+"]"+(uu.length>0?" { "+b.call(uu,", ")+" }":"")}if(j(t)){var eu=N?_.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):w.call(t);return"object"!=typeof t||N?eu:G(eu)}if((J=t)&&"object"==typeof J&&("undefined"!=typeof HTMLElement&&J instanceof HTMLElement||"string"==typeof J.nodeName&&"function"==typeof J.getAttribute)){for(var tu="<"+y.call(String(t.nodeName)),nu=t.attributes||[],ru=0;ru"}if(L(t)){if(0===t.length)return"[]";var iu=$(t,Q);return Z&&!function(u){for(var e=0;e=0)return!1;return!0}(iu)?"["+H(iu,Z)+"]":"[ "+b.call(iu,", ")+" ]"}if(function(u){return!("[object Error]"!==W(u)||T&&"object"==typeof u&&T in u)}(t)){var ou=$(t,Q);return"cause"in Error.prototype||!("cause"in t)||v.call(t,"cause")?0===ou.length?"["+String(t)+"]":"{ ["+String(t)+"] "+b.call(ou,", ")+" }":"{ ["+String(t)+"] "+b.call(h.call("[cause]: "+Q(t.cause),ou),", ")+" }"}if("object"==typeof t&&m){if(O&&"function"==typeof t[O]&&Ne)return Ne(t,{depth:x-o});if("symbol"!==m&&"function"==typeof t.inspect)return t.inspect()}if(function(u){if(!n||!u||"object"!=typeof u)return!1;try{n.call(u);try{a.call(u)}catch(tu){return!0}return u instanceof Map}catch(_t){}return!1}(t)){var au=[];return r&&r.call(t,(function(u,e){au.push(Q(e,t,!0)+" => "+Q(u,t))})),z("Map",n.call(t),au,Z)}if(function(u){if(!a||!u||"object"!=typeof u)return!1;try{a.call(u);try{n.call(u)}catch(e){return!0}return u instanceof Set}catch(_t){}return!1}(t)){var cu=[];return c&&c.call(t,(function(u){cu.push(Q(u,t))})),z("Set",a.call(t),cu,Z)}if(function(u){if(!s||!u||"object"!=typeof u)return!1;try{s.call(u,s);try{p.call(u,p)}catch(tu){return!0}return u instanceof WeakMap}catch(_t){}return!1}(t))return Y("WeakMap");if(function(u){if(!p||!u||"object"!=typeof u)return!1;try{p.call(u,p);try{s.call(u,s)}catch(tu){return!0}return u instanceof WeakSet}catch(_t){}return!1}(t))return Y("WeakSet");if(function(u){if(!f||!u||"object"!=typeof u)return!1;try{return f.call(u),!0}catch(_t){}return!1}(t))return Y("WeakRef");if(function(u){return!("[object Number]"!==W(u)||T&&"object"==typeof u&&T in u)}(t))return G(Q(Number(t)));if(function(u){if(!u||"object"!=typeof u||!I)return!1;try{return I.call(u),!0}catch(_t){}return!1}(t))return G(Q(I.call(t)));if(function(u){return!("[object Boolean]"!==W(u)||T&&"object"==typeof u&&T in u)}(t))return G(d.call(t));if(function(u){return!("[object String]"!==W(u)||T&&"object"==typeof u&&T in u)}(t))return G(Q(String(t)));if("undefined"!=typeof window&&t===window)return"{ [object Window] }";if("undefined"!=typeof globalThis&&t===globalThis||void 0!==u&&t===u)return"{ [object globalThis] }";if(!function(u){return!("[object Date]"!==W(u)||T&&"object"==typeof u&&T in u)}(t)&&!M(t)){var su=$(t,Q),pu=k?k(t)===Object.prototype:t instanceof Object||t.constructor===Object,fu=t instanceof Object?"":"null prototype",du=!pu&&T&&Object(t)===t&&T in t?C.call(W(t),8,-1):fu?"Object":"",lu=(pu||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(du||fu?"["+b.call(h.call([],du||[],fu||[]),": ")+"] ":"");return 0===su.length?lu+"{}":Z?lu+"{"+H(su,Z)+"}":lu+"{ "+b.call(su,", ")+" }"}return String(t)});var x=Object.prototype.hasOwnProperty||function(u){return u in this};function K(u,e){return x.call(u,e)}function W(u){return l.call(u)}function q(u,e){if(u.indexOf)return u.indexOf(e);for(var t=0,n=u.length;t1;){var e=u.pop(),t=e.obj[e.prop];if(Pe(t)){for(var n=[],r=0;r=1024?i.slice(a,a+1024):i,s=[],p=0;p=48&&f<=57||f>=65&&f<=90||f>=97&&f<=122||r===ke.RFC1738&&(40===f||41===f)?s[s.length]=c.charAt(p):f<128?s[s.length]=Oe[f]:f<2048?s[s.length]=Oe[192|f>>6]+Oe[128|63&f]:f<55296||f>=57344?s[s.length]=Oe[224|f>>12]+Oe[128|f>>6&63]+Oe[128|63&f]:(p+=1,f=65536+((1023&f)<<10|1023&c.charCodeAt(p)),s[s.length]=Oe[240|f>>18]+Oe[128|f>>12&63]+Oe[128|f>>6&63]+Oe[128|63&f])}o+=s.join("")}return o},isBuffer:function(u){return!(!u||"object"!=typeof u||!(u.constructor&&u.constructor.isBuffer&&u.constructor.isBuffer(u)))},isRegExp:function(u){return"[object RegExp]"===Object.prototype.toString.call(u)},maybeMap:function(u,e){if(Pe(u)){for(var t=[],n=0;n-1?u.split(","):u},qe=function(u,e,t,n){if(u){var r=t.allowDots?u.replace(/\.([^.[]+)/g,"[$1]"):u,i=/(\[[^[\]]*])/g,o=t.depth>0&&/(\[[^[\]]*])/.exec(r),a=o?r.slice(0,o.index):r,c=[];if(a){if(!t.plainObjects&&Me.call(Object.prototype,a)&&!t.allowPrototypes)return;c.push(a)}for(var s=0;t.depth>0&&null!==(o=i.exec(r))&&s=0;--i){var o,a=u[i];if("[]"===a&&t.parseArrays)o=t.allowEmptyArrays&&""===r?[]:[].concat(r);else{o=t.plainObjects?Object.create(null):{};var c="["===a.charAt(0)&&"]"===a.charAt(a.length-1)?a.slice(1,-1):a,s=t.decodeDotInKeys?c.replace(/%2E/g,"."):c,p=parseInt(s,10);t.parseArrays||""!==s?!isNaN(p)&&a!==s&&String(p)===s&&p>=0&&t.parseArrays&&p<=t.arrayLimit?(o=[])[p]=r:"__proto__"!==s&&(o[s]=r):o={0:r}}r=o}return r}(c,e,t,n)}},Ve=function(u,e){var t=function(u){if(!u)return xe;if(void 0!==u.allowEmptyArrays&&"boolean"!=typeof u.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==u.decodeDotInKeys&&"boolean"!=typeof u.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==u.decoder&&void 0!==u.decoder&&"function"!=typeof u.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==u.charset&&"utf-8"!==u.charset&&"iso-8859-1"!==u.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var e=void 0===u.charset?xe.charset:u.charset,t=void 0===u.duplicates?xe.duplicates:u.duplicates;if("combine"!==t&&"first"!==t&&"last"!==t)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:void 0===u.allowDots?!0===u.decodeDotInKeys||xe.allowDots:!!u.allowDots,allowEmptyArrays:"boolean"==typeof u.allowEmptyArrays?!!u.allowEmptyArrays:xe.allowEmptyArrays,allowPrototypes:"boolean"==typeof u.allowPrototypes?u.allowPrototypes:xe.allowPrototypes,allowSparse:"boolean"==typeof u.allowSparse?u.allowSparse:xe.allowSparse,arrayLimit:"number"==typeof u.arrayLimit?u.arrayLimit:xe.arrayLimit,charset:e,charsetSentinel:"boolean"==typeof u.charsetSentinel?u.charsetSentinel:xe.charsetSentinel,comma:"boolean"==typeof u.comma?u.comma:xe.comma,decodeDotInKeys:"boolean"==typeof u.decodeDotInKeys?u.decodeDotInKeys:xe.decodeDotInKeys,decoder:"function"==typeof u.decoder?u.decoder:xe.decoder,delimiter:"string"==typeof u.delimiter||Re.isRegExp(u.delimiter)?u.delimiter:xe.delimiter,depth:"number"==typeof u.depth||!1===u.depth?+u.depth:xe.depth,duplicates:t,ignoreQueryPrefix:!0===u.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof u.interpretNumericEntities?u.interpretNumericEntities:xe.interpretNumericEntities,parameterLimit:"number"==typeof u.parameterLimit?u.parameterLimit:xe.parameterLimit,parseArrays:!1!==u.parseArrays,plainObjects:"boolean"==typeof u.plainObjects?u.plainObjects:xe.plainObjects,strictNullHandling:"boolean"==typeof u.strictNullHandling?u.strictNullHandling:xe.strictNullHandling}}(e);if(""===u||null==u)return t.plainObjects?Object.create(null):{};for(var n="string"==typeof u?function(u,e){var t,n={__proto__:null},r=e.ignoreQueryPrefix?u.replace(/^\?/,""):u,i=e.parameterLimit===1/0?void 0:e.parameterLimit,o=r.split(e.delimiter,i),a=-1,c=e.charset;if(e.charsetSentinel)for(t=0;t-1&&(p=je(p)?[p]:p);var A=Me.call(n,s);A&&"combine"===e.duplicates?n[s]=Re.combine(n[s],p):A&&"last"!==e.duplicates||(n[s]=p)}return n}(u,t):u,r=t.plainObjects?Object.create(null):{},i=Object.keys(n),o=0;onew Date(u)),r.set(Map,(u,e)=>new Map(o(Array.from(u),e))),r.set(Set,(u,e)=>new Set(o(Array.from(u),e))),u.constructorHandlers)for(const e of u.constructorHandlers)r.set(e[0],e[1]);let i=null;return u.proto?function u(a){if("object"!=typeof a||null===a)return a;if(Array.isArray(a))return o(a,u);if(a.constructor!==Object&&(i=r.get(a.constructor)))return i(a,u);const c={};t.push(a),n.push(c);for(const o in a){const s=a[o];if("object"!=typeof s||null===s)c[o]=s;else if(s.constructor!==Object&&(i=r.get(s.constructor)))c[o]=i(s,u);else if(ArrayBuffer.isView(s))c[o]=e(s);else{const e=t.indexOf(s);c[o]=-1!==e?n[e]:u(s)}}return t.pop(),n.pop(),c}:function u(a){if("object"!=typeof a||null===a)return a;if(Array.isArray(a))return o(a,u);if(a.constructor!==Object&&(i=r.get(a.constructor)))return i(a,u);const c={};t.push(a),n.push(c);for(const o in a){if(!1===Object.hasOwnProperty.call(a,o))continue;const s=a[o];if("object"!=typeof s||null===s)c[o]=s;else if(s.constructor!==Object&&(i=r.get(s.constructor)))c[o]=i(s,u);else if(ArrayBuffer.isView(s))c[o]=e(s);else{const e=t.indexOf(s);c[o]=-1!==e?n[e]:u(s)}}return t.pop(),n.pop(),c};function o(u,o){const a=Object.keys(u),c=new Array(a.length);for(let s=0;snew Date(u)),t.set(Map,(u,e)=>new Map(r(Array.from(u),e))),t.set(Set,(u,e)=>new Set(r(Array.from(u),e))),u.constructorHandlers)for(const e of u.constructorHandlers)t.set(e[0],e[1]);let n=null;return u.proto?function u(i){if("object"!=typeof i||null===i)return i;if(Array.isArray(i))return r(i,u);if(i.constructor!==Object&&(n=t.get(i.constructor)))return n(i,u);const o={};for(const r in i){const a=i[r];"object"!=typeof a||null===a?o[r]=a:a.constructor!==Object&&(n=t.get(a.constructor))?o[r]=n(a,u):ArrayBuffer.isView(a)?o[r]=e(a):o[r]=u(a)}return o}:function u(i){if("object"!=typeof i||null===i)return i;if(Array.isArray(i))return r(i,u);if(i.constructor!==Object&&(n=t.get(i.constructor)))return n(i,u);const o={};for(const r in i){if(!1===Object.hasOwnProperty.call(i,r))continue;const a=i[r];"object"!=typeof a||null===a?o[r]=a:a.constructor!==Object&&(n=t.get(a.constructor))?o[r]=n(a,u):ArrayBuffer.isView(a)?o[r]=e(a):o[r]=u(a)}return o};function r(u,r){const i=Object.keys(u),o=new Array(i.length);for(let a=0;aa.depthLimit)return void Ze("[...]",e,t,i);if(void 0!==a.edgesLimit&&n+1>a.edgesLimit)return void Ze("[...]",e,t,i);if(r.push(e),Array.isArray(e))for(c=0;ce?1:0}function Xe(u,e,t,n){void 0===n&&(n=$e());var r,i=function u(e,t,n,r,i,o,a){var c;if(o+=1,"object"==typeof e&&null!==e){for(c=0;ca.depthLimit)return void Ze("[...]",e,t,i);if(void 0!==a.edgesLimit&&n+1>a.edgesLimit)return void Ze("[...]",e,t,i);if(r.push(e),Array.isArray(e))for(c=0;c0)for(var n=0;nu.toLowerCase())).includes("referer")||t.includes("referrer"))&&(t.includes("referer")||t.push("referer"),t.includes("referrer")||t.push("referrer"));const i=!r||!t.includes(u);if(!n.isHeaders){if(r&&n.checkId){if(ct[u.toLowerCase()])return e;const t=we(u,null,"_");if(st.test(t))return e}if(function(u,e){return!(!e.checkObjectId||!N.isValid(u))||!!(e.checkCuid&&0===u.indexOf("c")&&u.length>=7)||!(!e.checkUUID||!me(u))}(e,n)&&i)return e;if(n.maskCreditCards&&function(u){const e=u.replaceAll(/\D/g,""),t=G(e);if(!Array.isArray(t)||0===t.length)return!1;let n=!1;for(const r of t){if(n)break;if(Array.isArray(r.lengths)&&0!==r.lengths.length)for(let u=0;u3&&void 0!==arguments[3]&&arguments[3];if(t=Object.assign({maskCreditCards:!0,isHeaders:!1,checkId:!0,checkCuid:!0,checkObjectId:!0,checkUUID:!0},t),lt(u))return At(null,u,e,t);for(const r in u)"object"==typeof u[r]?u[r]=Ct(u[r],e,t,u[r]instanceof Error||"err"===r||"original_err"===r):!lt(u[r])||n&&"code"===r||(u[r]=At(r,u[r],e,t));return u}return function(){let u=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const e=eu(),t=new N;u=Object.assign({req:!1,ctx:!1,responseHeaders:"",userFields:["id","email","full_name","ip_address"],sanitizeFields:et,sanitizeHeaders:["authorization"],maskCreditCards:!0,maskBuffers:!0,maskStreams:!0,checkId:!0,checkCuid:!0,checkObjectId:!0,checkUUID:!0,rfdc:{proto:!1,circles:!1},parseBody:!0,parseQuery:!0,parseFiles:!0},u);const n=Ge(u.rfdc),{req:r,ctx:i,responseHeaders:o,userFields:a,sanitizeFields:c,sanitizeHeaders:s,maskCreditCards:p,maskBuffers:f,maskStreams:d,checkId:l,checkCuid:A,checkObjectId:E,checkUUID:C,parseBody:_,parseQuery:F,parseFiles:y}=u;if(r&&i)throw new Error("You must either use `req` (Express/Connect) or `ctx` (Koa) option, but not both");const m=i?i.req:r||{},h={maskCreditCards:p,checkId:l,checkCuid:A,checkObjectId:E,checkUUID:C},b={maskBuffers:f,maskStreams:d,checkObjectId:E},g=m.headers;let D,I,B,w,T,v;g&&(D=Ct(Et(g),s,{isHeaders:!0})),i?I=i.method:r&&(I=r.method),i?B=i.originalUrl||i.url:r&&(B=r.originalUrl||r.url),B&&(B=new O(B,{}),w=O.qs.parse(B.query),v=B.pathname,T=("null"===B.origin?B.pathname:`${B.origin}${B.pathname}`)+O.qs.stringify(w,!0));let k,S={};if(i&&dt(i.state.user)?k=i.state.user:r&&dt(r.user)&&(k=r.user),k)try{S="function"==typeof k.toJSON?k.toJSON():"function"==typeof k.toObject?k.toObject():n(k)}catch(G){tt(G);try{S=JSON.parse(Ye(k))}catch(G){tt(G)}}const P=i?i.ip:r?r.ip:null;let L;P&&!lt(S.ip_address)&&(S.ip_address=P),S&&Array.isArray(a)&&a.length>0&&(S=function(u,e){const t={};for(const n of e)Object.prototype.hasOwnProperty.call(u,n)&&(t[n]=u[n]);return t}(S,a)),S&&(S=Ct(S,c,h));const M=i?i.request._originalBody||i.request.body:r?r._originalBody||r.body:null;let j;M&&_&&!m[it]&&(["GET","HEAD"].includes(I)||ft(M)||(L=n(f||d?pt(M,b):M)),ft(L=Ct(L,c,h))||null===L||lt(L)||(L=Ye(L))),D&&D.cookie&&(j=U.parse(D.cookie));const x={id:t.toString(),timestamp:t.getTimestamp().toISOString(),is_http:!0};if((i||r)&&(x.request={}),I&&(x.request.method=I),D&&(x.request.headers=D),j&&(x.request.cookies=j),T&&(x.request.url=T),v&&(x.request.pathname=v),S&&(x.user=S),w&&(F&&!m[ot]&&(w=Ct(Ve(w),c)),x.request.query=w),M&&_&&L&&!m[it]&&(x.request.body=L),m[nt]instanceof Date?x.request.timestamp=m[nt].toISOString():"number"==typeof m[nt]?x.request.timestamp=new Date(m[nt]).toISOString():"number"==typeof m[rt]?x.request.timestamp=new Date(m[rt]).toISOString():m._startTime instanceof Date?x.request.timestamp=m._startTime.toISOString():"number"==typeof m._startTime&&(x.request.timestamp=new Date(m._startTime).toISOString()),dt(o)&&Object.keys(o).length>0)x.response={},x.response.headers=n(o);else if(lt(o)){const u=au(o);x.response={},dt(u.headers)?(x.response.headers=u.headers,dt(u.version)&&"number"==typeof u.version.major&&"number"==typeof u.version.minor&&(x.response.http_version=`${u.version.major}.${u.version.minor}`),"number"==typeof u.statusCode&&(x.response.status_code=u.statusCode),lt(u.statusMessage)&&(x.response.reason_phrase=u.statusMessage)):x.response.headers=u}if(x.response&&x.response.headers)if(x.response.headers=Ct(Et(x.response.headers),s,{isHeaders:!0}),x.response.headers&&0===Object.keys(x.response.headers).length)delete x.response;else{try{x.response.headers.date&&(x.response.timestamp=new Date(x.response.headers.date).toISOString())}catch(G){tt(G)}try{if(x.response.headers["x-response-time"]){const u=be(x.response.headers["x-response-time"]);"number"==typeof u&&(x.response.duration=u)}}catch(G){tt(G)}}let K;i?lt(i.id)?K=i.id:lt(i.request.id)?K=i.request.id:lt(i.req.id)?K=i.req.id:lt(i.state.reqId)?K=i.state.reqId:lt(i.state.id)&&(K=i.state.id):r&<(r.id)&&(K=r.id),K?x.request.id=K:D&&D["x-request-id"]&&(x.request.id=D["x-request-id"]);const{httpVersion:W,httpVersionMajor:q,httpVersionMinor:V}=m;if(lt(W)?x.request.http_version=W:("number"==typeof q&&"number"==typeof V||lt(q)&<(V))&&(x.request.http_version=`${q}.${V}`),y&&!m[at]){let u,e;i?(u=i.file||i.request.file||i.req.file,e=i.files||i.request.files||i.req.files):r&&(u=r.file,e=r.files),"object"==typeof u&&(x.request.file=Ye(n(pt(u,b)))),"object"==typeof e&&(x.request.files=Ye(n(pt(e,b))))}return x.duration=R(eu(e)).milliseconds,x}}));