-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.umd.js
3 lines (3 loc) · 398 KB
/
index.umd.js
1
2
3
/*! For license information please see index.umd.js.LICENSE.txt */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("cornerstone-core"),require("dcmjs"),require("cornerstone-tools"),require("cornerstone-math"),require("dicom-parser"),require("cornerstone-wado-image-loader")):"function"==typeof define&&define.amd?define(["cornerstone-core","dcmjs","cornerstone-tools","cornerstone-math","dicom-parser","cornerstone-wado-image-loader"],t):"object"==typeof exports?exports.viewerCore=t(require("cornerstone-core"),require("dcmjs"),require("cornerstone-tools"),require("cornerstone-math"),require("dicom-parser"),require("cornerstone-wado-image-loader")):e.viewerCore=t(e["cornerstone-core"],e.dcmjs,e["cornerstone-tools"],e["cornerstone-math"],e["dicom-parser"],e["cornerstone-wado-image-loader"])}(window,(function(e,t,r,n,a,i){return function(e){function t(t){for(var r,a,i=t[0],o=t[1],s=0,c=[];s<i.length;s++)a=i[s],Object.prototype.hasOwnProperty.call(n,a)&&n[a]&&c.push(n[a][0]),n[a]=0;for(r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r]);for(u&&u(t);c.length;)c.shift()()}var r={},n={0:0};function a(t){if(r[t])return r[t].exports;var n=r[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=e,a.c=r,a.d=function(e,t,r){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(a.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(r,n,function(t){return e[t]}.bind(null,n));return r},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a.oe=function(e){throw console.error(e),e};var i=window.webpackJsonpviewerCore=window.webpackJsonpviewerCore||[],o=i.push.bind(i);i.push=t,i=i.slice();for(var s=0;s<i.length;s++)t(i[s]);var u=o;return a(a.s=268)}([function(e,t){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t){function r(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}e.exports=function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}},function(e,t,r){e.exports=r(119)},function(e,t){function r(t){return e.exports=r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)},r(t)}e.exports=r},function(e,t){e.exports=function(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}},function(e,t){function r(e,t,r,n,a,i,o){try{var s=e[i](o),u=s.value}catch(e){return void r(e)}s.done?t(u):Promise.resolve(u).then(n,a)}e.exports=function(e){return function(){var t=this,n=arguments;return new Promise((function(a,i){var o=e.apply(t,n);function s(e){r(o,a,i,s,u,"next",e)}function u(e){r(o,a,i,s,u,"throw",e)}s(void 0)}))}}},function(e,t,r){var n=r(44);e.exports=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&n(e,t)}},function(t,r){t.exports=e},function(e,t,r){var n=r(9),a=r(22);e.exports=function(e,t){return!t||"object"!==n(t)&&"function"!=typeof t?a(e):t}},function(e,t){function r(t){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?e.exports=r=function(e){return typeof e}:e.exports=r=function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},r(t)}e.exports=r},function(e,t,r){var n=r(116),a=r(117),i=r(68),o=r(118);e.exports=function(e){return n(e)||a(e)||i(e)||o()}},function(e,t,r){var n=r(127);e.exports=function(e){return n(e,5)}},function(e,r){e.exports=t},function(e,t,r){var n=r(113),a=r(114),i=r(68),o=r(115);e.exports=function(e,t){return n(e)||a(e,t)||i(e,t)||o()}},function(e,t,r){var n=r(71),a="object"==typeof self&&self&&self.Object===Object&&self,i=n||a||Function("return this")();e.exports=i},function(e,t){var r=Array.isArray;e.exports=r},function(e,t){e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},function(e,t){e.exports=function(e){return null!=e&&"object"==typeof e}},function(e,t){e.exports=r},function(e,t,r){(function(e){(function(e,t,n){"use strict";var a=function(e,t,r){r=i.extend({},i.options,r);var n=i.runValidations(e,t,r);if(n.some((function(e){return i.isPromise(e.error)})))throw new Error("Use validate.async if you want support for promises");return a.processValidationResults(n,r)},i=a;i.extend=function(e){return[].slice.call(arguments,1).forEach((function(t){for(var r in t)e[r]=t[r]})),e},i.extend(a,{version:{major:0,minor:12,patch:0,metadata:null,toString:function(){var e=i.format("%{major}.%{minor}.%{patch}",i.version);return i.isEmpty(i.version.metadata)||(e+="+"+i.version.metadata),e}},Promise:"undefined"!=typeof Promise?Promise:null,EMPTY_STRING_REGEXP:/^\s*$/,runValidations:function(e,t,r){var n,a,o,s,u,c,l,f=[];for(n in(i.isDomElement(e)||i.isJqueryElement(e))&&(e=i.collectFormValues(e)),t)for(a in o=i.getDeepObjectValue(e,n),s=i.result(t[n],o,e,n,r,t)){if(!(u=i.validators[a]))throw l=i.format("Unknown validator %{name}",{name:a}),new Error(l);c=s[a],(c=i.result(c,o,e,n,r,t))&&f.push({attribute:n,value:o,validator:a,globalOptions:r,attributes:e,options:c,error:u.call(u,o,c,n,e,r)})}return f},processValidationResults:function(e,t){e=i.pruneEmptyErrors(e,t),e=i.expandMultipleErrors(e,t),e=i.convertErrorMessages(e,t);var r=t.format||"grouped";if("function"!=typeof i.formatters[r])throw new Error(i.format("Unknown format %{format}",t));return e=i.formatters[r](e),i.isEmpty(e)?void 0:e},async:function(e,t,r){var n=(r=i.extend({},i.async.options,r)).wrapErrors||function(e){return e};!1!==r.cleanAttributes&&(e=i.cleanAttributes(e,t));var a=i.runValidations(e,t,r);return new i.Promise((function(o,s){i.waitForResults(a).then((function(){var u=i.processValidationResults(a,r);u?s(new n(u,r,e,t)):o(e)}),(function(e){s(e)}))}))},single:function(e,t,r){return r=i.extend({},i.single.options,r,{format:"flat",fullMessages:!1}),i({single:e},{single:t},r)},waitForResults:function(e){return e.reduce((function(e,t){return i.isPromise(t.error)?e.then((function(){return t.error.then((function(e){t.error=e||null}))})):e}),new i.Promise((function(e){e()})))},result:function(e){var t=[].slice.call(arguments,1);return"function"==typeof e&&(e=e.apply(null,t)),e},isNumber:function(e){return"number"==typeof e&&!isNaN(e)},isFunction:function(e){return"function"==typeof e},isInteger:function(e){return i.isNumber(e)&&e%1==0},isBoolean:function(e){return"boolean"==typeof e},isObject:function(e){return e===Object(e)},isDate:function(e){return e instanceof Date},isDefined:function(e){return null!=e},isPromise:function(e){return!!e&&i.isFunction(e.then)},isJqueryElement:function(e){return e&&i.isString(e.jquery)},isDomElement:function(e){return!!e&&(!(!e.querySelectorAll||!e.querySelector)&&(!(!i.isObject(document)||e!==document)||("object"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName)))},isEmpty:function(e){var t;if(!i.isDefined(e))return!0;if(i.isFunction(e))return!1;if(i.isString(e))return i.EMPTY_STRING_REGEXP.test(e);if(i.isArray(e))return 0===e.length;if(i.isDate(e))return!1;if(i.isObject(e)){for(t in e)return!1;return!0}return!1},format:i.extend((function(e,t){return i.isString(e)?e.replace(i.format.FORMAT_REGEXP,(function(e,r,n){return"%"===r?"%{"+n+"}":String(t[n])})):e}),{FORMAT_REGEXP:/(%?)%\{([^\}]+)\}/g}),prettify:function(e){return i.isNumber(e)?100*e%1==0?""+e:parseFloat(Math.round(100*e)/100).toFixed(2):i.isArray(e)?e.map((function(e){return i.prettify(e)})).join(", "):i.isObject(e)?e.toString():(e=""+e).replace(/([^\s])\.([^\s])/g,"$1 $2").replace(/\\+/g,"").replace(/[_-]/g," ").replace(/([a-z])([A-Z])/g,(function(e,t,r){return t+" "+r.toLowerCase()})).toLowerCase()},stringifyValue:function(e,t){return(t&&t.prettify||i.prettify)(e)},isString:function(e){return"string"==typeof e},isArray:function(e){return"[object Array]"==={}.toString.call(e)},isHash:function(e){return i.isObject(e)&&!i.isArray(e)&&!i.isFunction(e)},contains:function(e,t){return!!i.isDefined(e)&&(i.isArray(e)?-1!==e.indexOf(t):t in e)},unique:function(e){return i.isArray(e)?e.filter((function(e,t,r){return r.indexOf(e)==t})):e},forEachKeyInKeypath:function(e,t,r){if(i.isString(t)){var n,a="",o=!1;for(n=0;n<t.length;++n)switch(t[n]){case".":o?(o=!1,a+="."):(e=r(e,a,!1),a="");break;case"\\":o?(o=!1,a+="\\"):o=!0;break;default:o=!1,a+=t[n]}return r(e,a,!0)}},getDeepObjectValue:function(e,t){if(i.isObject(e))return i.forEachKeyInKeypath(e,t,(function(e,t){if(i.isObject(e))return e[t]}))},collectFormValues:function(e,t){var r,n,a,o,s,u,c={};if(i.isJqueryElement(e)&&(e=e[0]),!e)return c;for(t=t||{},o=e.querySelectorAll("input[name], textarea[name]"),r=0;r<o.length;++r)a=o.item(r),i.isDefined(a.getAttribute("data-ignored"))||(name=a.name.replace(/\./g,"\\\\."),u=i.sanitizeFormValue(a.value,t),"number"===a.type?u=u?+u:null:"checkbox"===a.type?a.attributes.value?a.checked||(u=c[name]||null):u=a.checked:"radio"===a.type&&(a.checked||(u=c[name]||null)),c[name]=u);for(o=e.querySelectorAll("select[name]"),r=0;r<o.length;++r)if(a=o.item(r),!i.isDefined(a.getAttribute("data-ignored"))){if(a.multiple)for(n in u=[],a.options)(s=a.options[n])&&s.selected&&u.push(i.sanitizeFormValue(s.value,t));else{var l=void 0!==a.options[a.selectedIndex]?a.options[a.selectedIndex].value:"";u=i.sanitizeFormValue(l,t)}c[a.name]=u}return c},sanitizeFormValue:function(e,t){return t.trim&&i.isString(e)&&(e=e.trim()),!1!==t.nullify&&""===e?null:e},capitalize:function(e){return i.isString(e)?e[0].toUpperCase()+e.slice(1):e},pruneEmptyErrors:function(e){return e.filter((function(e){return!i.isEmpty(e.error)}))},expandMultipleErrors:function(e){var t=[];return e.forEach((function(e){i.isArray(e.error)?e.error.forEach((function(r){t.push(i.extend({},e,{error:r}))})):t.push(e)})),t},convertErrorMessages:function(e,t){var r=[],n=(t=t||{}).prettify||i.prettify;return e.forEach((function(e){var a=i.result(e.error,e.value,e.attribute,e.options,e.attributes,e.globalOptions);i.isString(a)?("^"===a[0]?a=a.slice(1):!1!==t.fullMessages&&(a=i.capitalize(n(e.attribute))+" "+a),a=a.replace(/\\\^/g,"^"),a=i.format(a,{value:i.stringifyValue(e.value,t)}),r.push(i.extend({},e,{error:a}))):r.push(e)})),r},groupErrorsByAttribute:function(e){var t={};return e.forEach((function(e){var r=t[e.attribute];r?r.push(e):t[e.attribute]=[e]})),t},flattenErrorsToArray:function(e){return e.map((function(e){return e.error})).filter((function(e,t,r){return r.indexOf(e)===t}))},cleanAttributes:function(e,t){function r(e,t,r){return i.isObject(e[t])?e[t]:e[t]=!!r||{}}return i.isObject(t)&&i.isObject(e)?function e(t,r){if(!i.isObject(t))return t;var n,a,o=i.extend({},t);for(a in t)n=r[a],i.isObject(n)?o[a]=e(o[a],n):n||delete o[a];return o}(e,t=function(e){var t,n={};for(t in e)e[t]&&i.forEachKeyInKeypath(n,t,r);return n}(t)):{}},exposeModule:function(e,t,r,n,a){r?(n&&n.exports&&(r=n.exports=e),r.validate=e):(t.validate=e,e.isFunction(a)&&a.amd&&a([],(function(){return e})))},warn:function(e){"undefined"!=typeof console&&console.warn&&console.warn("[validate.js] "+e)},error:function(e){"undefined"!=typeof console&&console.error&&console.error("[validate.js] "+e)}}),a.validators={presence:function(e,t){if(!1!==(t=i.extend({},this.options,t)).allowEmpty?!i.isDefined(e):i.isEmpty(e))return t.message||this.message||"can't be blank"},length:function(e,t,r){if(i.isDefined(e)){var n,a=(t=i.extend({},this.options,t)).is,o=t.maximum,s=t.minimum,u=[],c=(e=(t.tokenizer||function(e){return e})(e)).length;return i.isNumber(c)?(i.isNumber(a)&&c!==a&&(n=t.wrongLength||this.wrongLength||"is the wrong length (should be %{count} characters)",u.push(i.format(n,{count:a}))),i.isNumber(s)&&c<s&&(n=t.tooShort||this.tooShort||"is too short (minimum is %{count} characters)",u.push(i.format(n,{count:s}))),i.isNumber(o)&&c>o&&(n=t.tooLong||this.tooLong||"is too long (maximum is %{count} characters)",u.push(i.format(n,{count:o}))),u.length>0?t.message||u:void 0):(i.error(i.format("Attribute %{attr} has a non numeric value for `length`",{attr:r})),t.message||this.notValid||"has an incorrect length")}},numericality:function(e,t,r,n,a){if(i.isDefined(e)){var o,s,u=[],c={greaterThan:function(e,t){return e>t},greaterThanOrEqualTo:function(e,t){return e>=t},equalTo:function(e,t){return e===t},lessThan:function(e,t){return e<t},lessThanOrEqualTo:function(e,t){return e<=t},divisibleBy:function(e,t){return e%t==0}},l=(t=i.extend({},this.options,t)).prettify||a&&a.prettify||i.prettify;if(i.isString(e)&&t.strict){var f="^-?(0|[1-9]\\d*)";if(t.onlyInteger||(f+="(\\.\\d+)?"),f+="$",!new RegExp(f).test(e))return t.message||t.notValid||this.notValid||this.message||"must be a valid number"}if(!0!==t.noStrings&&i.isString(e)&&!i.isEmpty(e)&&(e=+e),!i.isNumber(e))return t.message||t.notValid||this.notValid||this.message||"is not a number";if(t.onlyInteger&&!i.isInteger(e))return t.message||t.notInteger||this.notInteger||this.message||"must be an integer";for(o in c)if(s=t[o],i.isNumber(s)&&!c[o](e,s)){var d="not"+i.capitalize(o),p=t[d]||this[d]||this.message||"must be %{type} %{count}";u.push(i.format(p,{count:s,type:l(o)}))}return t.odd&&e%2!=1&&u.push(t.notOdd||this.notOdd||this.message||"must be odd"),t.even&&e%2!=0&&u.push(t.notEven||this.notEven||this.message||"must be even"),u.length?t.message||u:void 0}},datetime:i.extend((function(e,t){if(!i.isFunction(this.parse)||!i.isFunction(this.format))throw new Error("Both the parse and format functions needs to be set to use the datetime/date validator");if(i.isDefined(e)){var r,n=[],a=(t=i.extend({},this.options,t)).earliest?this.parse(t.earliest,t):NaN,o=t.latest?this.parse(t.latest,t):NaN;return e=this.parse(e,t),isNaN(e)||t.dateOnly&&e%864e5!=0?(r=t.notValid||t.message||this.notValid||"must be a valid date",i.format(r,{value:arguments[0]})):(!isNaN(a)&&e<a&&(r=t.tooEarly||t.message||this.tooEarly||"must be no earlier than %{date}",r=i.format(r,{value:this.format(e,t),date:this.format(a,t)}),n.push(r)),!isNaN(o)&&e>o&&(r=t.tooLate||t.message||this.tooLate||"must be no later than %{date}",r=i.format(r,{date:this.format(o,t),value:this.format(e,t)}),n.push(r)),n.length?i.unique(n):void 0)}}),{parse:null,format:null}),date:function(e,t){return t=i.extend({},t,{dateOnly:!0}),i.validators.datetime.call(i.validators.datetime,e,t)},format:function(e,t){(i.isString(t)||t instanceof RegExp)&&(t={pattern:t});var r,n=(t=i.extend({},this.options,t)).message||this.message||"is invalid",a=t.pattern;if(i.isDefined(e))return i.isString(e)?(i.isString(a)&&(a=new RegExp(t.pattern,t.flags)),(r=a.exec(e))&&r[0].length==e.length?void 0:n):n},inclusion:function(e,t){if(i.isDefined(e)&&(i.isArray(t)&&(t={within:t}),t=i.extend({},this.options,t),!i.contains(t.within,e))){var r=t.message||this.message||"^%{value} is not included in the list";return i.format(r,{value:e})}},exclusion:function(e,t){if(i.isDefined(e)&&(i.isArray(t)&&(t={within:t}),t=i.extend({},this.options,t),i.contains(t.within,e))){var r=t.message||this.message||"^%{value} is restricted";return i.format(r,{value:e})}},email:i.extend((function(e,t){var r=(t=i.extend({},this.options,t)).message||this.message||"is not a valid email";if(i.isDefined(e))return i.isString(e)&&this.PATTERN.exec(e)?void 0:r}),{PATTERN:/^[a-z0-9\u007F-\uffff!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9\u007F-\uffff!#$%&'*+\/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z]{2,}$/i}),equality:function(e,t,r,n,a){if(i.isDefined(e)){i.isString(t)&&(t={attribute:t});var o=(t=i.extend({},this.options,t)).message||this.message||"is not equal to %{attribute}";if(i.isEmpty(t.attribute)||!i.isString(t.attribute))throw new Error("The attribute must be a non empty string");var s=i.getDeepObjectValue(n,t.attribute),u=t.comparator||function(e,t){return e===t},c=t.prettify||a&&a.prettify||i.prettify;return u(e,s,t,r,n)?void 0:i.format(o,{attribute:c(t.attribute)})}},url:function(e,t){if(i.isDefined(e)){var r=(t=i.extend({},this.options,t)).message||this.message||"is not a valid url",n=t.schemes||this.schemes||["http","https"],a=t.allowLocal||this.allowLocal||!1;if(!i.isString(e))return r;var o="^(?:(?:"+n.join("|")+")://)(?:\\S+(?::\\S*)?@)?(?:",s="(?:\\.(?:[a-z\\u00a1-\\uffff]{2,}))";return a?s+="?":o+="(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})",o+="(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]-*)*[a-z\\u00a1-\\uffff0-9]+)*"+s+")(?::\\d{2,5})?(?:[/?#]\\S*)?$",new RegExp(o,"i").exec(e)?void 0:r}}},a.formatters={detailed:function(e){return e},flat:i.flattenErrorsToArray,grouped:function(e){var t;for(t in e=i.groupErrorsByAttribute(e))e[t]=i.flattenErrorsToArray(e[t]);return e},constraint:function(e){var t;for(t in e=i.groupErrorsByAttribute(e))e[t]=e[t].map((function(e){return e.validator})).sort();return e}},a.exposeModule(a,this,e,t,r(106))}).call(this,t,e,r(106))}).call(this,r(36)(e))},,function(e,t,r){var n=r(138),a=r(144);e.exports=function(e,t){var r=a(e,t);return n(r)?r:void 0}},function(e,t){e.exports=function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}},function(e,t,r){var n=r(26),a=r(140),i=r(141),o=n?n.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":o&&o in Object(e)?a(e):i(e)}},function(e,t,r){"use strict";function n(e,t,r){var n=r?" !== ":" === ",a=r?" || ":" && ",i=r?"!":"",o=r?"":"!";switch(e){case"null":return t+n+"null";case"array":return i+"Array.isArray("+t+")";case"object":return"("+i+t+a+"typeof "+t+n+'"object"'+a+o+"Array.isArray("+t+"))";case"integer":return"(typeof "+t+n+'"number"'+a+o+"("+t+" % 1)"+a+t+n+t+")";default:return"typeof "+t+n+'"'+e+'"'}}e.exports={copy:function(e,t){for(var r in t=t||{},e)t[r]=e[r];return t},checkDataType:n,checkDataTypes:function(e,t){switch(e.length){case 1:return n(e[0],t,!0);default:var r="",a=i(e);for(var o in a.array&&a.object&&(r=a.null?"(":"(!"+t+" || ",r+="typeof "+t+' !== "object")',delete a.null,delete a.array,delete a.object),a.number&&delete a.integer,a)r+=(r?" && ":"")+n(o,t,!0);return r}},coerceToTypes:function(e,t){if(Array.isArray(t)){for(var r=[],n=0;n<t.length;n++){var i=t[n];(a[i]||"array"===e&&"array"===i)&&(r[r.length]=i)}if(r.length)return r}else{if(a[t])return[t];if("array"===e&&"array"===t)return["array"]}},toHash:i,getProperty:u,escapeQuotes:c,equal:r(64),ucs2length:r(237),varOccurences:function(e,t){t+="[^0-9]";var r=e.match(new RegExp(t,"g"));return r?r.length:0},varReplace:function(e,t,r){return t+="([^0-9])",r=r.replace(/\$/g,"$$$$"),e.replace(new RegExp(t,"g"),r+"$1")},cleanUpCode:function(e){return e.replace(l,"").replace(f,"").replace(d,"if (!($1))")},finalCleanUpCode:function(e,t){var r=e.match(p);r&&2==r.length&&(e=t?e.replace(m,"").replace(v,"return data;"):e.replace(h,"").replace("return errors === 0;","validate.errors = null; return true;"));return(r=e.match(y))&&3===r.length?e.replace(g,""):e},schemaHasRules:function(e,t){if("boolean"==typeof e)return!e;for(var r in e)if(t[r])return!0},schemaHasRulesExcept:function(e,t,r){if("boolean"==typeof e)return!e&&"not"!=r;for(var n in e)if(n!=r&&t[n])return!0},schemaUnknownRules:function(e,t){if("boolean"==typeof e)return;for(var r in e)if(!t[r])return r},toQuotedString:b,getPathExpr:function(e,t,r,n){return S(e,r?"'/' + "+t+(n?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):n?"'[' + "+t+" + ']'":"'[\\'' + "+t+" + '\\']'")},getPath:function(e,t,r){var n=b(r?"/"+P(t):u(t));return S(e,n)},getData:function(e,t,r){var n,a,i,o;if(""===e)return"rootData";if("/"==e[0]){if(!I.test(e))throw new Error("Invalid JSON-pointer: "+e);a=e,i="rootData"}else{if(!(o=e.match(w)))throw new Error("Invalid JSON-pointer: "+e);if(n=+o[1],"#"==(a=o[2])){if(n>=t)throw new Error("Cannot access property/index "+n+" levels up, current level is "+t);return r[t-n]}if(n>t)throw new Error("Cannot access data "+n+" levels up, current level is "+t);if(i="data"+(t-n||""),!a)return i}for(var s=i,c=a.split("/"),l=0;l<c.length;l++){var f=c[l];f&&(i+=u(D(f)),s+=" && "+i)}return s},unescapeFragment:function(e){return D(decodeURIComponent(e))},unescapeJsonPointer:D,escapeFragment:function(e){return encodeURIComponent(P(e))},escapeJsonPointer:P};var a=i(["string","number","integer","boolean","null"]);function i(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=!0;return t}var o=/^[a-z$_][a-z$_0-9]*$/i,s=/'|\\/g;function u(e){return"number"==typeof e?"["+e+"]":o.test(e)?"."+e:"['"+c(e)+"']"}function c(e){return e.replace(s,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}var l=/else\s*{\s*}/g,f=/if\s*\([^)]+\)\s*\{\s*\}(?!\s*else)/g,d=/if\s*\(([^)]+)\)\s*\{\s*\}\s*else(?!\s*if)/g;var p=/[^v.]errors/g,h=/var errors = 0;|var vErrors = null;|validate.errors = vErrors;/g,m=/var errors = 0;|var vErrors = null;/g,v=/if \(errors === 0\) return data;\s*else throw new ValidationError\(vErrors\);/,y=/[^A-Za-z_$]rootData[^A-Za-z0-9_$]/g,g=/if \(rootData === undefined\) rootData = data;/;function b(e){return"'"+c(e)+"'"}var I=/^\/(?:[^~]|~0|~1)*$/,w=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function S(e,t){return'""'==e?t:(e+" + "+t).replace(/' \+ '/g,"")}function P(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function D(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}},function(e,t){e.exports=function(e,t){return e===t||e!=e&&t!=t}},function(e,t,r){var n=r(14).Symbol;e.exports=n},function(e,t,r){var n=r(73),a=r(48);e.exports=function(e,t,r,i){var o=!r;r||(r={});for(var s=-1,u=t.length;++s<u;){var c=t[s],l=i?i(r[c],e[c],c,r,e):void 0;void 0===l&&(l=e[c]),o?a(r,c,l):n(r,c,l)}return r}},function(e,t){e.exports=n},function(e,t,r){var n=r(30),a=r(133),i=r(134),o=r(135),s=r(136),u=r(137);function c(e){var t=this.__data__=new n(e);this.size=t.size}c.prototype.clear=a,c.prototype.delete=i,c.prototype.get=o,c.prototype.has=s,c.prototype.set=u,e.exports=c},function(e,t,r){var n=r(128),a=r(129),i=r(130),o=r(131),s=r(132);function u(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}u.prototype.clear=n,u.prototype.delete=a,u.prototype.get=i,u.prototype.has=o,u.prototype.set=s,e.exports=u},function(e,t,r){var n=r(25);e.exports=function(e,t){for(var r=e.length;r--;)if(n(e[r][0],t))return r;return-1}},function(e,t,r){var n=r(21)(Object,"create");e.exports=n},function(e,t,r){var n=r(153);e.exports=function(e,t){var r=e.__data__;return n(t)?r["string"==typeof t?"string":"hash"]:r.map}},function(e,t,r){var n=r(75),a=r(163),i=r(37);e.exports=function(e){return i(e)?n(e):a(e)}},function(e,t,r){(function(e){var n=r(14),a=r(161),i=t&&!t.nodeType&&t,o=i&&"object"==typeof e&&e&&!e.nodeType&&e,s=o&&o.exports===i?n.Buffer:void 0,u=(s?s.isBuffer:void 0)||a;e.exports=u}).call(this,r(36)(e))},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){var n=r(46),a=r(52);e.exports=function(e){return null!=e&&a(e.length)&&!n(e)}},function(e,t,r){var n=r(75),a=r(166),i=r(37);e.exports=function(e){return i(e)?n(e,!0):a(e)}},function(e,t,r){var n=r(172),a=r(45),i=r(173),o=r(84),s=r(174),u=r(23),c=r(72),l=c(n),f=c(a),d=c(i),p=c(o),h=c(s),m=u;(n&&"[object DataView]"!=m(new n(new ArrayBuffer(1)))||a&&"[object Map]"!=m(new a)||i&&"[object Promise]"!=m(i.resolve())||o&&"[object Set]"!=m(new o)||s&&"[object WeakMap]"!=m(new s))&&(m=function(e){var t=u(e),r="[object Object]"==t?e.constructor:void 0,n=r?c(r):"";if(n)switch(n){case l:return"[object DataView]";case f:return"[object Map]";case d:return"[object Promise]";case p:return"[object Set]";case h:return"[object WeakMap]"}return t}),e.exports=m},function(e,t,r){var n=r(61);e.exports=function(e){if("string"==typeof e||n(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},function(e,t,r){"use strict";const n=r(120),a=r(121),i=r(122);function o(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function s(e,t){return t.encode?t.strict?n(e):encodeURIComponent(e):e}function u(e,t){return t.decode?a(e):e}function c(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function l(e){const t=(e=c(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function f(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function d(e,t){o((t=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},t)).arrayFormatSeparator);const r=function(e){let t;switch(e.arrayFormat){case"index":return(e,r,n)=>{t=/\[(\d*)\]$/.exec(e),e=e.replace(/\[\d*\]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=r):n[e]=r};case"bracket":return(e,r,n)=>{t=/(\[\])$/.exec(e),e=e.replace(/\[\]$/,""),t?void 0!==n[e]?n[e]=[].concat(n[e],r):n[e]=[r]:n[e]=r};case"comma":case"separator":return(t,r,n)=>{const a="string"==typeof r&&r.split("").indexOf(e.arrayFormatSeparator)>-1?r.split(e.arrayFormatSeparator).map(t=>u(t,e)):null===r?r:u(r,e);n[t]=a};default:return(e,t,r)=>{void 0!==r[e]?r[e]=[].concat(r[e],t):r[e]=t}}}(t),n=Object.create(null);if("string"!=typeof e)return n;if(!(e=e.trim().replace(/^[?#&]/,"")))return n;for(const a of e.split("&")){let[e,o]=i(t.decode?a.replace(/\+/g," "):a,"=");o=void 0===o?null:["comma","separator"].includes(t.arrayFormat)?o:u(o,t),r(u(e,t),o,n)}for(const e of Object.keys(n)){const r=n[e];if("object"==typeof r&&null!==r)for(const e of Object.keys(r))r[e]=f(r[e],t);else n[e]=f(r,t)}return!1===t.sort?n:(!0===t.sort?Object.keys(n).sort():Object.keys(n).sort(t.sort)).reduce((e,t)=>{const r=n[t];return Boolean(r)&&"object"==typeof r&&!Array.isArray(r)?e[t]=function e(t){return Array.isArray(t)?t.sort():"object"==typeof t?e(Object.keys(t)).sort((e,t)=>Number(e)-Number(t)).map(e=>t[e]):t}(r):e[t]=r,e},Object.create(null))}t.extract=l,t.parse=d,t.stringify=(e,t)=>{if(!e)return"";o((t=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},t)).arrayFormatSeparator);const r=r=>t.skipNull&&null==e[r]||t.skipEmptyString&&""===e[r],n=function(e){switch(e.arrayFormat){case"index":return t=>(r,n)=>{const a=r.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,[s(t,e),"[",a,"]"].join("")]:[...r,[s(t,e),"[",s(a,e),"]=",s(n,e)].join("")]};case"bracket":return t=>(r,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,[s(t,e),"[]"].join("")]:[...r,[s(t,e),"[]=",s(n,e)].join("")];case"comma":case"separator":return t=>(r,n)=>null==n||0===n.length?r:0===r.length?[[s(t,e),"=",s(n,e)].join("")]:[[r,s(n,e)].join(e.arrayFormatSeparator)];default:return t=>(r,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,s(t,e)]:[...r,[s(t,e),"=",s(n,e)].join("")]}}(t),a={};for(const t of Object.keys(e))r(t)||(a[t]=e[t]);const i=Object.keys(a);return!1!==t.sort&&i.sort(t.sort),i.map(r=>{const a=e[r];return void 0===a?"":null===a?s(r,t):Array.isArray(a)?a.reduce(n(r),[]).join("&"):s(r,t)+"="+s(a,t)}).filter(e=>e.length>0).join("&")},t.parseUrl=(e,t)=>({url:c(e).split("?")[0]||"",query:d(l(e),t)}),t.stringifyUrl=(e,r)=>{const n=c(e.url).split("?")[0]||"",a=t.extract(e.url),i=t.parse(a),o=function(e){let t="";const r=e.indexOf("#");return-1!==r&&(t=e.slice(r)),t}(e.url),s=Object.assign(i,e.query);let u=t.stringify(s,r);return u&&(u="?"+u),`${n}${u}${o}`}},function(e,t,r){var n;!function(a,i,o){if(a){for(var s,u={8:"backspace",9:"tab",13:"enter",16:"shift",17:"ctrl",18:"alt",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"ins",46:"del",91:"meta",93:"meta",224:"meta"},c={106:"*",107:"+",109:"-",110:".",111:"/",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},l={"~":"`","!":"1","@":"2","#":"3",$:"4","%":"5","^":"6","&":"7","*":"8","(":"9",")":"0",_:"-","+":"=",":":";",'"':"'","<":",",">":".","?":"/","|":"\\"},f={option:"alt",command:"meta",return:"enter",escape:"esc",plus:"+",mod:/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"meta":"ctrl"},d=1;d<20;++d)u[111+d]="f"+d;for(d=0;d<=9;++d)u[d+96]=d.toString();g.prototype.bind=function(e,t,r){return e=e instanceof Array?e:[e],this._bindMultiple.call(this,e,t,r),this},g.prototype.unbind=function(e,t){return this.bind.call(this,e,(function(){}),t)},g.prototype.trigger=function(e,t){return this._directMap[e+":"+t]&&this._directMap[e+":"+t]({},e),this},g.prototype.reset=function(){return this._callbacks={},this._directMap={},this},g.prototype.stopCallback=function(e,t){if((" "+t.className+" ").indexOf(" mousetrap ")>-1)return!1;if(function e(t,r){return null!==t&&t!==i&&(t===r||e(t.parentNode,r))}(t,this.target))return!1;if("composedPath"in e&&"function"==typeof e.composedPath){var r=e.composedPath()[0];r!==e.target&&(t=r)}return"INPUT"==t.tagName||"SELECT"==t.tagName||"TEXTAREA"==t.tagName||t.isContentEditable},g.prototype.handleKey=function(){var e=this;return e._handleKey.apply(e,arguments)},g.addKeycodes=function(e){for(var t in e)e.hasOwnProperty(t)&&(u[t]=e[t]);s=null},g.init=function(){var e=g(i);for(var t in e)"_"!==t.charAt(0)&&(g[t]=function(t){return function(){return e[t].apply(e,arguments)}}(t))},g.init(),a.Mousetrap=g,e.exports&&(e.exports=g),void 0===(n=function(){return g}.call(t,r,t,e))||(e.exports=n)}function p(e,t,r){e.addEventListener?e.addEventListener(t,r,!1):e.attachEvent("on"+t,r)}function h(e){if("keypress"==e.type){var t=String.fromCharCode(e.which);return e.shiftKey||(t=t.toLowerCase()),t}return u[e.which]?u[e.which]:c[e.which]?c[e.which]:String.fromCharCode(e.which).toLowerCase()}function m(e){return"shift"==e||"ctrl"==e||"alt"==e||"meta"==e}function v(e,t,r){return r||(r=function(){if(!s)for(var e in s={},u)e>95&&e<112||u.hasOwnProperty(e)&&(s[u[e]]=e);return s}()[e]?"keydown":"keypress"),"keypress"==r&&t.length&&(r="keydown"),r}function y(e,t){var r,n,a,i=[];for(r=function(e){return"+"===e?["+"]:(e=e.replace(/\+{2}/g,"+plus")).split("+")}(e),a=0;a<r.length;++a)n=r[a],f[n]&&(n=f[n]),t&&"keypress"!=t&&l[n]&&(n=l[n],i.push("shift")),m(n)&&i.push(n);return{key:n,modifiers:i,action:t=v(n,i,t)}}function g(e){var t=this;if(e=e||i,!(t instanceof g))return new g(e);t.target=e,t._callbacks={},t._directMap={};var r,n={},a=!1,o=!1,s=!1;function u(e){e=e||{};var t,r=!1;for(t in n)e[t]?r=!0:n[t]=0;r||(s=!1)}function c(e,r,a,i,o,s){var u,c,l,f,d=[],p=a.type;if(!t._callbacks[e])return[];for("keyup"==p&&m(e)&&(r=[e]),u=0;u<t._callbacks[e].length;++u)if(c=t._callbacks[e][u],(i||!c.seq||n[c.seq]==c.level)&&p==c.action&&("keypress"==p&&!a.metaKey&&!a.ctrlKey||(l=r,f=c.modifiers,l.sort().join(",")===f.sort().join(",")))){var h=!i&&c.combo==o,v=i&&c.seq==i&&c.level==s;(h||v)&&t._callbacks[e].splice(u,1),d.push(c)}return d}function l(e,r,n,a){t.stopCallback(r,r.target||r.srcElement,n,a)||!1===e(r,n)&&(function(e){e.preventDefault?e.preventDefault():e.returnValue=!1}(r),function(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}(r))}function f(e){"number"!=typeof e.which&&(e.which=e.keyCode);var r=h(e);r&&("keyup"!=e.type||a!==r?t.handleKey(r,function(e){var t=[];return e.shiftKey&&t.push("shift"),e.altKey&&t.push("alt"),e.ctrlKey&&t.push("ctrl"),e.metaKey&&t.push("meta"),t}(e),e):a=!1)}function d(e,t,i,o){function c(t){return function(){s=t,++n[e],clearTimeout(r),r=setTimeout(u,1e3)}}function f(t){l(i,t,e),"keyup"!==o&&(a=h(t)),setTimeout(u,10)}n[e]=0;for(var d=0;d<t.length;++d){var p=d+1===t.length?f:c(o||y(t[d+1]).action);v(t[d],p,o,e,d)}}function v(e,r,n,a,i){t._directMap[e+":"+n]=r;var o,s=(e=e.replace(/\s+/g," ")).split(" ");s.length>1?d(e,s,r,n):(o=y(e,n),t._callbacks[o.key]=t._callbacks[o.key]||[],c(o.key,o.modifiers,{type:o.action},a,e,i),t._callbacks[o.key][a?"unshift":"push"]({callback:r,modifiers:o.modifiers,action:o.action,seq:a,level:i,combo:e}))}t._handleKey=function(e,t,r){var n,a=c(e,t,r),i={},f=0,d=!1;for(n=0;n<a.length;++n)a[n].seq&&(f=Math.max(f,a[n].level));for(n=0;n<a.length;++n)if(a[n].seq){if(a[n].level!=f)continue;d=!0,i[a[n].seq]=1,l(a[n].callback,r,a[n].combo,a[n].seq)}else d||l(a[n].callback,r,a[n].combo);var p="keypress"==r.type&&o;r.type!=s||m(e)||p||u(i),o=d&&"keydown"==r.type},t._bindMultiple=function(e,t,r){for(var n=0;n<e.length;++n)v(e[n],t,r)},p(e,"keypress",f),p(e,"keydown",f),p(e,"keyup",f)}}("undefined"!=typeof window?window:null,"undefined"!=typeof window?document:null)},function(e,t){e.exports=a},function(e,t){function r(t,n){return e.exports=r=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e},r(t,n)}e.exports=r},function(e,t,r){var n=r(21)(r(14),"Map");e.exports=n},function(e,t,r){var n=r(23),a=r(16);e.exports=function(e){if(!a(e))return!1;var t=n(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},function(e,t,r){var n=r(145),a=r(152),i=r(154),o=r(155),s=r(156);function u(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}u.prototype.clear=n,u.prototype.delete=a,u.prototype.get=i,u.prototype.has=o,u.prototype.set=s,e.exports=u},function(e,t,r){var n=r(74);e.exports=function(e,t,r){"__proto__"==t&&n?n(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}},function(e,t,r){var n=r(160),a=r(17),i=Object.prototype,o=i.hasOwnProperty,s=i.propertyIsEnumerable,u=n(function(){return arguments}())?n:function(e){return a(e)&&o.call(e,"callee")&&!s.call(e,"callee")};e.exports=u},function(e,t){var r=/^(?:0|[1-9]\d*)$/;e.exports=function(e,t){var n=typeof e;return!!(t=null==t?9007199254740991:t)&&("number"==n||"symbol"!=n&&r.test(e))&&e>-1&&e%1==0&&e<t}},function(e,t,r){var n=r(162),a=r(53),i=r(54),o=i&&i.isTypedArray,s=o?a(o):n;e.exports=s},function(e,t){e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},function(e,t){e.exports=function(e){return function(t){return e(t)}}},function(e,t,r){(function(e){var n=r(71),a=t&&!t.nodeType&&t,i=a&&"object"==typeof e&&e&&!e.nodeType&&e,o=i&&i.exports===a&&n.process,s=function(){try{var e=i&&i.require&&i.require("util").types;return e||o&&o.binding&&o.binding("util")}catch(e){}}();e.exports=s}).call(this,r(36)(e))},function(e,t){var r=Object.prototype;e.exports=function(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||r)}},function(e,t,r){var n=r(169),a=r(79),i=Object.prototype.propertyIsEnumerable,o=Object.getOwnPropertySymbols,s=o?function(e){return null==e?[]:(e=Object(e),n(o(e),(function(t){return i.call(e,t)})))}:a;e.exports=s},function(e,t,r){var n=r(76)(Object.getPrototypeOf,Object);e.exports=n},function(e,t,r){var n=r(85);e.exports=function(e){var t=new e.constructor(e.byteLength);return new n(t).set(new n(e)),t}},function(e,t){e.exports=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}},function(e,t,r){var n=r(15),a=r(61),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,o=/^\w*$/;e.exports=function(e,t){if(n(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!a(e))||(o.test(e)||!i.test(e)||null!=t&&e in Object(t))}},function(e,t,r){var n=r(23),a=r(17);e.exports=function(e){return"symbol"==typeof e||a(e)&&"[object Symbol]"==n(e)}},function(e,t){e.exports=function(e){return e}},function(e,t,r){"use strict";var n=r(236),a=r(64),i=r(24),o=r(98),s=r(238);function u(e,t,r){var n=this._refs[r];if("string"==typeof n){if(!this._refs[n])return u.call(this,e,t,n);n=this._refs[n]}if((n=n||this._schemas[r])instanceof o)return h(n.schema,this._opts.inlineRefs)?n.schema:n.validate||this._compile(n);var a,i,s,l=c.call(this,t,r);return l&&(a=l.schema,t=l.root,s=l.baseId),a instanceof o?i=a.validate||e.call(this,a.schema,t,void 0,s):void 0!==a&&(i=h(a,this._opts.inlineRefs)?a:e.call(this,a,t,void 0,s)),i}function c(e,t){var r=n.parse(t),a=v(r),i=m(this._getId(e.schema));if(0===Object.keys(e.schema).length||a!==i){var s=g(a),u=this._refs[s];if("string"==typeof u)return l.call(this,e,u,r);if(u instanceof o)u.validate||this._compile(u),e=u;else{if(!((u=this._schemas[s])instanceof o))return;if(u.validate||this._compile(u),s==g(t))return{schema:u,root:e,baseId:i};e=u}if(!e.schema)return;i=m(this._getId(e.schema))}return d.call(this,r,i,e.schema,e)}function l(e,t,r){var n=c.call(this,e,t);if(n){var a=n.schema,i=n.baseId;e=n.root;var o=this._getId(a);return o&&(i=b(i,o)),d.call(this,r,i,a,e)}}e.exports=u,u.normalizeId=g,u.fullPath=m,u.url=b,u.ids=function(e){var t=g(this._getId(e)),r={"":t},o={"":m(t,!1)},u={},c=this;return s(e,{allKeys:!0},(function(e,t,s,l,f,d,p){if(""!==t){var h=c._getId(e),m=r[l],v=o[l]+"/"+f;if(void 0!==p&&(v+="/"+("number"==typeof p?p:i.escapeFragment(p))),"string"==typeof h){h=m=g(m?n.resolve(m,h):h);var y=c._refs[h];if("string"==typeof y&&(y=c._refs[y]),y&&y.schema){if(!a(e,y.schema))throw new Error('id "'+h+'" resolves to more than one schema')}else if(h!=g(v))if("#"==h[0]){if(u[h]&&!a(e,u[h]))throw new Error('id "'+h+'" resolves to more than one schema');u[h]=e}else c._refs[h]=v}r[t]=m,o[t]=v}})),u},u.inlineRef=h,u.schema=c;var f=i.toHash(["properties","patternProperties","enum","dependencies","definitions"]);function d(e,t,r,n){if(e.fragment=e.fragment||"","/"==e.fragment.slice(0,1)){for(var a=e.fragment.split("/"),o=1;o<a.length;o++){var s=a[o];if(s){if(void 0===(r=r[s=i.unescapeFragment(s)]))break;var u;if(!f[s]&&((u=this._getId(r))&&(t=b(t,u)),r.$ref)){var l=b(t,r.$ref),d=c.call(this,n,l);d&&(r=d.schema,n=d.root,t=d.baseId)}}}return void 0!==r&&r!==n.schema?{schema:r,root:n,baseId:t}:void 0}}var p=i.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]);function h(e,t){return!1!==t&&(void 0===t||!0===t?function e(t){var r;if(Array.isArray(t)){for(var n=0;n<t.length;n++)if("object"==typeof(r=t[n])&&!e(r))return!1}else for(var a in t){if("$ref"==a)return!1;if("object"==typeof(r=t[a])&&!e(r))return!1}return!0}(e):t?function e(t){var r,n=0;if(Array.isArray(t)){for(var a=0;a<t.length;a++)if("object"==typeof(r=t[a])&&(n+=e(r)),n==1/0)return 1/0}else for(var i in t){if("$ref"==i)return 1/0;if(p[i])n++;else if("object"==typeof(r=t[i])&&(n+=e(r)+1),n==1/0)return 1/0}return n}(e)<=t:void 0)}function m(e,t){return!1!==t&&(e=g(e)),v(n.parse(e))}function v(e){return n.serialize(e).split("#")[0]+"#"}var y=/#\/?$/;function g(e){return e?e.replace(y,""):""}function b(e,t){return t=g(t),n.resolve(e,t)}},function(e,t,r){"use strict";e.exports=function e(t,r){if(t===r)return!0;if(t&&r&&"object"==typeof t&&"object"==typeof r){if(t.constructor!==r.constructor)return!1;var n,a,i;if(Array.isArray(t)){if((n=t.length)!=r.length)return!1;for(a=n;0!=a--;)if(!e(t[a],r[a]))return!1;return!0}if(t.constructor===RegExp)return t.source===r.source&&t.flags===r.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===r.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===r.toString();if((n=(i=Object.keys(t)).length)!==Object.keys(r).length)return!1;for(a=n;0!=a--;)if(!Object.prototype.hasOwnProperty.call(r,i[a]))return!1;for(a=n;0!=a--;){var o=i[a];if(!e(t[o],r[o]))return!1}return!0}return t!=t&&r!=r}},function(e,t,r){"use strict";var n=r(63);function a(e,t,r){this.message=r||a.message(e,t),this.missingRef=n.url(e,t),this.missingSchema=n.normalizeId(n.fullPath(this.missingRef))}function i(e){return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}e.exports={Validation:i((function(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0})),MissingRef:i(a)},a.message=function(e,t){return"can't resolve reference "+t+" from id "+e}},function(e,t,r){var n=r(44),a=r(124);function i(t,r,o){return a()?e.exports=i=Reflect.construct:e.exports=i=function(e,t,r){var a=[null];a.push.apply(a,t);var i=new(Function.bind.apply(e,a));return r&&n(i,r.prototype),i},i.apply(null,arguments)}e.exports=i},function(e,t,r){var n=r(185),a=r(210);e.exports=function(e,t){return e&&e.length?a(e,n(t,2)):[]}},function(e,t,r){var n=r(69);e.exports=function(e,t){if(e){if("string"==typeof e)return n(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}},function(e,t){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}},function(e,t){e.exports=function(e){this.wrapped=e}},function(e,t,r){(function(t){var r="object"==typeof t&&t&&t.Object===Object&&t;e.exports=r}).call(this,r(139))},function(e,t){var r=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return r.call(e)}catch(e){}try{return e+""}catch(e){}}return""}},function(e,t,r){var n=r(48),a=r(25),i=Object.prototype.hasOwnProperty;e.exports=function(e,t,r){var o=e[t];i.call(e,t)&&a(o,r)&&(void 0!==r||t in e)||n(e,t,r)}},function(e,t,r){var n=r(21),a=function(){try{var e=n(Object,"defineProperty");return e({},"",{}),e}catch(e){}}();e.exports=a},function(e,t,r){var n=r(159),a=r(49),i=r(15),o=r(35),s=r(50),u=r(51),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var r=i(e),l=!r&&a(e),f=!r&&!l&&o(e),d=!r&&!l&&!f&&u(e),p=r||l||f||d,h=p?n(e.length,String):[],m=h.length;for(var v in e)!t&&!c.call(e,v)||p&&("length"==v||f&&("offset"==v||"parent"==v)||d&&("buffer"==v||"byteLength"==v||"byteOffset"==v)||s(v,m))||h.push(v);return h}},function(e,t){e.exports=function(e,t){return function(r){return e(t(r))}}},function(e,t,r){(function(e){var n=r(14),a=t&&!t.nodeType&&t,i=a&&"object"==typeof e&&e&&!e.nodeType&&e,o=i&&i.exports===a?n.Buffer:void 0,s=o?o.allocUnsafe:void 0;e.exports=function(e,t){if(t)return e.slice();var r=e.length,n=s?s(r):new e.constructor(r);return e.copy(n),n}}).call(this,r(36)(e))},function(e,t){e.exports=function(e,t){var r=-1,n=e.length;for(t||(t=Array(n));++r<n;)t[r]=e[r];return t}},function(e,t){e.exports=function(){return[]}},function(e,t,r){var n=r(81),a=r(57),i=r(56),o=r(79),s=Object.getOwnPropertySymbols?function(e){for(var t=[];e;)n(t,i(e)),e=a(e);return t}:o;e.exports=s},function(e,t){e.exports=function(e,t){for(var r=-1,n=t.length,a=e.length;++r<n;)e[a+r]=t[r];return e}},function(e,t,r){var n=r(83),a=r(56),i=r(34);e.exports=function(e){return n(e,i,a)}},function(e,t,r){var n=r(81),a=r(15);e.exports=function(e,t,r){var i=t(e);return a(e)?i:n(i,r(e))}},function(e,t,r){var n=r(21)(r(14),"Set");e.exports=n},function(e,t,r){var n=r(14).Uint8Array;e.exports=n},function(e,t,r){var n=r(58);e.exports=function(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}},function(e,t,r){var n=r(180),a=r(57),i=r(55);e.exports=function(e){return"function"!=typeof e.constructor||i(e)?{}:n(a(e))}},function(e,t,r){var n=r(188),a=r(17);e.exports=function e(t,r,i,o,s){return t===r||(null==t||null==r||!a(t)&&!a(r)?t!=t&&r!=r:n(t,r,i,o,e,s))}},function(e,t,r){var n=r(90),a=r(191),i=r(91);e.exports=function(e,t,r,o,s,u){var c=1&r,l=e.length,f=t.length;if(l!=f&&!(c&&f>l))return!1;var d=u.get(e);if(d&&u.get(t))return d==t;var p=-1,h=!0,m=2&r?new n:void 0;for(u.set(e,t),u.set(t,e);++p<l;){var v=e[p],y=t[p];if(o)var g=c?o(y,v,p,t,e,u):o(v,y,p,e,t,u);if(void 0!==g){if(g)continue;h=!1;break}if(m){if(!a(t,(function(e,t){if(!i(m,t)&&(v===e||s(v,e,r,o,u)))return m.push(t)}))){h=!1;break}}else if(v!==y&&!s(v,y,r,o,u)){h=!1;break}}return u.delete(e),u.delete(t),h}},function(e,t,r){var n=r(47),a=r(189),i=r(190);function o(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new n;++t<r;)this.add(e[t])}o.prototype.add=o.prototype.push=a,o.prototype.has=i,e.exports=o},function(e,t){e.exports=function(e,t){return e.has(t)}},function(e,t,r){var n=r(16);e.exports=function(e){return e==e&&!n(e)}},function(e,t){e.exports=function(e,t){return function(r){return null!=r&&(r[e]===t&&(void 0!==t||e in Object(r)))}}},function(e,t,r){var n=r(95),a=r(40);e.exports=function(e,t){for(var r=0,i=(t=n(t,e)).length;null!=e&&r<i;)e=e[a(t[r++])];return r&&r==i?e:void 0}},function(e,t,r){var n=r(15),a=r(60),i=r(198),o=r(201);e.exports=function(e,t){return n(e)?e:a(e,t)?[e]:i(o(e))}},function(e,t,r){var n=r(48),a=r(25);e.exports=function(e,t,r){(void 0!==r&&!a(e[t],r)||void 0===r&&!(t in e))&&n(e,t,r)}},function(e,t){e.exports=function(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}},function(e,t,r){"use strict";var n=r(24);e.exports=function(e){n.copy(e,this)}},function(e,t,r){"use strict";e.exports=function(e,t){t||(t={}),"function"==typeof t&&(t={cmp:t});var r,n="boolean"==typeof t.cycles&&t.cycles,a=t.cmp&&(r=t.cmp,function(e){return function(t,n){var a={key:t,value:e[t]},i={key:n,value:e[n]};return r(a,i)}}),i=[];return function e(t){if(t&&t.toJSON&&"function"==typeof t.toJSON&&(t=t.toJSON()),void 0!==t){if("number"==typeof t)return isFinite(t)?""+t:"null";if("object"!=typeof t)return JSON.stringify(t);var r,o;if(Array.isArray(t)){for(o="[",r=0;r<t.length;r++)r&&(o+=","),o+=e(t[r])||"null";return o+"]"}if(null===t)return"null";if(-1!==i.indexOf(t)){if(n)return JSON.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}var s=i.push(t)-1,u=Object.keys(t).sort(a&&a(t));for(o="",r=0;r<u.length;r++){var c=u[r],l=e(t[c]);l&&(o&&(o+=","),o+=JSON.stringify(c)+":"+l)}return i.splice(s,1),"{"+o+"}"}}(e)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n="",a=!0===e.schema.$async,i=e.util.schemaHasRulesExcept(e.schema,e.RULES.all,"$ref"),o=e.self._getId(e.schema);if(e.opts.strictKeywords){var s=e.util.schemaUnknownRules(e.schema,e.RULES.keywords);if(s){var u="unknown keyword: "+s;if("log"!==e.opts.strictKeywords)throw new Error(u);e.logger.warn(u)}}if(e.isTop&&(n+=" var validate = ",a&&(e.async=!0,n+="async "),n+="function(data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; ",o&&(e.opts.sourceCode||e.opts.processCode)&&(n+=" /*# sourceURL="+o+" */ ")),"boolean"==typeof e.schema||!i&&!e.schema.$ref){var c=e.level,l=e.dataLevel,f=e.schema["false schema"],d=e.schemaPath+e.util.getProperty("false schema"),p=e.errSchemaPath+"/false schema",h=!e.opts.allErrors,m="data"+(l||""),v="valid"+c;if(!1===e.schema){e.isTop?h=!0:n+=" var "+v+" = false; ",(Y=Y||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'false schema' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: {} ",!1!==e.opts.messages&&(n+=" , message: 'boolean schema is false' "),e.opts.verbose&&(n+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),n+=" } "):n+=" {} ";var y=n;n=Y.pop(),!e.compositeRule&&h?e.async?n+=" throw new ValidationError(["+y+"]); ":n+=" validate.errors = ["+y+"]; return false; ":n+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else e.isTop?n+=a?" return data; ":" validate.errors = null; return true; ":n+=" var "+v+" = true; ";return e.isTop&&(n+=" }; return validate; "),n}if(e.isTop){var g=e.isTop;c=e.level=0,l=e.dataLevel=0,m="data";if(e.rootId=e.resolve.fullPath(e.self._getId(e.root.schema)),e.baseId=e.baseId||e.rootId,delete e.isTop,e.dataPathArr=[void 0],void 0!==e.schema.default&&e.opts.useDefaults&&e.opts.strictDefaults){var b="default is ignored in the schema root";if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}n+=" var vErrors = null; ",n+=" var errors = 0; ",n+=" if (rootData === undefined) rootData = data; "}else{c=e.level,m="data"+((l=e.dataLevel)||"");if(o&&(e.baseId=e.resolve.url(e.baseId,o)),a&&!e.async)throw new Error("async schema in sync schema");n+=" var errs_"+c+" = errors;"}v="valid"+c,h=!e.opts.allErrors;var I="",w="",S=e.schema.type,P=Array.isArray(S);if(S&&e.opts.nullable&&!0===e.schema.nullable&&(P?-1==S.indexOf("null")&&(S=S.concat("null")):"null"!=S&&(S=[S,"null"],P=!0)),P&&1==S.length&&(S=S[0],P=!1),e.schema.$ref&&i){if("fail"==e.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+e.errSchemaPath+'" (see option extendRefs)');!0!==e.opts.extendRefs&&(i=!1,e.logger.warn('$ref: keywords ignored in schema at path "'+e.errSchemaPath+'"'))}if(e.schema.$comment&&e.opts.$comment&&(n+=" "+e.RULES.all.$comment.code(e,"$comment")),S){if(e.opts.coerceTypes)var D=e.util.coerceToTypes(e.opts.coerceTypes,S);var E=e.RULES.types[S];if(D||P||!0===E||E&&!X(E)){d=e.schemaPath+".type",p=e.errSchemaPath+"/type",d=e.schemaPath+".type",p=e.errSchemaPath+"/type";var O=P?"checkDataTypes":"checkDataType";if(n+=" if ("+e.util[O](S,m,!0)+") { ",D){var x="dataType"+c,_="coerced"+c;n+=" var "+x+" = typeof "+m+"; ","array"==e.opts.coerceTypes&&(n+=" if ("+x+" == 'object' && Array.isArray("+m+")) "+x+" = 'array'; "),n+=" var "+_+" = undefined; ";var k="",j=D;if(j)for(var T,R=-1,A=j.length-1;R<A;)T=j[R+=1],R&&(n+=" if ("+_+" === undefined) { ",k+="}"),"array"==e.opts.coerceTypes&&"array"!=T&&(n+=" if ("+x+" == 'array' && "+m+".length == 1) { "+_+" = "+m+" = "+m+"[0]; "+x+" = typeof "+m+"; } "),"string"==T?n+=" if ("+x+" == 'number' || "+x+" == 'boolean') "+_+" = '' + "+m+"; else if ("+m+" === null) "+_+" = ''; ":"number"==T||"integer"==T?(n+=" if ("+x+" == 'boolean' || "+m+" === null || ("+x+" == 'string' && "+m+" && "+m+" == +"+m+" ","integer"==T&&(n+=" && !("+m+" % 1)"),n+=")) "+_+" = +"+m+"; "):"boolean"==T?n+=" if ("+m+" === 'false' || "+m+" === 0 || "+m+" === null) "+_+" = false; else if ("+m+" === 'true' || "+m+" === 1) "+_+" = true; ":"null"==T?n+=" if ("+m+" === '' || "+m+" === 0 || "+m+" === false) "+_+" = null; ":"array"==e.opts.coerceTypes&&"array"==T&&(n+=" if ("+x+" == 'string' || "+x+" == 'number' || "+x+" == 'boolean' || "+m+" == null) "+_+" = ["+m+"]; ");n+=" "+k+" if ("+_+" === undefined) { ",(Y=Y||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",n+=P?""+S.join(","):""+S,n+="' } ",!1!==e.opts.messages&&(n+=" , message: 'should be ",n+=P?""+S.join(","):""+S,n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+d+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),n+=" } "):n+=" {} ";y=n;n=Y.pop(),!e.compositeRule&&h?e.async?n+=" throw new ValidationError(["+y+"]); ":n+=" validate.errors = ["+y+"]; return false; ":n+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } else { ";var M=l?"data"+(l-1||""):"parentData";n+=" "+m+" = "+_+"; ",l||(n+="if ("+M+" !== undefined)"),n+=" "+M+"["+(l?e.dataPathArr[l]:"parentDataProperty")+"] = "+_+"; } "}else{(Y=Y||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",n+=P?""+S.join(","):""+S,n+="' } ",!1!==e.opts.messages&&(n+=" , message: 'should be ",n+=P?""+S.join(","):""+S,n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+d+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),n+=" } "):n+=" {} ";y=n;n=Y.pop(),!e.compositeRule&&h?e.async?n+=" throw new ValidationError(["+y+"]); ":n+=" validate.errors = ["+y+"]; return false; ":n+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}n+=" } "}}if(e.schema.$ref&&!i)n+=" "+e.RULES.all.$ref.code(e,"$ref")+" ",h&&(n+=" } if (errors === ",n+=g?"0":"errs_"+c,n+=") { ",w+="}");else{var U=e.RULES;if(U)for(var N=-1,C=U.length-1;N<C;)if(X(E=U[N+=1])){if(E.type&&(n+=" if ("+e.util.checkDataType(E.type,m)+") { "),e.opts.useDefaults)if("object"==E.type&&e.schema.properties){f=e.schema.properties;var F=Object.keys(f);if(F)for(var L,V=-1,q=F.length-1;V<q;){if(void 0!==(G=f[L=F[V+=1]]).default){var $=m+e.util.getProperty(L);if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+$;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else n+=" if ("+$+" === undefined ","empty"==e.opts.useDefaults&&(n+=" || "+$+" === null || "+$+" === '' "),n+=" ) "+$+" = ","shared"==e.opts.useDefaults?n+=" "+e.useDefault(G.default)+" ":n+=" "+JSON.stringify(G.default)+" ",n+="; "}}}else if("array"==E.type&&Array.isArray(e.schema.items)){var z=e.schema.items;if(z){R=-1;for(var G,B=z.length-1;R<B;)if(void 0!==(G=z[R+=1]).default){$=m+"["+R+"]";if(e.compositeRule){if(e.opts.strictDefaults){b="default is ignored for: "+$;if("log"!==e.opts.strictDefaults)throw new Error(b);e.logger.warn(b)}}else n+=" if ("+$+" === undefined ","empty"==e.opts.useDefaults&&(n+=" || "+$+" === null || "+$+" === '' "),n+=" ) "+$+" = ","shared"==e.opts.useDefaults?n+=" "+e.useDefault(G.default)+" ":n+=" "+JSON.stringify(G.default)+" ",n+="; "}}}var H=E.rules;if(H)for(var W,Q=-1,K=H.length-1;Q<K;)if(Z(W=H[Q+=1])){var J=W.code(e,W.keyword,E.type);J&&(n+=" "+J+" ",h&&(I+="}"))}if(h&&(n+=" "+I+" ",I=""),E.type&&(n+=" } ",S&&S===E.type&&!D)){n+=" else { ";var Y;d=e.schemaPath+".type",p=e.errSchemaPath+"/type";(Y=Y||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'type' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(p)+" , params: { type: '",n+=P?""+S.join(","):""+S,n+="' } ",!1!==e.opts.messages&&(n+=" , message: 'should be ",n+=P?""+S.join(","):""+S,n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+d+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+m+" "),n+=" } "):n+=" {} ";y=n;n=Y.pop(),!e.compositeRule&&h?e.async?n+=" throw new ValidationError(["+y+"]); ":n+=" validate.errors = ["+y+"]; return false; ":n+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } "}h&&(n+=" if (errors === ",n+=g?"0":"errs_"+c,n+=") { ",w+="}")}}function X(e){for(var t=e.rules,r=0;r<t.length;r++)if(Z(t[r]))return!0}function Z(t){return void 0!==e.schema[t.keyword]||t.implements&&function(t){for(var r=t.implements,n=0;n<r.length;n++)if(void 0!==e.schema[r[n]])return!0}(t)}return h&&(n+=" "+w+" "),g?(a?(n+=" if (errors === 0) return data; ",n+=" else throw new ValidationError(vErrors); "):(n+=" validate.errors = vErrors; ",n+=" return errors === 0; "),n+=" }; return validate;"):n+=" var "+v+" = errors === errs_"+c+";",n=e.util.cleanUpCode(n),g&&(n=e.util.finalCleanUpCode(n,a)),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s;var p="maximum"==t,h=p?"exclusiveMaximum":"exclusiveMinimum",m=e.schema[h],v=e.opts.$data&&m&&m.$data,y=p?"<":">",g=p?">":"<",b=void 0;if(v){var I=e.util.getData(m.$data,o,e.dataPathArr),w="exclusive"+i,S="exclType"+i,P="exclIsNumber"+i,D="' + "+(x="op"+i)+" + '";a+=" var schemaExcl"+i+" = "+I+"; ",a+=" var "+w+"; var "+S+" = typeof "+(I="schemaExcl"+i)+"; if ("+S+" != 'boolean' && "+S+" != 'undefined' && "+S+" != 'number') { ";var E;b=h;(E=E||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: '"+(b||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: {} ",!1!==e.opts.messages&&(a+=" , message: '"+h+" should be boolean' "),e.opts.verbose&&(a+=" , schema: validate.schema"+u+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var O=a;a=E.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+O+"]); ":a+=" validate.errors = ["+O+"]; return false; ":a+=" var err = "+O+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } else if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),a+=" "+S+" == 'number' ? ( ("+w+" = "+n+" === undefined || "+I+" "+y+"= "+n+") ? "+f+" "+g+"= "+I+" : "+f+" "+g+" "+n+" ) : ( ("+w+" = "+I+" === true) ? "+f+" "+g+"= "+n+" : "+f+" "+g+" "+n+" ) || "+f+" !== "+f+") { var op"+i+" = "+w+" ? '"+y+"' : '"+y+"='; ",void 0===s&&(b=h,c=e.errSchemaPath+"/"+h,n=I,d=v)}else{D=y;if((P="number"==typeof m)&&d){var x="'"+D+"'";a+=" if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),a+=" ( "+n+" === undefined || "+m+" "+y+"= "+n+" ? "+f+" "+g+"= "+m+" : "+f+" "+g+" "+n+" ) || "+f+" !== "+f+") { "}else{P&&void 0===s?(w=!0,b=h,c=e.errSchemaPath+"/"+h,n=m,g+="="):(P&&(n=Math[p?"min":"max"](m,s)),m===(!P||n)?(w=!0,b=h,c=e.errSchemaPath+"/"+h,g+="="):(w=!1,D+="="));x="'"+D+"'";a+=" if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),a+=" "+f+" "+g+" "+n+" || "+f+" !== "+f+") { "}}b=b||t,(E=E||[]).push(a),a="",!1!==e.createErrors?(a+=" { keyword: '"+(b||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { comparison: "+x+", limit: "+n+", exclusive: "+w+" } ",!1!==e.opts.messages&&(a+=" , message: 'should be "+D+" ",a+=d?"' + "+n:n+"'"),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";O=a;return a=E.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+O+"]); ":a+=" validate.errors = ["+O+"]; return false; ":a+=" var err = "+O+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } ",l&&(a+=" else { "),a}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s,a+="if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),a+=" "+f+".length "+("maxItems"==t?">":"<")+" "+n+") { ";var p=t,h=h||[];h.push(a),a="",!1!==e.createErrors?(a+=" { keyword: '"+(p||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+n+" } ",!1!==e.opts.messages&&(a+=" , message: 'should NOT have ",a+="maxItems"==t?"more":"fewer",a+=" than ",a+=d?"' + "+n+" + '":""+s,a+=" items' "),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var m=a;return a=h.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+m+"]); ":a+=" validate.errors = ["+m+"]; return false; ":a+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} ",l&&(a+=" else { "),a}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s;var p="maxLength"==t?">":"<";a+="if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),!1===e.opts.unicode?a+=" "+f+".length ":a+=" ucs2length("+f+") ",a+=" "+p+" "+n+") { ";var h=t,m=m||[];m.push(a),a="",!1!==e.createErrors?(a+=" { keyword: '"+(h||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+n+" } ",!1!==e.opts.messages&&(a+=" , message: 'should NOT be ",a+="maxLength"==t?"longer":"shorter",a+=" than ",a+=d?"' + "+n+" + '":""+s,a+=" characters' "),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var v=a;return a=m.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+v+"]); ":a+=" validate.errors = ["+v+"]; return false; ":a+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} ",l&&(a+=" else { "),a}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s,a+="if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'number') || "),a+=" Object.keys("+f+").length "+("maxProperties"==t?">":"<")+" "+n+") { ";var p=t,h=h||[];h.push(a),a="",!1!==e.createErrors?(a+=" { keyword: '"+(p||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+n+" } ",!1!==e.opts.messages&&(a+=" , message: 'should NOT have ",a+="maxProperties"==t?"more":"fewer",a+=" than ",a+=d?"' + "+n+" + '":""+s,a+=" properties' "),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var m=a;return a=h.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+m+"]); ":a+=" validate.errors = ["+m+"]; return false; ":a+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} ",l&&(a+=" else { "),a}},function(e){e.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"http://json-schema.org/draft-07/schema#","title":"Core schema meta-schema","definitions":{"schemaArray":{"type":"array","minItems":1,"items":{"$ref":"#"}},"nonNegativeInteger":{"type":"integer","minimum":0},"nonNegativeIntegerDefault0":{"allOf":[{"$ref":"#/definitions/nonNegativeInteger"},{"default":0}]},"simpleTypes":{"enum":["array","boolean","integer","null","number","object","string"]},"stringArray":{"type":"array","items":{"type":"string"},"uniqueItems":true,"default":[]}},"type":["object","boolean"],"properties":{"$id":{"type":"string","format":"uri-reference"},"$schema":{"type":"string","format":"uri"},"$ref":{"type":"string","format":"uri-reference"},"$comment":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"default":true,"readOnly":{"type":"boolean","default":false},"examples":{"type":"array","items":true},"multipleOf":{"type":"number","exclusiveMinimum":0},"maximum":{"type":"number"},"exclusiveMaximum":{"type":"number"},"minimum":{"type":"number"},"exclusiveMinimum":{"type":"number"},"maxLength":{"$ref":"#/definitions/nonNegativeInteger"},"minLength":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"pattern":{"type":"string","format":"regex"},"additionalItems":{"$ref":"#"},"items":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/schemaArray"}],"default":true},"maxItems":{"$ref":"#/definitions/nonNegativeInteger"},"minItems":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"uniqueItems":{"type":"boolean","default":false},"contains":{"$ref":"#"},"maxProperties":{"$ref":"#/definitions/nonNegativeInteger"},"minProperties":{"$ref":"#/definitions/nonNegativeIntegerDefault0"},"required":{"$ref":"#/definitions/stringArray"},"additionalProperties":{"$ref":"#"},"definitions":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"properties":{"type":"object","additionalProperties":{"$ref":"#"},"default":{}},"patternProperties":{"type":"object","additionalProperties":{"$ref":"#"},"propertyNames":{"format":"regex"},"default":{}},"dependencies":{"type":"object","additionalProperties":{"anyOf":[{"$ref":"#"},{"$ref":"#/definitions/stringArray"}]}},"propertyNames":{"$ref":"#"},"const":true,"enum":{"type":"array","items":true,"minItems":1,"uniqueItems":true},"type":{"anyOf":[{"$ref":"#/definitions/simpleTypes"},{"type":"array","items":{"$ref":"#/definitions/simpleTypes"},"minItems":1,"uniqueItems":true}]},"format":{"type":"string"},"contentMediaType":{"type":"string"},"contentEncoding":{"type":"string"},"if":{"$ref":"#"},"then":{"$ref":"#"},"else":{"$ref":"#"},"allOf":{"$ref":"#/definitions/schemaArray"},"anyOf":{"$ref":"#/definitions/schemaArray"},"oneOf":{"$ref":"#/definitions/schemaArray"},"not":{"$ref":"#"}},"default":true}')},function(e,t){e.exports=function(){throw new Error("define cannot be used indirect")}},function(e,t,r){var n=r(3),a=r(44),i=r(123),o=r(66);function s(t){var r="function"==typeof Map?new Map:void 0;return e.exports=s=function(e){if(null===e||!i(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==r){if(r.has(e))return r.get(e);r.set(e,t)}function t(){return o(e,arguments,n(this).constructor)}return t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),a(t,e)},s(t)}e.exports=s},function(e,t){e.exports=function(e){var t;if("undefined"!=typeof Symbol){if(Symbol.asyncIterator&&null!=(t=e[Symbol.asyncIterator]))return t.call(e);if(Symbol.iterator&&null!=(t=e[Symbol.iterator]))return t.call(e)}throw new TypeError("Object is not async iterable")}},function(e,t,r){var n=r(126);e.exports=function(e){return function(){return new n(e.apply(this,arguments))}}},function(e,t,r){var n=r(219),a=r(226)((function(e,t,r){n(e,t,r)}));e.exports=a},function(e){e.exports=JSON.parse('{"both":{"Location":{}},"baseline":{"TargetType":{},"MaxTargetsPerOrgan":{"limit":2},"MaxTargets":{"limit":5},"MeasurementsLength":[{"longAxis":10,"longAxisSliceThicknessMultiplier":2,"modalityIn":["CT","MR"],"locationNotIn":["Lymph Node"],"message":"Extranodal lesions must be >= 10mm long axis AND >= double the acquisition slice thickness by CT and MR"},{"shortAxis":20,"longAxis":20,"modalityIn":["PX","XA"],"locationNotIn":["Lymph Node"],"message":"Extranodal lesions must be >= 20mm on chest x-ray (although x-rays rarely used for clinical trial assessment)"},{"shortAxis":15,"shortAxisSliceThicknessMultiplier":2,"modalityIn":["CT","MR"],"locationIn":["Lymph Node"],"message":"Nodal lesions must be >= 15mm short axis AND >= double the acquisition slice thickness by CT and MR"}]},"followup":{}}')},function(e,t,r){"use strict";var n=r(235),a=r(63),i=r(239),o=r(98),s=r(99),u=r(240),c=r(241),l=r(262),f=r(24);e.exports=y,y.prototype.validate=function(e,t){var r;if("string"==typeof e){if(!(r=this.getSchema(e)))throw new Error('no schema with key or ref "'+e+'"')}else{var n=this._addSchema(e);r=n.validate||this._compile(n)}var a=r(t);!0!==r.$async&&(this.errors=r.errors);return a},y.prototype.compile=function(e,t){var r=this._addSchema(e,void 0,t);return r.validate||this._compile(r)},y.prototype.addSchema=function(e,t,r,n){if(Array.isArray(e)){for(var i=0;i<e.length;i++)this.addSchema(e[i],void 0,r,n);return this}var o=this._getId(e);if(void 0!==o&&"string"!=typeof o)throw new Error("schema id must be string");return P(this,t=a.normalizeId(t||o)),this._schemas[t]=this._addSchema(e,r,n,!0),this},y.prototype.addMetaSchema=function(e,t,r){return this.addSchema(e,t,r,!0),this},y.prototype.validateSchema=function(e,t){var r=e.$schema;if(void 0!==r&&"string"!=typeof r)throw new Error("$schema must be a string");if(!(r=r||this._opts.defaultMeta||function(e){var t=e._opts.meta;return e._opts.defaultMeta="object"==typeof t?e._getId(t)||t:e.getSchema(h)?h:void 0,e._opts.defaultMeta}(this)))return this.logger.warn("meta-schema not available"),this.errors=null,!0;var n=this.validate(r,e);if(!n&&t){var a="schema is invalid: "+this.errorsText();if("log"!=this._opts.validateSchema)throw new Error(a);this.logger.error(a)}return n},y.prototype.getSchema=function(e){var t=g(this,e);switch(typeof t){case"object":return t.validate||this._compile(t);case"string":return this.getSchema(t);case"undefined":return function(e,t){var r=a.schema.call(e,{schema:{}},t);if(r){var i=r.schema,s=r.root,u=r.baseId,c=n.call(e,i,s,void 0,u);return e._fragments[t]=new o({ref:t,fragment:!0,schema:i,root:s,baseId:u,validate:c}),c}}(this,e)}},y.prototype.removeSchema=function(e){if(e instanceof RegExp)return b(this,this._schemas,e),b(this,this._refs,e),this;switch(typeof e){case"undefined":return b(this,this._schemas),b(this,this._refs),this._cache.clear(),this;case"string":var t=g(this,e);return t&&this._cache.del(t.cacheKey),delete this._schemas[e],delete this._refs[e],this;case"object":var r=this._opts.serialize,n=r?r(e):e;this._cache.del(n);var i=this._getId(e);i&&(i=a.normalizeId(i),delete this._schemas[i],delete this._refs[i])}return this},y.prototype.addFormat=function(e,t){"string"==typeof t&&(t=new RegExp(t));return this._formats[e]=t,this},y.prototype.errorsText=function(e,t){if(!(e=e||this.errors))return"No errors";for(var r=void 0===(t=t||{}).separator?", ":t.separator,n=void 0===t.dataVar?"data":t.dataVar,a="",i=0;i<e.length;i++){var o=e[i];o&&(a+=n+o.dataPath+" "+o.message+r)}return a.slice(0,-r.length)},y.prototype._addSchema=function(e,t,r,n){if("object"!=typeof e&&"boolean"!=typeof e)throw new Error("schema should be object or boolean");var i=this._opts.serialize,s=i?i(e):e,u=this._cache.get(s);if(u)return u;n=n||!1!==this._opts.addUsedSchema;var c=a.normalizeId(this._getId(e));c&&n&&P(this,c);var l,f=!1!==this._opts.validateSchema&&!t;f&&!(l=c&&c==a.normalizeId(e.$schema))&&this.validateSchema(e,!0);var d=a.ids.call(this,e),p=new o({id:c,schema:e,localRefs:d,cacheKey:s,meta:r});"#"!=c[0]&&n&&(this._refs[c]=p);this._cache.put(s,p),f&&l&&this.validateSchema(e,!0);return p},y.prototype._compile=function(e,t){if(e.compiling)return e.validate=i,i.schema=e.schema,i.errors=null,i.root=t||i,!0===e.schema.$async&&(i.$async=!0),i;var r,a;e.compiling=!0,e.meta&&(r=this._opts,this._opts=this._metaOpts);try{a=n.call(this,e.schema,t,e.localRefs)}catch(t){throw delete e.validate,t}finally{e.compiling=!1,e.meta&&(this._opts=r)}return e.validate=a,e.refs=a.refs,e.refVal=a.refVal,e.root=a.root,a;function i(){var t=e.validate,r=t.apply(this,arguments);return i.errors=t.errors,r}},y.prototype.compileAsync=r(263);var d=r(264);y.prototype.addKeyword=d.add,y.prototype.getKeyword=d.get,y.prototype.removeKeyword=d.remove,y.prototype.validateKeyword=d.validate;var p=r(65);y.ValidationError=p.Validation,y.MissingRefError=p.MissingRef,y.$dataMetaSchema=l;var h="http://json-schema.org/draft-07/schema",m=["removeAdditional","useDefaults","coerceTypes","strictDefaults"],v=["/properties"];function y(e){if(!(this instanceof y))return new y(e);e=this._opts=f.copy(e)||{},function(e){var t=e._opts.logger;if(!1===t)e.logger={log:D,warn:D,error:D};else{if(void 0===t&&(t=console),!("object"==typeof t&&t.log&&t.warn&&t.error))throw new Error("logger must implement log, warn and error methods");e.logger=t}}(this),this._schemas={},this._refs={},this._fragments={},this._formats=u(e.format),this._cache=e.cache||new i,this._loadingSchemas={},this._compilations=[],this.RULES=c(),this._getId=function(e){switch(e.schemaId){case"auto":return S;case"id":return I;default:return w}}(e),e.loopRequired=e.loopRequired||1/0,"property"==e.errorDataPath&&(e._errorDataPathProperty=!0),void 0===e.serialize&&(e.serialize=s),this._metaOpts=function(e){for(var t=f.copy(e._opts),r=0;r<m.length;r++)delete t[m[r]];return t}(this),e.formats&&function(e){for(var t in e._opts.formats){var r=e._opts.formats[t];e.addFormat(t,r)}}(this),e.keywords&&function(e){for(var t in e._opts.keywords){var r=e._opts.keywords[t];e.addKeyword(t,r)}}(this),function(e){var t;e._opts.$data&&(t=r(267),e.addMetaSchema(t,t.$id,!0));if(!1===e._opts.meta)return;var n=r(105);e._opts.$data&&(n=l(n,v));e.addMetaSchema(n,h,!0),e._refs["http://json-schema.org/schema"]=h}(this),"object"==typeof e.meta&&this.addMetaSchema(e.meta),e.nullable&&this.addKeyword("nullable",{metaSchema:{type:"boolean"}}),function(e){var t=e._opts.schemas;if(!t)return;if(Array.isArray(t))e.addSchema(t);else for(var r in t)e.addSchema(t[r],r)}(this)}function g(e,t){return t=a.normalizeId(t),e._schemas[t]||e._refs[t]||e._fragments[t]}function b(e,t,r){for(var n in t){var a=t[n];a.meta||r&&!r.test(n)||(e._cache.del(a.cacheKey),delete t[n])}}function I(e){return e.$id&&this.logger.warn("schema $id ignored",e.$id),e.id}function w(e){return e.id&&this.logger.warn("schema id ignored",e.id),e.$id}function S(e){if(e.$id&&e.id&&e.$id!=e.id)throw new Error("schema $id is different from id");return e.$id||e.id}function P(e,t){if(e._schemas[t]||e._refs[t])throw new Error('schema with key or id "'+t+'" already exists')}function D(){}},function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{n||null==s.return||s.return()}finally{if(a)throw i}}return r}}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},function(e,t,r){var n=r(69);e.exports=function(e){if(Array.isArray(e))return n(e)}},function(e,t){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}},function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}},function(e,t,r){var n=function(e){"use strict";var t=Object.prototype,r=t.hasOwnProperty,n="function"==typeof Symbol?Symbol:{},a=n.iterator||"@@iterator",i=n.asyncIterator||"@@asyncIterator",o=n.toStringTag||"@@toStringTag";function s(e,t,r,n){var a=t&&t.prototype instanceof l?t:l,i=Object.create(a.prototype),o=new S(n||[]);return i._invoke=function(e,t,r){var n="suspendedStart";return function(a,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===a)throw i;return D()}for(r.method=a,r.arg=i;;){var o=r.delegate;if(o){var s=b(o,r);if(s){if(s===c)continue;return s}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var l=u(e,t,r);if("normal"===l.type){if(n=r.done?"completed":"suspendedYield",l.arg===c)continue;return{value:l.arg,done:r.done}}"throw"===l.type&&(n="completed",r.method="throw",r.arg=l.arg)}}}(e,r,o),i}function u(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var c={};function l(){}function f(){}function d(){}var p={};p[a]=function(){return this};var h=Object.getPrototypeOf,m=h&&h(h(P([])));m&&m!==t&&r.call(m,a)&&(p=m);var v=d.prototype=l.prototype=Object.create(p);function y(e){["next","throw","return"].forEach((function(t){e[t]=function(e){return this._invoke(t,e)}}))}function g(e,t){var n;this._invoke=function(a,i){function o(){return new t((function(n,o){!function n(a,i,o,s){var c=u(e[a],e,i);if("throw"!==c.type){var l=c.arg,f=l.value;return f&&"object"==typeof f&&r.call(f,"__await")?t.resolve(f.__await).then((function(e){n("next",e,o,s)}),(function(e){n("throw",e,o,s)})):t.resolve(f).then((function(e){l.value=e,o(l)}),(function(e){return n("throw",e,o,s)}))}s(c.arg)}(a,i,n,o)}))}return n=n?n.then(o,o):o()}}function b(e,t){var r=e.iterator[t.method];if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return c;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return c}var n=u(r,e.iterator,t.arg);if("throw"===n.type)return t.method="throw",t.arg=n.arg,t.delegate=null,c;var a=n.arg;return a?a.done?(t[e.resultName]=a.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,c):a:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,c)}function I(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function w(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function S(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(I,this),this.reset(!0)}function P(e){if(e){var t=e[a];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var n=-1,i=function t(){for(;++n<e.length;)if(r.call(e,n))return t.value=e[n],t.done=!1,t;return t.value=void 0,t.done=!0,t};return i.next=i}}return{next:D}}function D(){return{value:void 0,done:!0}}return f.prototype=v.constructor=d,d.constructor=f,d[o]=f.displayName="GeneratorFunction",e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===f||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,o in e||(e[o]="GeneratorFunction")),e.prototype=Object.create(v),e},e.awrap=function(e){return{__await:e}},y(g.prototype),g.prototype[i]=function(){return this},e.AsyncIterator=g,e.async=function(t,r,n,a,i){void 0===i&&(i=Promise);var o=new g(s(t,r,n,a),i);return e.isGeneratorFunction(r)?o:o.next().then((function(e){return e.done?e.value:o.next()}))},y(v),v[o]="Generator",v[a]=function(){return this},v.toString=function(){return"[object Generator]"},e.keys=function(e){var t=[];for(var r in e)t.push(r);return t.reverse(),function r(){for(;t.length;){var n=t.pop();if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},e.values=P,S.prototype={constructor:S,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(w),!e)for(var t in this)"t"===t.charAt(0)&&r.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function n(r,n){return o.type="throw",o.arg=e,t.next=r,n&&(t.method="next",t.arg=void 0),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var i=this.tryEntries[a],o=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var s=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(s&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(s){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var a=this.tryEntries[n];if(a.tryLoc<=this.prev&&r.call(a,"finallyLoc")&&this.prev<a.finallyLoc){var i=a;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var o=i?i.completion:{};return o.type=e,o.arg=t,i?(this.method="next",this.next=i.finallyLoc,c):this.complete(o)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),c},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),w(r),c}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var a=n.arg;w(r)}return a}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,r){return this.delegate={iterator:P(e),resultName:t,nextLoc:r},"next"===this.method&&(this.arg=void 0),c}},e}(e.exports);try{regeneratorRuntime=n}catch(e){Function("r","regeneratorRuntime = r")(n)}},function(e,t,r){"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,e=>"%"+e.charCodeAt(0).toString(16).toUpperCase())},function(e,t,r){"use strict";var n=new RegExp("%[a-f0-9]{2}","gi"),a=new RegExp("(%[a-f0-9]{2})+","gi");function i(e,t){try{return decodeURIComponent(e.join(""))}catch(e){}if(1===e.length)return e;t=t||1;var r=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],i(r),i(n))}function o(e){try{return decodeURIComponent(e)}catch(a){for(var t=e.match(n),r=1;r<t.length;r++)t=(e=i(t,r).join("")).match(n);return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var t={"%FE%FF":"��","%FF%FE":"��"},r=a.exec(e);r;){try{t[r[0]]=decodeURIComponent(r[0])}catch(e){var n=o(r[0]);n!==r[0]&&(t[r[0]]=n)}r=a.exec(e)}t["%C2"]="�";for(var i=Object.keys(t),s=0;s<i.length;s++){var u=i[s];e=e.replace(new RegExp(u,"g"),t[u])}return e}(e)}}},function(e,t,r){"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const r=e.indexOf(t);return-1===r?[e]:[e.slice(0,r),e.slice(r+t.length)]}},function(e,t){e.exports=function(e){return-1!==Function.toString.call(e).indexOf("[native code]")}},function(e,t){e.exports=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}},function(e,t,r){var n=r(70);e.exports=function(e){return new n(e)}},function(e,t,r){var n=r(70);function a(e){var t,r;function a(t,r){try{var o=e[t](r),s=o.value,u=s instanceof n;Promise.resolve(u?s.wrapped:s).then((function(e){u?a("return"===t?"return":"next",e):i(o.done?"return":"normal",e)}),(function(e){a("throw",e)}))}catch(e){i("throw",e)}}function i(e,n){switch(e){case"return":t.resolve({value:n,done:!0});break;case"throw":t.reject(n);break;default:t.resolve({value:n,done:!1})}(t=t.next)?a(t.key,t.arg):r=null}this._invoke=function(e,n){return new Promise((function(i,o){var s={key:e,arg:n,resolve:i,reject:o,next:null};r?r=r.next=s:(t=r=s,a(e,n))}))},"function"!=typeof e.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(a.prototype[Symbol.asyncIterator]=function(){return this}),a.prototype.next=function(e){return this._invoke("next",e)},a.prototype.throw=function(e){return this._invoke("throw",e)},a.prototype.return=function(e){return this._invoke("return",e)},e.exports=a},function(e,t,r){var n=r(29),a=r(157),i=r(73),o=r(158),s=r(165),u=r(77),c=r(78),l=r(168),f=r(170),d=r(82),p=r(171),h=r(39),m=r(175),v=r(176),y=r(87),g=r(15),b=r(35),I=r(181),w=r(16),S=r(183),P=r(34),D={};D["[object Arguments]"]=D["[object Array]"]=D["[object ArrayBuffer]"]=D["[object DataView]"]=D["[object Boolean]"]=D["[object Date]"]=D["[object Float32Array]"]=D["[object Float64Array]"]=D["[object Int8Array]"]=D["[object Int16Array]"]=D["[object Int32Array]"]=D["[object Map]"]=D["[object Number]"]=D["[object Object]"]=D["[object RegExp]"]=D["[object Set]"]=D["[object String]"]=D["[object Symbol]"]=D["[object Uint8Array]"]=D["[object Uint8ClampedArray]"]=D["[object Uint16Array]"]=D["[object Uint32Array]"]=!0,D["[object Error]"]=D["[object Function]"]=D["[object WeakMap]"]=!1,e.exports=function e(t,r,E,O,x,_){var k,j=1&r,T=2&r,R=4&r;if(E&&(k=x?E(t,O,x,_):E(t)),void 0!==k)return k;if(!w(t))return t;var A=g(t);if(A){if(k=m(t),!j)return c(t,k)}else{var M=h(t),U="[object Function]"==M||"[object GeneratorFunction]"==M;if(b(t))return u(t,j);if("[object Object]"==M||"[object Arguments]"==M||U&&!x){if(k=T||U?{}:y(t),!j)return T?f(t,s(k,t)):l(t,o(k,t))}else{if(!D[M])return x?t:{};k=v(t,M,j)}}_||(_=new n);var N=_.get(t);if(N)return N;_.set(t,k),S(t)?t.forEach((function(n){k.add(e(n,r,E,n,t,_))})):I(t)&&t.forEach((function(n,a){k.set(a,e(n,r,E,a,t,_))}));var C=R?T?p:d:T?keysIn:P,F=A?void 0:C(t);return a(F||t,(function(n,a){F&&(n=t[a=n]),i(k,a,e(n,r,E,a,t,_))})),k}},function(e,t){e.exports=function(){this.__data__=[],this.size=0}},function(e,t,r){var n=r(31),a=Array.prototype.splice;e.exports=function(e){var t=this.__data__,r=n(t,e);return!(r<0)&&(r==t.length-1?t.pop():a.call(t,r,1),--this.size,!0)}},function(e,t,r){var n=r(31);e.exports=function(e){var t=this.__data__,r=n(t,e);return r<0?void 0:t[r][1]}},function(e,t,r){var n=r(31);e.exports=function(e){return n(this.__data__,e)>-1}},function(e,t,r){var n=r(31);e.exports=function(e,t){var r=this.__data__,a=n(r,e);return a<0?(++this.size,r.push([e,t])):r[a][1]=t,this}},function(e,t,r){var n=r(30);e.exports=function(){this.__data__=new n,this.size=0}},function(e,t){e.exports=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r}},function(e,t){e.exports=function(e){return this.__data__.get(e)}},function(e,t){e.exports=function(e){return this.__data__.has(e)}},function(e,t,r){var n=r(30),a=r(45),i=r(47);e.exports=function(e,t){var r=this.__data__;if(r instanceof n){var o=r.__data__;if(!a||o.length<199)return o.push([e,t]),this.size=++r.size,this;r=this.__data__=new i(o)}return r.set(e,t),this.size=r.size,this}},function(e,t,r){var n=r(46),a=r(142),i=r(16),o=r(72),s=/^\[object .+?Constructor\]$/,u=Function.prototype,c=Object.prototype,l=u.toString,f=c.hasOwnProperty,d=RegExp("^"+l.call(f).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!i(e)||a(e))&&(n(e)?d:s).test(o(e))}},function(e,t){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){var n=r(26),a=Object.prototype,i=a.hasOwnProperty,o=a.toString,s=n?n.toStringTag:void 0;e.exports=function(e){var t=i.call(e,s),r=e[s];try{e[s]=void 0;var n=!0}catch(e){}var a=o.call(e);return n&&(t?e[s]=r:delete e[s]),a}},function(e,t){var r=Object.prototype.toString;e.exports=function(e){return r.call(e)}},function(e,t,r){var n,a=r(143),i=(n=/[^.]+$/.exec(a&&a.keys&&a.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"";e.exports=function(e){return!!i&&i in e}},function(e,t,r){var n=r(14)["__core-js_shared__"];e.exports=n},function(e,t){e.exports=function(e,t){return null==e?void 0:e[t]}},function(e,t,r){var n=r(146),a=r(30),i=r(45);e.exports=function(){this.size=0,this.__data__={hash:new n,map:new(i||a),string:new n}}},function(e,t,r){var n=r(147),a=r(148),i=r(149),o=r(150),s=r(151);function u(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}u.prototype.clear=n,u.prototype.delete=a,u.prototype.get=i,u.prototype.has=o,u.prototype.set=s,e.exports=u},function(e,t,r){var n=r(32);e.exports=function(){this.__data__=n?n(null):{},this.size=0}},function(e,t){e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},function(e,t,r){var n=r(32),a=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(n){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return a.call(t,e)?t[e]:void 0}},function(e,t,r){var n=r(32),a=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return n?void 0!==t[e]:a.call(t,e)}},function(e,t,r){var n=r(32);e.exports=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=n&&void 0===t?"__lodash_hash_undefined__":t,this}},function(e,t,r){var n=r(33);e.exports=function(e){var t=n(this,e).delete(e);return this.size-=t?1:0,t}},function(e,t){e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},function(e,t,r){var n=r(33);e.exports=function(e){return n(this,e).get(e)}},function(e,t,r){var n=r(33);e.exports=function(e){return n(this,e).has(e)}},function(e,t,r){var n=r(33);e.exports=function(e,t){var r=n(this,e),a=r.size;return r.set(e,t),this.size+=r.size==a?0:1,this}},function(e,t){e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}},function(e,t,r){var n=r(27),a=r(34);e.exports=function(e,t){return e&&n(t,a(t),e)}},function(e,t){e.exports=function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}},function(e,t,r){var n=r(23),a=r(17);e.exports=function(e){return a(e)&&"[object Arguments]"==n(e)}},function(e,t){e.exports=function(){return!1}},function(e,t,r){var n=r(23),a=r(52),i=r(17),o={};o["[object Float32Array]"]=o["[object Float64Array]"]=o["[object Int8Array]"]=o["[object Int16Array]"]=o["[object Int32Array]"]=o["[object Uint8Array]"]=o["[object Uint8ClampedArray]"]=o["[object Uint16Array]"]=o["[object Uint32Array]"]=!0,o["[object Arguments]"]=o["[object Array]"]=o["[object ArrayBuffer]"]=o["[object Boolean]"]=o["[object DataView]"]=o["[object Date]"]=o["[object Error]"]=o["[object Function]"]=o["[object Map]"]=o["[object Number]"]=o["[object Object]"]=o["[object RegExp]"]=o["[object Set]"]=o["[object String]"]=o["[object WeakMap]"]=!1,e.exports=function(e){return i(e)&&a(e.length)&&!!o[n(e)]}},function(e,t,r){var n=r(55),a=r(164),i=Object.prototype.hasOwnProperty;e.exports=function(e){if(!n(e))return a(e);var t=[];for(var r in Object(e))i.call(e,r)&&"constructor"!=r&&t.push(r);return t}},function(e,t,r){var n=r(76)(Object.keys,Object);e.exports=n},function(e,t,r){var n=r(27),a=r(38);e.exports=function(e,t){return e&&n(t,a(t),e)}},function(e,t,r){var n=r(16),a=r(55),i=r(167),o=Object.prototype.hasOwnProperty;e.exports=function(e){if(!n(e))return i(e);var t=a(e),r=[];for(var s in e)("constructor"!=s||!t&&o.call(e,s))&&r.push(s);return r}},function(e,t){e.exports=function(e){var t=[];if(null!=e)for(var r in Object(e))t.push(r);return t}},function(e,t,r){var n=r(27),a=r(56);e.exports=function(e,t){return n(e,a(e),t)}},function(e,t){e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length,a=0,i=[];++r<n;){var o=e[r];t(o,r,e)&&(i[a++]=o)}return i}},function(e,t,r){var n=r(27),a=r(80);e.exports=function(e,t){return n(e,a(e),t)}},function(e,t,r){var n=r(83),a=r(80),i=r(38);e.exports=function(e){return n(e,i,a)}},function(e,t,r){var n=r(21)(r(14),"DataView");e.exports=n},function(e,t,r){var n=r(21)(r(14),"Promise");e.exports=n},function(e,t,r){var n=r(21)(r(14),"WeakMap");e.exports=n},function(e,t){var r=Object.prototype.hasOwnProperty;e.exports=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&r.call(e,"index")&&(n.index=e.index,n.input=e.input),n}},function(e,t,r){var n=r(58),a=r(177),i=r(178),o=r(179),s=r(86);e.exports=function(e,t,r){var u=e.constructor;switch(t){case"[object ArrayBuffer]":return n(e);case"[object Boolean]":case"[object Date]":return new u(+e);case"[object DataView]":return a(e,r);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return s(e,r);case"[object Map]":return new u;case"[object Number]":case"[object String]":return new u(e);case"[object RegExp]":return i(e);case"[object Set]":return new u;case"[object Symbol]":return o(e)}}},function(e,t,r){var n=r(58);e.exports=function(e,t){var r=t?n(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}},function(e,t){var r=/\w*$/;e.exports=function(e){var t=new e.constructor(e.source,r.exec(e));return t.lastIndex=e.lastIndex,t}},function(e,t,r){var n=r(26),a=n?n.prototype:void 0,i=a?a.valueOf:void 0;e.exports=function(e){return i?Object(i.call(e)):{}}},function(e,t,r){var n=r(16),a=Object.create,i=function(){function e(){}return function(t){if(!n(t))return{};if(a)return a(t);e.prototype=t;var r=new e;return e.prototype=void 0,r}}();e.exports=i},function(e,t,r){var n=r(182),a=r(53),i=r(54),o=i&&i.isMap,s=o?a(o):n;e.exports=s},function(e,t,r){var n=r(39),a=r(17);e.exports=function(e){return a(e)&&"[object Map]"==n(e)}},function(e,t,r){var n=r(184),a=r(53),i=r(54),o=i&&i.isSet,s=o?a(o):n;e.exports=s},function(e,t,r){var n=r(39),a=r(17);e.exports=function(e){return a(e)&&"[object Set]"==n(e)}},function(e,t,r){var n=r(186),a=r(196),i=r(62),o=r(15),s=r(207);e.exports=function(e){return"function"==typeof e?e:null==e?i:"object"==typeof e?o(e)?a(e[0],e[1]):n(e):s(e)}},function(e,t,r){var n=r(187),a=r(195),i=r(93);e.exports=function(e){var t=a(e);return 1==t.length&&t[0][2]?i(t[0][0],t[0][1]):function(r){return r===e||n(r,e,t)}}},function(e,t,r){var n=r(29),a=r(88);e.exports=function(e,t,r,i){var o=r.length,s=o,u=!i;if(null==e)return!s;for(e=Object(e);o--;){var c=r[o];if(u&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++o<s;){var l=(c=r[o])[0],f=e[l],d=c[1];if(u&&c[2]){if(void 0===f&&!(l in e))return!1}else{var p=new n;if(i)var h=i(f,d,l,e,t,p);if(!(void 0===h?a(d,f,3,i,p):h))return!1}}return!0}},function(e,t,r){var n=r(29),a=r(89),i=r(192),o=r(194),s=r(39),u=r(15),c=r(35),l=r(51),f="[object Object]",d=Object.prototype.hasOwnProperty;e.exports=function(e,t,r,p,h,m){var v=u(e),y=u(t),g=v?"[object Array]":s(e),b=y?"[object Array]":s(t),I=(g="[object Arguments]"==g?f:g)==f,w=(b="[object Arguments]"==b?f:b)==f,S=g==b;if(S&&c(e)){if(!c(t))return!1;v=!0,I=!1}if(S&&!I)return m||(m=new n),v||l(e)?a(e,t,r,p,h,m):i(e,t,g,r,p,h,m);if(!(1&r)){var P=I&&d.call(e,"__wrapped__"),D=w&&d.call(t,"__wrapped__");if(P||D){var E=P?e.value():e,O=D?t.value():t;return m||(m=new n),h(E,O,r,p,m)}}return!!S&&(m||(m=new n),o(e,t,r,p,h,m))}},function(e,t){e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},function(e,t){e.exports=function(e){return this.__data__.has(e)}},function(e,t){e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}},function(e,t,r){var n=r(26),a=r(85),i=r(25),o=r(89),s=r(193),u=r(59),c=n?n.prototype:void 0,l=c?c.valueOf:void 0;e.exports=function(e,t,r,n,c,f,d){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!f(new a(e),new a(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return i(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var p=s;case"[object Set]":var h=1&n;if(p||(p=u),e.size!=t.size&&!h)return!1;var m=d.get(e);if(m)return m==t;n|=2,d.set(e,t);var v=o(p(e),p(t),n,c,f,d);return d.delete(e),v;case"[object Symbol]":if(l)return l.call(e)==l.call(t)}return!1}},function(e,t){e.exports=function(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}},function(e,t,r){var n=r(82),a=Object.prototype.hasOwnProperty;e.exports=function(e,t,r,i,o,s){var u=1&r,c=n(e),l=c.length;if(l!=n(t).length&&!u)return!1;for(var f=l;f--;){var d=c[f];if(!(u?d in t:a.call(t,d)))return!1}var p=s.get(e);if(p&&s.get(t))return p==t;var h=!0;s.set(e,t),s.set(t,e);for(var m=u;++f<l;){var v=e[d=c[f]],y=t[d];if(i)var g=u?i(y,v,d,t,e,s):i(v,y,d,e,t,s);if(!(void 0===g?v===y||o(v,y,r,i,s):g)){h=!1;break}m||(m="constructor"==d)}if(h&&!m){var b=e.constructor,I=t.constructor;b==I||!("constructor"in e)||!("constructor"in t)||"function"==typeof b&&b instanceof b&&"function"==typeof I&&I instanceof I||(h=!1)}return s.delete(e),s.delete(t),h}},function(e,t,r){var n=r(92),a=r(34);e.exports=function(e){for(var t=a(e),r=t.length;r--;){var i=t[r],o=e[i];t[r]=[i,o,n(o)]}return t}},function(e,t,r){var n=r(88),a=r(197),i=r(204),o=r(60),s=r(92),u=r(93),c=r(40);e.exports=function(e,t){return o(e)&&s(t)?u(c(e),t):function(r){var o=a(r,e);return void 0===o&&o===t?i(r,e):n(t,o,3)}}},function(e,t,r){var n=r(94);e.exports=function(e,t,r){var a=null==e?void 0:n(e,t);return void 0===a?r:a}},function(e,t,r){var n=r(199),a=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,o=n((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(a,(function(e,r,n,a){t.push(n?a.replace(i,"$1"):r||e)})),t}));e.exports=o},function(e,t,r){var n=r(200);e.exports=function(e){var t=n(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}},function(e,t,r){var n=r(47);function a(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var r=function(){var n=arguments,a=t?t.apply(this,n):n[0],i=r.cache;if(i.has(a))return i.get(a);var o=e.apply(this,n);return r.cache=i.set(a,o)||i,o};return r.cache=new(a.Cache||n),r}a.Cache=n,e.exports=a},function(e,t,r){var n=r(202);e.exports=function(e){return null==e?"":n(e)}},function(e,t,r){var n=r(26),a=r(203),i=r(15),o=r(61),s=n?n.prototype:void 0,u=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(i(t))return a(t,e)+"";if(o(t))return u?u.call(t):"";var r=t+"";return"0"==r&&1/t==-1/0?"-0":r}},function(e,t){e.exports=function(e,t){for(var r=-1,n=null==e?0:e.length,a=Array(n);++r<n;)a[r]=t(e[r],r,e);return a}},function(e,t,r){var n=r(205),a=r(206);e.exports=function(e,t){return null!=e&&a(e,t,n)}},function(e,t){e.exports=function(e,t){return null!=e&&t in Object(e)}},function(e,t,r){var n=r(95),a=r(49),i=r(15),o=r(50),s=r(52),u=r(40);e.exports=function(e,t,r){for(var c=-1,l=(t=n(t,e)).length,f=!1;++c<l;){var d=u(t[c]);if(!(f=null!=e&&r(e,d)))break;e=e[d]}return f||++c!=l?f:!!(l=null==e?0:e.length)&&s(l)&&o(d,l)&&(i(e)||a(e))}},function(e,t,r){var n=r(208),a=r(209),i=r(60),o=r(40);e.exports=function(e){return i(e)?n(o(e)):a(e)}},function(e,t){e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},function(e,t,r){var n=r(94);e.exports=function(e){return function(t){return n(t,e)}}},function(e,t,r){var n=r(90),a=r(211),i=r(216),o=r(91),s=r(217),u=r(59);e.exports=function(e,t,r){var c=-1,l=a,f=e.length,d=!0,p=[],h=p;if(r)d=!1,l=i;else if(f>=200){var m=t?null:s(e);if(m)return u(m);d=!1,l=o,h=new n}else h=t?[]:p;e:for(;++c<f;){var v=e[c],y=t?t(v):v;if(v=r||0!==v?v:0,d&&y==y){for(var g=h.length;g--;)if(h[g]===y)continue e;t&&h.push(y),p.push(v)}else l(h,y,r)||(h!==p&&h.push(y),p.push(v))}return p}},function(e,t,r){var n=r(212);e.exports=function(e,t){return!!(null==e?0:e.length)&&n(e,t,0)>-1}},function(e,t,r){var n=r(213),a=r(214),i=r(215);e.exports=function(e,t,r){return t==t?i(e,t,r):n(e,a,r)}},function(e,t){e.exports=function(e,t,r,n){for(var a=e.length,i=r+(n?1:-1);n?i--:++i<a;)if(t(e[i],i,e))return i;return-1}},function(e,t){e.exports=function(e){return e!=e}},function(e,t){e.exports=function(e,t,r){for(var n=r-1,a=e.length;++n<a;)if(e[n]===t)return n;return-1}},function(e,t){e.exports=function(e,t,r){for(var n=-1,a=null==e?0:e.length;++n<a;)if(r(t,e[n]))return!0;return!1}},function(e,t,r){var n=r(84),a=r(218),i=r(59),o=n&&1/i(new n([,-0]))[1]==1/0?function(e){return new n(e)}:a;e.exports=o},function(e,t){e.exports=function(){}},function(e,t,r){var n=r(29),a=r(96),i=r(220),o=r(222),s=r(16),u=r(38),c=r(97);e.exports=function e(t,r,l,f,d){t!==r&&i(r,(function(i,u){if(d||(d=new n),s(i))o(t,r,u,l,e,f,d);else{var p=f?f(c(t,u),i,u+"",t,r,d):void 0;void 0===p&&(p=i),a(t,u,p)}}),u)}},function(e,t,r){var n=r(221)();e.exports=n},function(e,t){e.exports=function(e){return function(t,r,n){for(var a=-1,i=Object(t),o=n(t),s=o.length;s--;){var u=o[e?s:++a];if(!1===r(i[u],u,i))break}return t}}},function(e,t,r){var n=r(96),a=r(77),i=r(86),o=r(78),s=r(87),u=r(49),c=r(15),l=r(223),f=r(35),d=r(46),p=r(16),h=r(224),m=r(51),v=r(97),y=r(225);e.exports=function(e,t,r,g,b,I,w){var S=v(e,r),P=v(t,r),D=w.get(P);if(D)n(e,r,D);else{var E=I?I(S,P,r+"",e,t,w):void 0,O=void 0===E;if(O){var x=c(P),_=!x&&f(P),k=!x&&!_&&m(P);E=P,x||_||k?c(S)?E=S:l(S)?E=o(S):_?(O=!1,E=a(P,!0)):k?(O=!1,E=i(P,!0)):E=[]:h(P)||u(P)?(E=S,u(S)?E=y(S):p(S)&&!d(S)||(E=s(P))):O=!1}O&&(w.set(P,E),b(E,P,g,I,w),w.delete(P)),n(e,r,E)}}},function(e,t,r){var n=r(37),a=r(17);e.exports=function(e){return a(e)&&n(e)}},function(e,t,r){var n=r(23),a=r(57),i=r(17),o=Function.prototype,s=Object.prototype,u=o.toString,c=s.hasOwnProperty,l=u.call(Object);e.exports=function(e){if(!i(e)||"[object Object]"!=n(e))return!1;var t=a(e);if(null===t)return!0;var r=c.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&u.call(r)==l}},function(e,t,r){var n=r(27),a=r(38);e.exports=function(e){return n(e,a(e))}},function(e,t,r){var n=r(227),a=r(234);e.exports=function(e){return n((function(t,r){var n=-1,i=r.length,o=i>1?r[i-1]:void 0,s=i>2?r[2]:void 0;for(o=e.length>3&&"function"==typeof o?(i--,o):void 0,s&&a(r[0],r[1],s)&&(o=i<3?void 0:o,i=1),t=Object(t);++n<i;){var u=r[n];u&&e(t,u,n,o)}return t}))}},function(e,t,r){var n=r(62),a=r(228),i=r(230);e.exports=function(e,t){return i(a(e,t,n),e+"")}},function(e,t,r){var n=r(229),a=Math.max;e.exports=function(e,t,r){return t=a(void 0===t?e.length-1:t,0),function(){for(var i=arguments,o=-1,s=a(i.length-t,0),u=Array(s);++o<s;)u[o]=i[t+o];o=-1;for(var c=Array(t+1);++o<t;)c[o]=i[o];return c[t]=r(u),n(e,this,c)}}},function(e,t){e.exports=function(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}},function(e,t,r){var n=r(231),a=r(233)(n);e.exports=a},function(e,t,r){var n=r(232),a=r(74),i=r(62),o=a?function(e,t){return a(e,"toString",{configurable:!0,enumerable:!1,value:n(t),writable:!0})}:i;e.exports=o},function(e,t){e.exports=function(e){return function(){return e}}},function(e,t){var r=Date.now;e.exports=function(e){var t=0,n=0;return function(){var a=r(),i=16-(a-n);if(n=a,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}},function(e,t,r){var n=r(25),a=r(37),i=r(50),o=r(16);e.exports=function(e,t,r){if(!o(r))return!1;var s=typeof t;return!!("number"==s?a(r)&&i(t,r.length):"string"==s&&t in r)&&n(r[t],e)}},function(e,t,r){"use strict";var n=r(63),a=r(24),i=r(65),o=r(99),s=r(100),u=a.ucs2length,c=r(64),l=i.Validation;function f(e,t,r){var n=p.call(this,e,t,r);return n>=0?{index:n,compiling:!0}:(n=this._compilations.length,this._compilations[n]={schema:e,root:t,baseId:r},{index:n,compiling:!1})}function d(e,t,r){var n=p.call(this,e,t,r);n>=0&&this._compilations.splice(n,1)}function p(e,t,r){for(var n=0;n<this._compilations.length;n++){var a=this._compilations[n];if(a.schema==e&&a.root==t&&a.baseId==r)return n}return-1}function h(e,t){return"var pattern"+e+" = new RegExp("+a.toQuotedString(t[e])+");"}function m(e){return"var default"+e+" = defaults["+e+"];"}function v(e,t){return void 0===t[e]?"":"var refVal"+e+" = refVal["+e+"];"}function y(e){return"var customRule"+e+" = customRules["+e+"];"}function g(e,t){if(!e.length)return"";for(var r="",n=0;n<e.length;n++)r+=t(n,e);return r}e.exports=function e(t,r,p,b){var I=this,w=this._opts,S=[void 0],P={},D=[],E={},O=[],x={},_=[];r=r||{schema:t,refVal:S,refs:P};var k=f.call(this,t,r,b),j=this._compilations[k.index];if(k.compiling)return j.callValidate=function e(){var t=j.validate,r=t.apply(this,arguments);return e.errors=t.errors,r};var T=this._formats,R=this.RULES;try{var A=U(t,r,p,b);j.validate=A;var M=j.callValidate;return M&&(M.schema=A.schema,M.errors=null,M.refs=A.refs,M.refVal=A.refVal,M.root=A.root,M.$async=A.$async,w.sourceCode&&(M.source=A.source)),A}finally{d.call(this,t,r,b)}function U(t,o,f,d){var p=!o||o&&o.schema==t;if(o.schema!=r.schema)return e.call(I,t,o,f,d);var b,E=!0===t.$async,x=s({isTop:!0,schema:t,isRoot:p,baseId:d,root:o,schemaPath:"",errSchemaPath:"#",errorPath:'""',MissingRefError:i.MissingRef,RULES:R,validate:s,util:a,resolve:n,resolveRef:N,usePattern:L,useDefault:V,useCustomRule:q,opts:w,formats:T,logger:I.logger,self:I});x=g(S,v)+g(D,h)+g(O,m)+g(_,y)+x,w.processCode&&(x=w.processCode(x));try{b=new Function("self","RULES","formats","root","refVal","defaults","customRules","equal","ucs2length","ValidationError",x)(I,R,T,r,S,O,_,c,u,l),S[0]=b}catch(e){throw I.logger.error("Error compiling schema, function code:",x),e}return b.schema=t,b.errors=null,b.refs=P,b.refVal=S,b.root=p?b:o,E&&(b.$async=!0),!0===w.sourceCode&&(b.source={code:x,patterns:D,defaults:O}),b}function N(t,a,i){a=n.url(t,a);var o,s,u=P[a];if(void 0!==u)return F(o=S[u],s="refVal["+u+"]");if(!i&&r.refs){var c=r.refs[a];if(void 0!==c)return F(o=r.refVal[c],s=C(a,o))}s=C(a);var l=n.call(I,U,r,a);if(void 0===l){var f=p&&p[a];f&&(l=n.inlineRef(f,w.inlineRefs)?f:e.call(I,f,r,p,t))}if(void 0!==l)return function(e,t){var r=P[e];S[r]=t}(a,l),F(l,s);!function(e){delete P[e]}(a)}function C(e,t){var r=S.length;return S[r]=t,P[e]=r,"refVal"+r}function F(e,t){return"object"==typeof e||"boolean"==typeof e?{code:t,schema:e,inline:!0}:{code:t,$async:e&&!!e.$async}}function L(e){var t=E[e];return void 0===t&&(t=E[e]=D.length,D[t]=e),"pattern"+t}function V(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return a.toQuotedString(e);case"object":if(null===e)return"null";var t=o(e),r=x[t];return void 0===r&&(r=x[t]=O.length,O[r]=e),"default"+r}}function q(e,t,r,n){if(!1!==I._opts.validateSchema){var a=e.definition.dependencies;if(a&&!a.every((function(e){return Object.prototype.hasOwnProperty.call(r,e)})))throw new Error("parent schema must have all required keywords: "+a.join(","));var i=e.definition.validateSchema;if(i)if(!i(t)){var o="keyword schema is invalid: "+I.errorsText(i.errors);if("log"!=I._opts.validateSchema)throw new Error(o);I.logger.error(o)}}var s,u=e.definition.compile,c=e.definition.inline,l=e.definition.macro;if(u)s=u.call(I,t,r,n);else if(l)s=l.call(I,t,r,n),!1!==w.validateSchema&&I.validateSchema(s,!0);else if(c)s=c.call(I,n,e.keyword,t,r);else if(!(s=e.definition.validate))return;if(void 0===s)throw new Error('custom keyword "'+e.keyword+'"failed to compile');var f=_.length;return _[f]=s,{code:"customRule"+f,validate:s}}}},function(e,t,r){!function(e){"use strict";function t(){for(var e=arguments.length,t=Array(e),r=0;r<e;r++)t[r]=arguments[r];if(t.length>1){t[0]=t[0].slice(0,-1);for(var n=t.length-1,a=1;a<n;++a)t[a]=t[a].slice(1,-1);return t[n]=t[n].slice(1),t.join("")}return t[0]}function r(e){return"(?:"+e+")"}function n(e){return void 0===e?"undefined":null===e?"null":Object.prototype.toString.call(e).split(" ").pop().split("]").shift().toLowerCase()}function a(e){return e.toUpperCase()}function i(e){var n=t("[0-9]","[A-Fa-f]"),a=r(r("%[EFef]"+n+"%"+n+n+"%"+n+n)+"|"+r("%[89A-Fa-f]"+n+"%"+n+n)+"|"+r("%"+n+n)),i="[\\!\\$\\&\\'\\(\\)\\*\\+\\,\\;\\=]",o=t("[\\:\\/\\?\\#\\[\\]\\@]",i),s=e?"[\\uE000-\\uF8FF]":"[]",u=t("[A-Za-z]","[0-9]","[\\-\\.\\_\\~]",e?"[\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]":"[]"),c=r("[A-Za-z]"+t("[A-Za-z]","[0-9]","[\\+\\-\\.]")+"*"),l=r(r(a+"|"+t(u,i,"[\\:]"))+"*"),f=(r(r("25[0-5]")+"|"+r("2[0-4][0-9]")+"|"+r("1[0-9][0-9]")+"|"+r("[1-9][0-9]")+"|[0-9]"),r(r("25[0-5]")+"|"+r("2[0-4][0-9]")+"|"+r("1[0-9][0-9]")+"|"+r("0?[1-9][0-9]")+"|0?0?[0-9]")),d=r(f+"\\."+f+"\\."+f+"\\."+f),p=r(n+"{1,4}"),h=r(r(p+"\\:"+p)+"|"+d),m=r(r(p+"\\:")+"{6}"+h),v=r("\\:\\:"+r(p+"\\:")+"{5}"+h),y=r(r(p)+"?\\:\\:"+r(p+"\\:")+"{4}"+h),g=r(r(r(p+"\\:")+"{0,1}"+p)+"?\\:\\:"+r(p+"\\:")+"{3}"+h),b=r(r(r(p+"\\:")+"{0,2}"+p)+"?\\:\\:"+r(p+"\\:")+"{2}"+h),I=r(r(r(p+"\\:")+"{0,3}"+p)+"?\\:\\:"+p+"\\:"+h),w=r(r(r(p+"\\:")+"{0,4}"+p)+"?\\:\\:"+h),S=r(r(r(p+"\\:")+"{0,5}"+p)+"?\\:\\:"+p),P=r(r(r(p+"\\:")+"{0,6}"+p)+"?\\:\\:"),D=r([m,v,y,g,b,I,w,S,P].join("|")),E=r(r(u+"|"+a)+"+"),O=(r(D+"\\%25"+E),r(D+r("\\%25|\\%(?!"+n+"{2})")+E)),x=r("[vV]"+n+"+\\."+t(u,i,"[\\:]")+"+"),_=r("\\["+r(O+"|"+D+"|"+x)+"\\]"),k=r(r(a+"|"+t(u,i))+"*"),j=r(_+"|"+d+"(?!"+k+")|"+k),T=r("[0-9]*"),R=r(r(l+"@")+"?"+j+r("\\:"+T)+"?"),A=r(a+"|"+t(u,i,"[\\:\\@]")),M=r(A+"*"),U=r(A+"+"),N=r(r(a+"|"+t(u,i,"[\\@]"))+"+"),C=r(r("\\/"+M)+"*"),F=r("\\/"+r(U+C)+"?"),L=r(N+C),V=r(U+C),q="(?!"+A+")",$=(r(C+"|"+F+"|"+L+"|"+V+"|"+q),r(r(A+"|"+t("[\\/\\?]",s))+"*")),z=r(r(A+"|[\\/\\?]")+"*"),G=r(r("\\/\\/"+R+C)+"|"+F+"|"+V+"|"+q),B=r(c+"\\:"+G+r("\\?"+$)+"?"+r("\\#"+z)+"?"),H=r(r("\\/\\/"+R+C)+"|"+F+"|"+L+"|"+q),W=r(H+r("\\?"+$)+"?"+r("\\#"+z)+"?");return r(B+"|"+W),r(c+"\\:"+G+r("\\?"+$)+"?"),r(r("\\/\\/("+r("("+l+")@")+"?("+j+")"+r("\\:("+T+")")+"?)")+"?("+C+"|"+F+"|"+V+"|"+q+")"),r("\\?("+$+")"),r("\\#("+z+")"),r(r("\\/\\/("+r("("+l+")@")+"?("+j+")"+r("\\:("+T+")")+"?)")+"?("+C+"|"+F+"|"+L+"|"+q+")"),r("\\?("+$+")"),r("\\#("+z+")"),r(r("\\/\\/("+r("("+l+")@")+"?("+j+")"+r("\\:("+T+")")+"?)")+"?("+C+"|"+F+"|"+V+"|"+q+")"),r("\\?("+$+")"),r("\\#("+z+")"),r("("+l+")@"),r("\\:("+T+")"),{NOT_SCHEME:new RegExp(t("[^]","[A-Za-z]","[0-9]","[\\+\\-\\.]"),"g"),NOT_USERINFO:new RegExp(t("[^\\%\\:]",u,i),"g"),NOT_HOST:new RegExp(t("[^\\%\\[\\]\\:]",u,i),"g"),NOT_PATH:new RegExp(t("[^\\%\\/\\:\\@]",u,i),"g"),NOT_PATH_NOSCHEME:new RegExp(t("[^\\%\\/\\@]",u,i),"g"),NOT_QUERY:new RegExp(t("[^\\%]",u,i,"[\\:\\@\\/\\?]",s),"g"),NOT_FRAGMENT:new RegExp(t("[^\\%]",u,i,"[\\:\\@\\/\\?]"),"g"),ESCAPE:new RegExp(t("[^]",u,i),"g"),UNRESERVED:new RegExp(u,"g"),OTHER_CHARS:new RegExp(t("[^\\%]",u,o),"g"),PCT_ENCODED:new RegExp(a,"g"),IPV4ADDRESS:new RegExp("^("+d+")$"),IPV6ADDRESS:new RegExp("^\\[?("+D+")"+r(r("\\%25|\\%(?!"+n+"{2})")+"("+E+")")+"?\\]?$")}}var o=i(!1),s=i(!0),u=function(e,t){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,t){var r=[],n=!0,a=!1,i=void 0;try{for(var o,s=e[Symbol.iterator]();!(n=(o=s.next()).done)&&(r.push(o.value),!t||r.length!==t);n=!0);}catch(e){a=!0,i=e}finally{try{!n&&s.return&&s.return()}finally{if(a)throw i}}return r}(e,t);throw new TypeError("Invalid attempt to destructure non-iterable instance")},c=2147483647,l=/^xn--/,f=/[^\0-\x7E]/,d=/[\x2E\u3002\uFF0E\uFF61]/g,p={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},h=Math.floor,m=String.fromCharCode;function v(e){throw new RangeError(p[e])}function y(e,t){var r=e.split("@"),n="";r.length>1&&(n=r[0]+"@",e=r[1]);var a=function(e,t){for(var r=[],n=e.length;n--;)r[n]=t(e[n]);return r}((e=e.replace(d,".")).split("."),t).join(".");return n+a}function g(e){for(var t=[],r=0,n=e.length;r<n;){var a=e.charCodeAt(r++);if(a>=55296&&a<=56319&&r<n){var i=e.charCodeAt(r++);56320==(64512&i)?t.push(((1023&a)<<10)+(1023&i)+65536):(t.push(a),r--)}else t.push(a)}return t}var b=function(e,t){return e+22+75*(e<26)-((0!=t)<<5)},I=function(e,t,r){var n=0;for(e=r?h(e/700):e>>1,e+=h(e/t);e>455;n+=36)e=h(e/35);return h(n+36*e/(e+38))},w=function(e){var t,r=[],n=e.length,a=0,i=128,o=72,s=e.lastIndexOf("-");s<0&&(s=0);for(var u=0;u<s;++u)e.charCodeAt(u)>=128&&v("not-basic"),r.push(e.charCodeAt(u));for(var l=s>0?s+1:0;l<n;){for(var f=a,d=1,p=36;;p+=36){l>=n&&v("invalid-input");var m=(t=e.charCodeAt(l++))-48<10?t-22:t-65<26?t-65:t-97<26?t-97:36;(m>=36||m>h((c-a)/d))&&v("overflow"),a+=m*d;var y=p<=o?1:p>=o+26?26:p-o;if(m<y)break;var g=36-y;d>h(c/g)&&v("overflow"),d*=g}var b=r.length+1;o=I(a-f,b,0==f),h(a/b)>c-i&&v("overflow"),i+=h(a/b),a%=b,r.splice(a++,0,i)}return String.fromCodePoint.apply(String,r)},S=function(e){var t=[],r=(e=g(e)).length,n=128,a=0,i=72,o=!0,s=!1,u=void 0;try{for(var l,f=e[Symbol.iterator]();!(o=(l=f.next()).done);o=!0){var d=l.value;d<128&&t.push(m(d))}}catch(e){s=!0,u=e}finally{try{!o&&f.return&&f.return()}finally{if(s)throw u}}var p=t.length,y=p;for(p&&t.push("-");y<r;){var w=c,S=!0,P=!1,D=void 0;try{for(var E,O=e[Symbol.iterator]();!(S=(E=O.next()).done);S=!0){var x=E.value;x>=n&&x<w&&(w=x)}}catch(e){P=!0,D=e}finally{try{!S&&O.return&&O.return()}finally{if(P)throw D}}var _=y+1;w-n>h((c-a)/_)&&v("overflow"),a+=(w-n)*_,n=w;var k=!0,j=!1,T=void 0;try{for(var R,A=e[Symbol.iterator]();!(k=(R=A.next()).done);k=!0){var M=R.value;if(M<n&&++a>c&&v("overflow"),M==n){for(var U=a,N=36;;N+=36){var C=N<=i?1:N>=i+26?26:N-i;if(U<C)break;var F=U-C,L=36-C;t.push(m(b(C+F%L,0))),U=h(F/L)}t.push(m(b(U,0))),i=I(a,_,y==p),a=0,++y}}}catch(e){j=!0,T=e}finally{try{!k&&A.return&&A.return()}finally{if(j)throw T}}++a,++n}return t.join("")},P=function(e){return y(e,(function(e){return f.test(e)?"xn--"+S(e):e}))},D=function(e){return y(e,(function(e){return l.test(e)?w(e.slice(4).toLowerCase()):e}))},E={};function O(e){var t=e.charCodeAt(0);return t<16?"%0"+t.toString(16).toUpperCase():t<128?"%"+t.toString(16).toUpperCase():t<2048?"%"+(t>>6|192).toString(16).toUpperCase()+"%"+(63&t|128).toString(16).toUpperCase():"%"+(t>>12|224).toString(16).toUpperCase()+"%"+(t>>6&63|128).toString(16).toUpperCase()+"%"+(63&t|128).toString(16).toUpperCase()}function x(e){for(var t="",r=0,n=e.length;r<n;){var a=parseInt(e.substr(r+1,2),16);if(a<128)t+=String.fromCharCode(a),r+=3;else if(a>=194&&a<224){if(n-r>=6){var i=parseInt(e.substr(r+4,2),16);t+=String.fromCharCode((31&a)<<6|63&i)}else t+=e.substr(r,6);r+=6}else if(a>=224){if(n-r>=9){var o=parseInt(e.substr(r+4,2),16),s=parseInt(e.substr(r+7,2),16);t+=String.fromCharCode((15&a)<<12|(63&o)<<6|63&s)}else t+=e.substr(r,9);r+=9}else t+=e.substr(r,3),r+=3}return t}function _(e,t){function r(e){var r=x(e);return r.match(t.UNRESERVED)?r:e}return e.scheme&&(e.scheme=String(e.scheme).replace(t.PCT_ENCODED,r).toLowerCase().replace(t.NOT_SCHEME,"")),void 0!==e.userinfo&&(e.userinfo=String(e.userinfo).replace(t.PCT_ENCODED,r).replace(t.NOT_USERINFO,O).replace(t.PCT_ENCODED,a)),void 0!==e.host&&(e.host=String(e.host).replace(t.PCT_ENCODED,r).toLowerCase().replace(t.NOT_HOST,O).replace(t.PCT_ENCODED,a)),void 0!==e.path&&(e.path=String(e.path).replace(t.PCT_ENCODED,r).replace(e.scheme?t.NOT_PATH:t.NOT_PATH_NOSCHEME,O).replace(t.PCT_ENCODED,a)),void 0!==e.query&&(e.query=String(e.query).replace(t.PCT_ENCODED,r).replace(t.NOT_QUERY,O).replace(t.PCT_ENCODED,a)),void 0!==e.fragment&&(e.fragment=String(e.fragment).replace(t.PCT_ENCODED,r).replace(t.NOT_FRAGMENT,O).replace(t.PCT_ENCODED,a)),e}function k(e){return e.replace(/^0*(.*)/,"$1")||"0"}function j(e,t){var r=e.match(t.IPV4ADDRESS)||[],n=u(r,2)[1];return n?n.split(".").map(k).join("."):e}function T(e,t){var r=e.match(t.IPV6ADDRESS)||[],n=u(r,3),a=n[1],i=n[2];if(a){for(var o=a.toLowerCase().split("::").reverse(),s=u(o,2),c=s[0],l=s[1],f=l?l.split(":").map(k):[],d=c.split(":").map(k),p=t.IPV4ADDRESS.test(d[d.length-1]),h=p?7:8,m=d.length-h,v=Array(h),y=0;y<h;++y)v[y]=f[y]||d[m+y]||"";p&&(v[h-1]=j(v[h-1],t));var g=v.reduce((function(e,t,r){if(!t||"0"===t){var n=e[e.length-1];n&&n.index+n.length===r?n.length++:e.push({index:r,length:1})}return e}),[]).sort((function(e,t){return t.length-e.length}))[0],b=void 0;if(g&&g.length>1){var I=v.slice(0,g.index),w=v.slice(g.index+g.length);b=I.join(":")+"::"+w.join(":")}else b=v.join(":");return i&&(b+="%"+i),b}return e}var R=/^(?:([^:\/?#]+):)?(?:\/\/((?:([^\/?#@]*)@)?(\[[^\/?#\]]+\]|[^\/?#:]*)(?:\:(\d*))?))?([^?#]*)(?:\?([^#]*))?(?:#((?:.|\n|\r)*))?/i,A=void 0==="".match(/(){0}/)[1];function M(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r={},n=!1!==t.iri?s:o;"suffix"===t.reference&&(e=(t.scheme?t.scheme+":":"")+"//"+e);var a=e.match(R);if(a){A?(r.scheme=a[1],r.userinfo=a[3],r.host=a[4],r.port=parseInt(a[5],10),r.path=a[6]||"",r.query=a[7],r.fragment=a[8],isNaN(r.port)&&(r.port=a[5])):(r.scheme=a[1]||void 0,r.userinfo=-1!==e.indexOf("@")?a[3]:void 0,r.host=-1!==e.indexOf("//")?a[4]:void 0,r.port=parseInt(a[5],10),r.path=a[6]||"",r.query=-1!==e.indexOf("?")?a[7]:void 0,r.fragment=-1!==e.indexOf("#")?a[8]:void 0,isNaN(r.port)&&(r.port=e.match(/\/\/(?:.|\n)*\:(?:\/|\?|\#|$)/)?a[4]:void 0)),r.host&&(r.host=T(j(r.host,n),n)),void 0!==r.scheme||void 0!==r.userinfo||void 0!==r.host||void 0!==r.port||r.path||void 0!==r.query?void 0===r.scheme?r.reference="relative":void 0===r.fragment?r.reference="absolute":r.reference="uri":r.reference="same-document",t.reference&&"suffix"!==t.reference&&t.reference!==r.reference&&(r.error=r.error||"URI is not a "+t.reference+" reference.");var i=E[(t.scheme||r.scheme||"").toLowerCase()];if(t.unicodeSupport||i&&i.unicodeSupport)_(r,n);else{if(r.host&&(t.domainHost||i&&i.domainHost))try{r.host=P(r.host.replace(n.PCT_ENCODED,x).toLowerCase())}catch(e){r.error=r.error||"Host's domain name can not be converted to ASCII via punycode: "+e}_(r,o)}i&&i.parse&&i.parse(r,t)}else r.error=r.error||"URI can not be parsed.";return r}function U(e,t){var r=!1!==t.iri?s:o,n=[];return void 0!==e.userinfo&&(n.push(e.userinfo),n.push("@")),void 0!==e.host&&n.push(T(j(String(e.host),r),r).replace(r.IPV6ADDRESS,(function(e,t,r){return"["+t+(r?"%25"+r:"")+"]"}))),"number"==typeof e.port&&(n.push(":"),n.push(e.port.toString(10))),n.length?n.join(""):void 0}var N=/^\.\.?\//,C=/^\/\.(\/|$)/,F=/^\/\.\.(\/|$)/,L=/^\/?(?:.|\n)*?(?=\/|$)/;function V(e){for(var t=[];e.length;)if(e.match(N))e=e.replace(N,"");else if(e.match(C))e=e.replace(C,"/");else if(e.match(F))e=e.replace(F,"/"),t.pop();else if("."===e||".."===e)e="";else{var r=e.match(L);if(!r)throw new Error("Unexpected dot segment condition");var n=r[0];e=e.slice(n.length),t.push(n)}return t.join("")}function q(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.iri?s:o,n=[],a=E[(t.scheme||e.scheme||"").toLowerCase()];if(a&&a.serialize&&a.serialize(e,t),e.host)if(r.IPV6ADDRESS.test(e.host));else if(t.domainHost||a&&a.domainHost)try{e.host=t.iri?D(e.host):P(e.host.replace(r.PCT_ENCODED,x).toLowerCase())}catch(r){e.error=e.error||"Host's domain name can not be converted to "+(t.iri?"Unicode":"ASCII")+" via punycode: "+r}_(e,r),"suffix"!==t.reference&&e.scheme&&(n.push(e.scheme),n.push(":"));var i=U(e,t);if(void 0!==i&&("suffix"!==t.reference&&n.push("//"),n.push(i),e.path&&"/"!==e.path.charAt(0)&&n.push("/")),void 0!==e.path){var u=e.path;t.absolutePath||a&&a.absolutePath||(u=V(u)),void 0===i&&(u=u.replace(/^\/\//,"/%2F")),n.push(u)}return void 0!==e.query&&(n.push("?"),n.push(e.query)),void 0!==e.fragment&&(n.push("#"),n.push(e.fragment)),n.join("")}function $(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments[3],a={};return n||(e=M(q(e,r),r),t=M(q(t,r),r)),!(r=r||{}).tolerant&&t.scheme?(a.scheme=t.scheme,a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=V(t.path||""),a.query=t.query):(void 0!==t.userinfo||void 0!==t.host||void 0!==t.port?(a.userinfo=t.userinfo,a.host=t.host,a.port=t.port,a.path=V(t.path||""),a.query=t.query):(t.path?("/"===t.path.charAt(0)?a.path=V(t.path):(void 0===e.userinfo&&void 0===e.host&&void 0===e.port||e.path?e.path?a.path=e.path.slice(0,e.path.lastIndexOf("/")+1)+t.path:a.path=t.path:a.path="/"+t.path,a.path=V(a.path)),a.query=t.query):(a.path=e.path,void 0!==t.query?a.query=t.query:a.query=e.query),a.userinfo=e.userinfo,a.host=e.host,a.port=e.port),a.scheme=e.scheme),a.fragment=t.fragment,a}function z(e,t){return e&&e.toString().replace(t&&t.iri?s.PCT_ENCODED:o.PCT_ENCODED,x)}var G={scheme:"http",domainHost:!0,parse:function(e,t){return e.host||(e.error=e.error||"HTTP URIs must have a host."),e},serialize:function(e,t){return e.port!==("https"!==String(e.scheme).toLowerCase()?80:443)&&""!==e.port||(e.port=void 0),e.path||(e.path="/"),e}},B={scheme:"https",domainHost:G.domainHost,parse:G.parse,serialize:G.serialize},H={},W="[A-Za-z0-9\\-\\.\\_\\~\\xA0-\\u200D\\u2010-\\u2029\\u202F-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]",Q="[0-9A-Fa-f]",K=r(r("%[EFef]"+Q+"%"+Q+Q+"%"+Q+Q)+"|"+r("%[89A-Fa-f]"+Q+"%"+Q+Q)+"|"+r("%"+Q+Q)),J=t("[\\!\\$\\%\\'\\(\\)\\*\\+\\,\\-\\.0-9\\<\\>A-Z\\x5E-\\x7E]",'[\\"\\\\]'),Y=new RegExp(W,"g"),X=new RegExp(K,"g"),Z=new RegExp(t("[^]","[A-Za-z0-9\\!\\$\\%\\'\\*\\+\\-\\^\\_\\`\\{\\|\\}\\~]","[\\.]",'[\\"]',J),"g"),ee=new RegExp(t("[^]",W,"[\\!\\$\\'\\(\\)\\*\\+\\,\\;\\:\\@]"),"g"),te=ee;function re(e){var t=x(e);return t.match(Y)?t:e}var ne={scheme:"mailto",parse:function(e,t){var r=e,n=r.to=r.path?r.path.split(","):[];if(r.path=void 0,r.query){for(var a=!1,i={},o=r.query.split("&"),s=0,u=o.length;s<u;++s){var c=o[s].split("=");switch(c[0]){case"to":for(var l=c[1].split(","),f=0,d=l.length;f<d;++f)n.push(l[f]);break;case"subject":r.subject=z(c[1],t);break;case"body":r.body=z(c[1],t);break;default:a=!0,i[z(c[0],t)]=z(c[1],t)}}a&&(r.headers=i)}r.query=void 0;for(var p=0,h=n.length;p<h;++p){var m=n[p].split("@");if(m[0]=z(m[0]),t.unicodeSupport)m[1]=z(m[1],t).toLowerCase();else try{m[1]=P(z(m[1],t).toLowerCase())}catch(e){r.error=r.error||"Email address's domain name can not be converted to ASCII via punycode: "+e}n[p]=m.join("@")}return r},serialize:function(e,t){var r,n=e,i=null!=(r=e.to)?r instanceof Array?r:"number"!=typeof r.length||r.split||r.setInterval||r.call?[r]:Array.prototype.slice.call(r):[];if(i){for(var o=0,s=i.length;o<s;++o){var u=String(i[o]),c=u.lastIndexOf("@"),l=u.slice(0,c).replace(X,re).replace(X,a).replace(Z,O),f=u.slice(c+1);try{f=t.iri?D(f):P(z(f,t).toLowerCase())}catch(e){n.error=n.error||"Email address's domain name can not be converted to "+(t.iri?"Unicode":"ASCII")+" via punycode: "+e}i[o]=l+"@"+f}n.path=i.join(",")}var d=e.headers=e.headers||{};e.subject&&(d.subject=e.subject),e.body&&(d.body=e.body);var p=[];for(var h in d)d[h]!==H[h]&&p.push(h.replace(X,re).replace(X,a).replace(ee,O)+"="+d[h].replace(X,re).replace(X,a).replace(te,O));return p.length&&(n.query=p.join("&")),n}},ae=/^([^\:]+)\:(.*)/,ie={scheme:"urn",parse:function(e,t){var r=e.path&&e.path.match(ae),n=e;if(r){var a=t.scheme||n.scheme||"urn",i=r[1].toLowerCase(),o=r[2],s=a+":"+(t.nid||i),u=E[s];n.nid=i,n.nss=o,n.path=void 0,u&&(n=u.parse(n,t))}else n.error=n.error||"URN can not be parsed.";return n},serialize:function(e,t){var r=t.scheme||e.scheme||"urn",n=e.nid,a=r+":"+(t.nid||n),i=E[a];i&&(e=i.serialize(e,t));var o=e,s=e.nss;return o.path=(n||t.nid)+":"+s,o}},oe=/^[0-9A-Fa-f]{8}(?:\-[0-9A-Fa-f]{4}){3}\-[0-9A-Fa-f]{12}$/,se={scheme:"urn:uuid",parse:function(e,t){var r=e;return r.uuid=r.nss,r.nss=void 0,t.tolerant||r.uuid&&r.uuid.match(oe)||(r.error=r.error||"UUID is not valid."),r},serialize:function(e,t){var r=e;return r.nss=(e.uuid||"").toLowerCase(),r}};E[G.scheme]=G,E[B.scheme]=B,E[ne.scheme]=ne,E[ie.scheme]=ie,E[se.scheme]=se,e.SCHEMES=E,e.pctEncChar=O,e.pctDecChars=x,e.parse=M,e.removeDotSegments=V,e.serialize=q,e.resolveComponents=$,e.resolve=function(e,t,r){var n=function(e,t){var r=e;if(t)for(var n in t)r[n]=t[n];return r}({scheme:"null"},r);return q($(M(e,n),M(t,n),n,!0),n)},e.normalize=function(e,t){return"string"==typeof e?e=q(M(e,t),t):"object"===n(e)&&(e=M(q(e,t),t)),e},e.equal=function(e,t,r){return"string"==typeof e?e=q(M(e,r),r):"object"===n(e)&&(e=q(e,r)),"string"==typeof t?t=q(M(t,r),r):"object"===n(t)&&(t=q(t,r)),e===t},e.escapeComponent=function(e,t){return e&&e.toString().replace(t&&t.iri?s.ESCAPE:o.ESCAPE,O)},e.unescapeComponent=z,Object.defineProperty(e,"__esModule",{value:!0})}(t)},function(e,t,r){"use strict";e.exports=function(e){for(var t,r=0,n=e.length,a=0;a<n;)r++,(t=e.charCodeAt(a++))>=55296&&t<=56319&&a<n&&56320==(64512&(t=e.charCodeAt(a)))&&a++;return r}},function(e,t,r){"use strict";var n=e.exports=function(e,t,r){"function"==typeof t&&(r=t,t={}),function e(t,r,a,i,o,s,u,c,l,f){if(i&&"object"==typeof i&&!Array.isArray(i)){for(var d in r(i,o,s,u,c,l,f),i){var p=i[d];if(Array.isArray(p)){if(d in n.arrayKeywords)for(var h=0;h<p.length;h++)e(t,r,a,p[h],o+"/"+d+"/"+h,s,o,d,i,h)}else if(d in n.propsKeywords){if(p&&"object"==typeof p)for(var m in p)e(t,r,a,p[m],o+"/"+d+"/"+m.replace(/~/g,"~0").replace(/\//g,"~1"),s,o,d,i,m)}else(d in n.keywords||t.allKeys&&!(d in n.skipKeywords))&&e(t,r,a,p,o+"/"+d,s,o,d,i)}a(i,o,s,u,c,l,f)}}(t,"function"==typeof(r=t.cb||r)?r:r.pre||function(){},r.post||function(){},e,"",e)};n.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0},n.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0},n.propsKeywords={definitions:!0,properties:!0,patternProperties:!0,dependencies:!0},n.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0}},function(e,t,r){"use strict";var n=e.exports=function(){this._cache={}};n.prototype.put=function(e,t){this._cache[e]=t},n.prototype.get=function(e){return this._cache[e]},n.prototype.del=function(e){delete this._cache[e]},n.prototype.clear=function(){this._cache={}}},function(e,t,r){"use strict";var n=r(24),a=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,i=[0,31,28,31,30,31,30,31,31,30,31,30,31],o=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d(?::?\d\d)?)?$/i,s=/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,u=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,c=/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,l=/^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i,f=/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,d=/^(?:\/(?:[^~/]|~0|~1)*)*$/,p=/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,h=/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;function m(e){return e="full"==e?"full":"fast",n.copy(m[e])}function v(e){var t=e.match(a);if(!t)return!1;var r=+t[1],n=+t[2],o=+t[3];return n>=1&&n<=12&&o>=1&&o<=(2==n&&function(e){return e%4==0&&(e%100!=0||e%400==0)}(r)?29:i[n])}function y(e,t){var r=e.match(o);if(!r)return!1;var n=r[1],a=r[2],i=r[3],s=r[5];return(n<=23&&a<=59&&i<=59||23==n&&59==a&&60==i)&&(!t||s)}e.exports=m,m.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,"date-time":/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,uri:/^(?:[a-z][a-z0-9+-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,"uri-template":c,url:l,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,hostname:s,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:w,uuid:f,"json-pointer":d,"json-pointer-uri-fragment":p,"relative-json-pointer":h},m.full={date:v,time:y,"date-time":function(e){var t=e.split(g);return 2==t.length&&v(t[0])&&y(t[1],!0)},uri:function(e){return b.test(e)&&u.test(e)},"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":c,url:l,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:s,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,ipv6:/^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,regex:w,uuid:f,"json-pointer":d,"json-pointer-uri-fragment":p,"relative-json-pointer":h};var g=/t|\s/i;var b=/\/|:/;var I=/[^\\]\\Z/;function w(e){if(I.test(e))return!1;try{return new RegExp(e),!0}catch(e){return!1}}},function(e,t,r){"use strict";var n=r(242),a=r(24).toHash;e.exports=function(){var e=[{type:"number",rules:[{maximum:["exclusiveMaximum"]},{minimum:["exclusiveMinimum"]},"multipleOf","format"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","items","contains","uniqueItems"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","propertyNames",{properties:["additionalProperties","patternProperties"]}]},{rules:["$ref","const","enum","not","anyOf","oneOf","allOf","if"]}],t=["type","$comment"];return e.all=a(t),e.types=a(["number","integer","string","array","object","boolean","null"]),e.forEach((function(r){r.rules=r.rules.map((function(r){var a;if("object"==typeof r){var i=Object.keys(r)[0];a=r[i],r=i,a.forEach((function(r){t.push(r),e.all[r]=!0}))}return t.push(r),e.all[r]={keyword:r,code:n[r],implements:a}})),e.all.$comment={keyword:"$comment",code:n.$comment},r.type&&(e.types[r.type]=r)})),e.keywords=a(t.concat(["$schema","$id","id","$data","$async","title","description","default","definitions","examples","readOnly","writeOnly","contentMediaType","contentEncoding","additionalItems","then","else"])),e.custom={},e}},function(e,t,r){"use strict";e.exports={$ref:r(243),allOf:r(244),anyOf:r(245),$comment:r(246),const:r(247),contains:r(248),dependencies:r(249),enum:r(250),format:r(251),if:r(252),items:r(253),maximum:r(101),minimum:r(101),maxItems:r(102),minItems:r(102),maxLength:r(103),minLength:r(103),maxProperties:r(104),minProperties:r(104),multipleOf:r(254),not:r(255),oneOf:r(256),pattern:r(257),properties:r(258),propertyNames:r(259),required:r(260),uniqueItems:r(261),validate:r(100)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a,i=" ",o=e.level,s=e.dataLevel,u=e.schema[t],c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(s||""),d="valid"+o;if("#"==u||"#/"==u)e.isRoot?(n=e.async,a="validate"):(n=!0===e.root.schema.$async,a="root.refVal[0]");else{var p=e.resolveRef(e.baseId,u,e.isRoot);if(void 0===p){var h=e.MissingRefError.message(e.baseId,u);if("fail"==e.opts.missingRefs){e.logger.error(h),(g=g||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '$ref' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { ref: '"+e.util.escapeQuotes(u)+"' } ",!1!==e.opts.messages&&(i+=" , message: 'can\\'t resolve reference "+e.util.escapeQuotes(u)+"' "),e.opts.verbose&&(i+=" , schema: "+e.util.toQuotedString(u)+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),i+=" } "):i+=" {} ";var m=i;i=g.pop(),!e.compositeRule&&l?e.async?i+=" throw new ValidationError(["+m+"]); ":i+=" validate.errors = ["+m+"]; return false; ":i+=" var err = "+m+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",l&&(i+=" if (false) { ")}else{if("ignore"!=e.opts.missingRefs)throw new e.MissingRefError(e.baseId,u,h);e.logger.warn(h),l&&(i+=" if (true) { ")}}else if(p.inline){var v=e.util.copy(e);v.level++;var y="valid"+v.level;v.schema=p.schema,v.schemaPath="",v.errSchemaPath=u,i+=" "+e.validate(v).replace(/validate\.schema/g,p.code)+" ",l&&(i+=" if ("+y+") { ")}else n=!0===p.$async||e.async&&!1!==p.$async,a=p.code}if(a){var g;(g=g||[]).push(i),i="",e.opts.passContext?i+=" "+a+".call(this, ":i+=" "+a+"( ",i+=" "+f+", (dataPath || '')",'""'!=e.errorPath&&(i+=" + "+e.errorPath);var b=i+=" , "+(s?"data"+(s-1||""):"parentData")+" , "+(s?e.dataPathArr[s]:"parentDataProperty")+", rootData) ";if(i=g.pop(),n){if(!e.async)throw new Error("async schema referenced by sync schema");l&&(i+=" var "+d+"; "),i+=" try { await "+b+"; ",l&&(i+=" "+d+" = true; "),i+=" } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; ",l&&(i+=" "+d+" = false; "),i+=" } ",l&&(i+=" if ("+d+") { ")}else i+=" if (!"+b+") { if (vErrors === null) vErrors = "+a+".errors; else vErrors = vErrors.concat("+a+".errors); errors = vErrors.length; } ",l&&(i+=" else { ")}return i}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.schema[t],i=e.schemaPath+e.util.getProperty(t),o=e.errSchemaPath+"/"+t,s=!e.opts.allErrors,u=e.util.copy(e),c="";u.level++;var l="valid"+u.level,f=u.baseId,d=!0,p=a;if(p)for(var h,m=-1,v=p.length-1;m<v;)h=p[m+=1],(e.opts.strictKeywords?"object"==typeof h&&Object.keys(h).length>0:e.util.schemaHasRules(h,e.RULES.all))&&(d=!1,u.schema=h,u.schemaPath=i+"["+m+"]",u.errSchemaPath=o+"/"+m,n+=" "+e.validate(u)+" ",u.baseId=f,s&&(n+=" if ("+l+") { ",c+="}"));return s&&(n+=d?" if (true) { ":" "+c.slice(0,-1)+" "),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d="errs__"+a,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level;if(o.every((function(t){return e.opts.strictKeywords?"object"==typeof t&&Object.keys(t).length>0:e.util.schemaHasRules(t,e.RULES.all)}))){var v=p.baseId;n+=" var "+d+" = errors; var "+f+" = false; ";var y=e.compositeRule;e.compositeRule=p.compositeRule=!0;var g=o;if(g)for(var b,I=-1,w=g.length-1;I<w;)b=g[I+=1],p.schema=b,p.schemaPath=s+"["+I+"]",p.errSchemaPath=u+"/"+I,n+=" "+e.validate(p)+" ",p.baseId=v,n+=" "+f+" = "+f+" || "+m+"; if (!"+f+") { ",h+="}";e.compositeRule=p.compositeRule=y,n+=" "+h+" if (!"+f+") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'anyOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: {} ",!1!==e.opts.messages&&(n+=" , message: 'should match some schema in anyOf' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&c&&(e.async?n+=" throw new ValidationError(vErrors); ":n+=" validate.errors = vErrors; return false; "),n+=" } else { errors = "+d+"; if (vErrors !== null) { if ("+d+") vErrors.length = "+d+"; else vErrors = null; } ",e.opts.allErrors&&(n+=" } "),n=e.util.cleanUpCode(n)}else c&&(n+=" if (true) { ");return n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.schema[t],i=e.errSchemaPath+"/"+t,o=(e.opts.allErrors,e.util.toQuotedString(a));return!0===e.opts.$comment?n+=" console.log("+o+");":"function"==typeof e.opts.$comment&&(n+=" self._opts.$comment("+o+", "+e.util.toQuotedString(i)+", validate.root.schema);"),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d=e.opts.$data&&o&&o.$data;d&&(n+=" var schema"+a+" = "+e.util.getData(o.$data,i,e.dataPathArr)+"; "),d||(n+=" var schema"+a+" = validate.schema"+s+";"),n+="var "+f+" = equal("+l+", schema"+a+"); if (!"+f+") { ";var p=p||[];p.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'const' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { allowedValue: schema"+a+" } ",!1!==e.opts.messages&&(n+=" , message: 'should be equal to constant' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var h=n;return n=p.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+h+"]); ":n+=" validate.errors = ["+h+"]; return false; ":n+=" var err = "+h+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" }",c&&(n+=" else { "),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d="errs__"+a,p=e.util.copy(e);p.level++;var h="valid"+p.level,m="i"+a,v=p.dataLevel=e.dataLevel+1,y="data"+v,g=e.baseId,b=e.opts.strictKeywords?"object"==typeof o&&Object.keys(o).length>0:e.util.schemaHasRules(o,e.RULES.all);if(n+="var "+d+" = errors;var "+f+";",b){var I=e.compositeRule;e.compositeRule=p.compositeRule=!0,p.schema=o,p.schemaPath=s,p.errSchemaPath=u,n+=" var "+h+" = false; for (var "+m+" = 0; "+m+" < "+l+".length; "+m+"++) { ",p.errorPath=e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers,!0);var w=l+"["+m+"]";p.dataPathArr[v]=m;var S=e.validate(p);p.baseId=g,e.util.varOccurences(S,y)<2?n+=" "+e.util.varReplace(S,y,w)+" ":n+=" var "+y+" = "+w+"; "+S+" ",n+=" if ("+h+") break; } ",e.compositeRule=p.compositeRule=I,n+=" if (!"+h+") {"}else n+=" if ("+l+".length == 0) {";var P=P||[];P.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'contains' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: {} ",!1!==e.opts.messages&&(n+=" , message: 'should contain a valid item' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var D=n;return n=P.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+D+"]); ":n+=" validate.errors = ["+D+"]; return false; ":n+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } else { ",b&&(n+=" errors = "+d+"; if (vErrors !== null) { if ("+d+") vErrors.length = "+d+"; else vErrors = null; } "),e.opts.allErrors&&(n+=" } "),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="errs__"+a,d=e.util.copy(e),p="";d.level++;var h="valid"+d.level,m={},v={},y=e.opts.ownProperties;for(w in o){var g=o[w],b=Array.isArray(g)?v:m;b[w]=g}n+="var "+f+" = errors;";var I=e.errorPath;for(var w in n+="var missing"+a+";",v)if((b=v[w]).length){if(n+=" if ( "+l+e.util.getProperty(w)+" !== undefined ",y&&(n+=" && Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(w)+"') "),c){n+=" && ( ";var S=b;if(S)for(var P=-1,D=S.length-1;P<D;){j=S[P+=1],P&&(n+=" || "),n+=" ( ( "+(M=l+(A=e.util.getProperty(j)))+" === undefined ",y&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(j)+"') "),n+=") && (missing"+a+" = "+e.util.toQuotedString(e.opts.jsonPointers?j:A)+") ) "}n+=")) { ";var E="missing"+a,O="' + "+E+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(I,E,!0):I+" + "+E);var x=x||[];x.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { property: '"+e.util.escapeQuotes(w)+"', missingProperty: '"+O+"', depsCount: "+b.length+", deps: '"+e.util.escapeQuotes(1==b.length?b[0]:b.join(", "))+"' } ",!1!==e.opts.messages&&(n+=" , message: 'should have ",1==b.length?n+="property "+e.util.escapeQuotes(b[0]):n+="properties "+e.util.escapeQuotes(b.join(", ")),n+=" when property "+e.util.escapeQuotes(w)+" is present' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var _=n;n=x.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+_+"]); ":n+=" validate.errors = ["+_+"]; return false; ":n+=" var err = "+_+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{n+=" ) { ";var k=b;if(k)for(var j,T=-1,R=k.length-1;T<R;){j=k[T+=1];var A=e.util.getProperty(j),M=(O=e.util.escapeQuotes(j),l+A);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(I,j,e.opts.jsonPointers)),n+=" if ( "+M+" === undefined ",y&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(j)+"') "),n+=") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'dependencies' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { property: '"+e.util.escapeQuotes(w)+"', missingProperty: '"+O+"', depsCount: "+b.length+", deps: '"+e.util.escapeQuotes(1==b.length?b[0]:b.join(", "))+"' } ",!1!==e.opts.messages&&(n+=" , message: 'should have ",1==b.length?n+="property "+e.util.escapeQuotes(b[0]):n+="properties "+e.util.escapeQuotes(b.join(", ")),n+=" when property "+e.util.escapeQuotes(w)+" is present' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}n+=" } ",c&&(p+="}",n+=" else { ")}e.errorPath=I;var U=d.baseId;for(var w in m){g=m[w];(e.opts.strictKeywords?"object"==typeof g&&Object.keys(g).length>0:e.util.schemaHasRules(g,e.RULES.all))&&(n+=" "+h+" = true; if ( "+l+e.util.getProperty(w)+" !== undefined ",y&&(n+=" && Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(w)+"') "),n+=") { ",d.schema=g,d.schemaPath=s+e.util.getProperty(w),d.errSchemaPath=u+"/"+e.util.escapeFragment(w),n+=" "+e.validate(d)+" ",d.baseId=U,n+=" } ",c&&(n+=" if ("+h+") { ",p+="}"))}return c&&(n+=" "+p+" if ("+f+" == errors) {"),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d=e.opts.$data&&o&&o.$data;d&&(n+=" var schema"+a+" = "+e.util.getData(o.$data,i,e.dataPathArr)+"; ");var p="i"+a,h="schema"+a;d||(n+=" var "+h+" = validate.schema"+s+";"),n+="var "+f+";",d&&(n+=" if (schema"+a+" === undefined) "+f+" = true; else if (!Array.isArray(schema"+a+")) "+f+" = false; else {"),n+=f+" = false;for (var "+p+"=0; "+p+"<"+h+".length; "+p+"++) if (equal("+l+", "+h+"["+p+"])) { "+f+" = true; break; }",d&&(n+=" } "),n+=" if (!"+f+") { ";var m=m||[];m.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'enum' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { allowedValues: schema"+a+" } ",!1!==e.opts.messages&&(n+=" , message: 'should be equal to one of the allowed values' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var v=n;return n=m.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+v+"]); ":n+=" validate.errors = ["+v+"]; return false; ":n+=" var err = "+v+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" }",c&&(n+=" else { "),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||"");if(!1===e.opts.format)return c&&(n+=" if (true) { "),n;var f,d=e.opts.$data&&o&&o.$data;d?(n+=" var schema"+a+" = "+e.util.getData(o.$data,i,e.dataPathArr)+"; ",f="schema"+a):f=o;var p=e.opts.unknownFormats,h=Array.isArray(p);if(d){n+=" var "+(m="format"+a)+" = formats["+f+"]; var "+(v="isObject"+a)+" = typeof "+m+" == 'object' && !("+m+" instanceof RegExp) && "+m+".validate; var "+(y="formatType"+a)+" = "+v+" && "+m+".type || 'string'; if ("+v+") { ",e.async&&(n+=" var async"+a+" = "+m+".async; "),n+=" "+m+" = "+m+".validate; } if ( ",d&&(n+=" ("+f+" !== undefined && typeof "+f+" != 'string') || "),n+=" (","ignore"!=p&&(n+=" ("+f+" && !"+m+" ",h&&(n+=" && self._opts.unknownFormats.indexOf("+f+") == -1 "),n+=") || "),n+=" ("+m+" && "+y+" == '"+r+"' && !(typeof "+m+" == 'function' ? ",e.async?n+=" (async"+a+" ? await "+m+"("+l+") : "+m+"("+l+")) ":n+=" "+m+"("+l+") ",n+=" : "+m+".test("+l+"))))) {"}else{var m;if(!(m=e.formats[o])){if("ignore"==p)return e.logger.warn('unknown format "'+o+'" ignored in schema at path "'+e.errSchemaPath+'"'),c&&(n+=" if (true) { "),n;if(h&&p.indexOf(o)>=0)return c&&(n+=" if (true) { "),n;throw new Error('unknown format "'+o+'" is used in schema at path "'+e.errSchemaPath+'"')}var v,y=(v="object"==typeof m&&!(m instanceof RegExp)&&m.validate)&&m.type||"string";if(v){var g=!0===m.async;m=m.validate}if(y!=r)return c&&(n+=" if (true) { "),n;if(g){if(!e.async)throw new Error("async format in sync schema");n+=" if (!(await "+(b="formats"+e.util.getProperty(o)+".validate")+"("+l+"))) { "}else{n+=" if (! ";var b="formats"+e.util.getProperty(o);v&&(b+=".validate"),n+="function"==typeof m?" "+b+"("+l+") ":" "+b+".test("+l+") ",n+=") { "}}var I=I||[];I.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'format' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { format: ",n+=d?""+f:""+e.util.toQuotedString(o),n+=" } ",!1!==e.opts.messages&&(n+=" , message: 'should match format \"",n+=d?"' + "+f+" + '":""+e.util.escapeQuotes(o),n+="\"' "),e.opts.verbose&&(n+=" , schema: ",n+=d?"validate.schema"+s:""+e.util.toQuotedString(o),n+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var w=n;return n=I.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+w+"]); ":n+=" validate.errors = ["+w+"]; return false; ":n+=" var err = "+w+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } ",c&&(n+=" else { "),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d="errs__"+a,p=e.util.copy(e);p.level++;var h="valid"+p.level,m=e.schema.then,v=e.schema.else,y=void 0!==m&&(e.opts.strictKeywords?"object"==typeof m&&Object.keys(m).length>0:e.util.schemaHasRules(m,e.RULES.all)),g=void 0!==v&&(e.opts.strictKeywords?"object"==typeof v&&Object.keys(v).length>0:e.util.schemaHasRules(v,e.RULES.all)),b=p.baseId;if(y||g){var I;p.createErrors=!1,p.schema=o,p.schemaPath=s,p.errSchemaPath=u,n+=" var "+d+" = errors; var "+f+" = true; ";var w=e.compositeRule;e.compositeRule=p.compositeRule=!0,n+=" "+e.validate(p)+" ",p.baseId=b,p.createErrors=!0,n+=" errors = "+d+"; if (vErrors !== null) { if ("+d+") vErrors.length = "+d+"; else vErrors = null; } ",e.compositeRule=p.compositeRule=w,y?(n+=" if ("+h+") { ",p.schema=e.schema.then,p.schemaPath=e.schemaPath+".then",p.errSchemaPath=e.errSchemaPath+"/then",n+=" "+e.validate(p)+" ",p.baseId=b,n+=" "+f+" = "+h+"; ",y&&g?n+=" var "+(I="ifClause"+a)+" = 'then'; ":I="'then'",n+=" } ",g&&(n+=" else { ")):n+=" if (!"+h+") { ",g&&(p.schema=e.schema.else,p.schemaPath=e.schemaPath+".else",p.errSchemaPath=e.errSchemaPath+"/else",n+=" "+e.validate(p)+" ",p.baseId=b,n+=" "+f+" = "+h+"; ",y&&g?n+=" var "+(I="ifClause"+a)+" = 'else'; ":I="'else'",n+=" } "),n+=" if (!"+f+") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'if' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { failingKeyword: "+I+" } ",!1!==e.opts.messages&&(n+=" , message: 'should match \"' + "+I+" + '\" schema' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&c&&(e.async?n+=" throw new ValidationError(vErrors); ":n+=" validate.errors = vErrors; return false; "),n+=" } ",c&&(n+=" else { "),n=e.util.cleanUpCode(n)}else c&&(n+=" if (true) { ");return n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d="errs__"+a,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level,v="i"+a,y=p.dataLevel=e.dataLevel+1,g="data"+y,b=e.baseId;if(n+="var "+d+" = errors;var "+f+";",Array.isArray(o)){var I=e.schema.additionalItems;if(!1===I){n+=" "+f+" = "+l+".length <= "+o.length+"; ";var w=u;u=e.errSchemaPath+"/additionalItems",n+=" if (!"+f+") { ";var S=S||[];S.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'additionalItems' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { limit: "+o.length+" } ",!1!==e.opts.messages&&(n+=" , message: 'should NOT have more than "+o.length+" items' "),e.opts.verbose&&(n+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var P=n;n=S.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+P+"]); ":n+=" validate.errors = ["+P+"]; return false; ":n+=" var err = "+P+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } ",u=w,c&&(h+="}",n+=" else { ")}var D=o;if(D)for(var E,O=-1,x=D.length-1;O<x;)if(E=D[O+=1],e.opts.strictKeywords?"object"==typeof E&&Object.keys(E).length>0:e.util.schemaHasRules(E,e.RULES.all)){n+=" "+m+" = true; if ("+l+".length > "+O+") { ";var _=l+"["+O+"]";p.schema=E,p.schemaPath=s+"["+O+"]",p.errSchemaPath=u+"/"+O,p.errorPath=e.util.getPathExpr(e.errorPath,O,e.opts.jsonPointers,!0),p.dataPathArr[y]=O;var k=e.validate(p);p.baseId=b,e.util.varOccurences(k,g)<2?n+=" "+e.util.varReplace(k,g,_)+" ":n+=" var "+g+" = "+_+"; "+k+" ",n+=" } ",c&&(n+=" if ("+m+") { ",h+="}")}if("object"==typeof I&&(e.opts.strictKeywords?"object"==typeof I&&Object.keys(I).length>0:e.util.schemaHasRules(I,e.RULES.all))){p.schema=I,p.schemaPath=e.schemaPath+".additionalItems",p.errSchemaPath=e.errSchemaPath+"/additionalItems",n+=" "+m+" = true; if ("+l+".length > "+o.length+") { for (var "+v+" = "+o.length+"; "+v+" < "+l+".length; "+v+"++) { ",p.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers,!0);_=l+"["+v+"]";p.dataPathArr[y]=v;k=e.validate(p);p.baseId=b,e.util.varOccurences(k,g)<2?n+=" "+e.util.varReplace(k,g,_)+" ":n+=" var "+g+" = "+_+"; "+k+" ",c&&(n+=" if (!"+m+") break; "),n+=" } } ",c&&(n+=" if ("+m+") { ",h+="}")}}else if(e.opts.strictKeywords?"object"==typeof o&&Object.keys(o).length>0:e.util.schemaHasRules(o,e.RULES.all)){p.schema=o,p.schemaPath=s,p.errSchemaPath=u,n+=" for (var "+v+" = 0; "+v+" < "+l+".length; "+v+"++) { ",p.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers,!0);_=l+"["+v+"]";p.dataPathArr[y]=v;k=e.validate(p);p.baseId=b,e.util.varOccurences(k,g)<2?n+=" "+e.util.varReplace(k,g,_)+" ":n+=" var "+g+" = "+_+"; "+k+" ",c&&(n+=" if (!"+m+") break; "),n+=" }"}return c&&(n+=" "+h+" if ("+d+" == errors) {"),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s,a+="var division"+i+";if (",d&&(a+=" "+n+" !== undefined && ( typeof "+n+" != 'number' || "),a+=" (division"+i+" = "+f+" / "+n+", ",e.opts.multipleOfPrecision?a+=" Math.abs(Math.round(division"+i+") - division"+i+") > 1e-"+e.opts.multipleOfPrecision+" ":a+=" division"+i+" !== parseInt(division"+i+") ",a+=" ) ",d&&(a+=" ) "),a+=" ) { ";var p=p||[];p.push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'multipleOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { multipleOf: "+n+" } ",!1!==e.opts.messages&&(a+=" , message: 'should be multiple of ",a+=d?"' + "+n:n+"'"),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var h=a;return a=p.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+h+"]); ":a+=" validate.errors = ["+h+"]; return false; ":a+=" var err = "+h+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} ",l&&(a+=" else { "),a}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="errs__"+a,d=e.util.copy(e);d.level++;var p="valid"+d.level;if(e.opts.strictKeywords?"object"==typeof o&&Object.keys(o).length>0:e.util.schemaHasRules(o,e.RULES.all)){d.schema=o,d.schemaPath=s,d.errSchemaPath=u,n+=" var "+f+" = errors; ";var h,m=e.compositeRule;e.compositeRule=d.compositeRule=!0,d.createErrors=!1,d.opts.allErrors&&(h=d.opts.allErrors,d.opts.allErrors=!1),n+=" "+e.validate(d)+" ",d.createErrors=!0,h&&(d.opts.allErrors=h),e.compositeRule=d.compositeRule=m,n+=" if ("+p+") { ";var v=v||[];v.push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: {} ",!1!==e.opts.messages&&(n+=" , message: 'should NOT be valid' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var y=n;n=v.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+y+"]); ":n+=" validate.errors = ["+y+"]; return false; ":n+=" var err = "+y+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } else { errors = "+f+"; if (vErrors !== null) { if ("+f+") vErrors.length = "+f+"; else vErrors = null; } ",e.opts.allErrors&&(n+=" } ")}else n+=" var err = ",!1!==e.createErrors?(n+=" { keyword: 'not' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: {} ",!1!==e.opts.messages&&(n+=" , message: 'should NOT be valid' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c&&(n+=" if (false) { ");return n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d="errs__"+a,p=e.util.copy(e),h="";p.level++;var m="valid"+p.level,v=p.baseId,y="prevValid"+a,g="passingSchemas"+a;n+="var "+d+" = errors , "+y+" = false , "+f+" = false , "+g+" = null; ";var b=e.compositeRule;e.compositeRule=p.compositeRule=!0;var I=o;if(I)for(var w,S=-1,P=I.length-1;S<P;)w=I[S+=1],(e.opts.strictKeywords?"object"==typeof w&&Object.keys(w).length>0:e.util.schemaHasRules(w,e.RULES.all))?(p.schema=w,p.schemaPath=s+"["+S+"]",p.errSchemaPath=u+"/"+S,n+=" "+e.validate(p)+" ",p.baseId=v):n+=" var "+m+" = true; ",S&&(n+=" if ("+m+" && "+y+") { "+f+" = false; "+g+" = ["+g+", "+S+"]; } else { ",h+="}"),n+=" if ("+m+") { "+f+" = "+y+" = true; "+g+" = "+S+"; }";return e.compositeRule=p.compositeRule=b,n+=h+"if (!"+f+") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'oneOf' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { passingSchemas: "+g+" } ",!1!==e.opts.messages&&(n+=" , message: 'should match exactly one schema in oneOf' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&c&&(e.async?n+=" throw new ValidationError(vErrors); ":n+=" validate.errors = vErrors; return false; "),n+="} else { errors = "+d+"; if (vErrors !== null) { if ("+d+") vErrors.length = "+d+"; else vErrors = null; }",e.opts.allErrors&&(n+=" } "),n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d=e.opts.$data&&s&&s.$data;d?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s,a+="if ( ",d&&(a+=" ("+n+" !== undefined && typeof "+n+" != 'string') || "),a+=" !"+(d?"(new RegExp("+n+"))":e.usePattern(s))+".test("+f+") ) { ";var p=p||[];p.push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'pattern' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { pattern: ",a+=d?""+n:""+e.util.toQuotedString(s),a+=" } ",!1!==e.opts.messages&&(a+=" , message: 'should match pattern \"",a+=d?"' + "+n+" + '":""+e.util.escapeQuotes(s),a+="\"' "),e.opts.verbose&&(a+=" , schema: ",a+=d?"validate.schema"+u:""+e.util.toQuotedString(s),a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var h=a;return a=p.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+h+"]); ":a+=" validate.errors = ["+h+"]; return false; ":a+=" var err = "+h+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} ",l&&(a+=" else { "),a}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="errs__"+a,d=e.util.copy(e),p="";d.level++;var h="valid"+d.level,m="key"+a,v="idx"+a,y=d.dataLevel=e.dataLevel+1,g="data"+y,b="dataProperties"+a,I=Object.keys(o||{}),w=e.schema.patternProperties||{},S=Object.keys(w),P=e.schema.additionalProperties,D=I.length||S.length,E=!1===P,O="object"==typeof P&&Object.keys(P).length,x=e.opts.removeAdditional,_=E||O||x,k=e.opts.ownProperties,j=e.baseId,T=e.schema.required;if(T&&(!e.opts.$data||!T.$data)&&T.length<e.opts.loopRequired)var R=e.util.toHash(T);if(n+="var "+f+" = errors;var "+h+" = true;",k&&(n+=" var "+b+" = undefined;"),_){if(n+=k?" "+b+" = "+b+" || Object.keys("+l+"); for (var "+v+"=0; "+v+"<"+b+".length; "+v+"++) { var "+m+" = "+b+"["+v+"]; ":" for (var "+m+" in "+l+") { ",D){if(n+=" var isAdditional"+a+" = !(false ",I.length)if(I.length>8)n+=" || validate.schema"+s+".hasOwnProperty("+m+") ";else{var A=I;if(A)for(var M=-1,U=A.length-1;M<U;)Q=A[M+=1],n+=" || "+m+" == "+e.util.toQuotedString(Q)+" "}if(S.length){var N=S;if(N)for(var C=-1,F=N.length-1;C<F;)ae=N[C+=1],n+=" || "+e.usePattern(ae)+".test("+m+") "}n+=" ); if (isAdditional"+a+") { "}if("all"==x)n+=" delete "+l+"["+m+"]; ";else{var L=e.errorPath,V="' + "+m+" + '";if(e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers)),E)if(x)n+=" delete "+l+"["+m+"]; ";else{n+=" "+h+" = false; ";var q=u;u=e.errSchemaPath+"/additionalProperties",(te=te||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'additionalProperties' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { additionalProperty: '"+V+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is an invalid additional property":n+="should NOT have additional properties",n+="' "),e.opts.verbose&&(n+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var $=n;n=te.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+$+"]); ":n+=" validate.errors = ["+$+"]; return false; ":n+=" var err = "+$+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",u=q,c&&(n+=" break; ")}else if(O)if("failing"==x){n+=" var "+f+" = errors; ";var z=e.compositeRule;e.compositeRule=d.compositeRule=!0,d.schema=P,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers);var G=l+"["+m+"]";d.dataPathArr[y]=m;var B=e.validate(d);d.baseId=j,e.util.varOccurences(B,g)<2?n+=" "+e.util.varReplace(B,g,G)+" ":n+=" var "+g+" = "+G+"; "+B+" ",n+=" if (!"+h+") { errors = "+f+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+l+"["+m+"]; } ",e.compositeRule=d.compositeRule=z}else{d.schema=P,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers);G=l+"["+m+"]";d.dataPathArr[y]=m;B=e.validate(d);d.baseId=j,e.util.varOccurences(B,g)<2?n+=" "+e.util.varReplace(B,g,G)+" ":n+=" var "+g+" = "+G+"; "+B+" ",c&&(n+=" if (!"+h+") break; ")}e.errorPath=L}D&&(n+=" } "),n+=" } ",c&&(n+=" if ("+h+") { ",p+="}")}var H=e.opts.useDefaults&&!e.compositeRule;if(I.length){var W=I;if(W)for(var Q,K=-1,J=W.length-1;K<J;){var Y=o[Q=W[K+=1]];if(e.opts.strictKeywords?"object"==typeof Y&&Object.keys(Y).length>0:e.util.schemaHasRules(Y,e.RULES.all)){var X=e.util.getProperty(Q),Z=(G=l+X,H&&void 0!==Y.default);d.schema=Y,d.schemaPath=s+X,d.errSchemaPath=u+"/"+e.util.escapeFragment(Q),d.errorPath=e.util.getPath(e.errorPath,Q,e.opts.jsonPointers),d.dataPathArr[y]=e.util.toQuotedString(Q);B=e.validate(d);if(d.baseId=j,e.util.varOccurences(B,g)<2){B=e.util.varReplace(B,g,G);var ee=G}else{ee=g;n+=" var "+g+" = "+G+"; "}if(Z)n+=" "+B+" ";else{if(R&&R[Q]){n+=" if ( "+ee+" === undefined ",k&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(Q)+"') "),n+=") { "+h+" = false; ";L=e.errorPath,q=u;var te,re=e.util.escapeQuotes(Q);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(L,Q,e.opts.jsonPointers)),u=e.errSchemaPath+"/required",(te=te||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+re+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+re+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";$=n;n=te.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+$+"]); ":n+=" validate.errors = ["+$+"]; return false; ":n+=" var err = "+$+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",u=q,e.errorPath=L,n+=" } else { "}else c?(n+=" if ( "+ee+" === undefined ",k&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(Q)+"') "),n+=") { "+h+" = true; } else { "):(n+=" if ("+ee+" !== undefined ",k&&(n+=" && Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(Q)+"') "),n+=" ) { ");n+=" "+B+" } "}}c&&(n+=" if ("+h+") { ",p+="}")}}if(S.length){var ne=S;if(ne)for(var ae,ie=-1,oe=ne.length-1;ie<oe;){Y=w[ae=ne[ie+=1]];if(e.opts.strictKeywords?"object"==typeof Y&&Object.keys(Y).length>0:e.util.schemaHasRules(Y,e.RULES.all)){d.schema=Y,d.schemaPath=e.schemaPath+".patternProperties"+e.util.getProperty(ae),d.errSchemaPath=e.errSchemaPath+"/patternProperties/"+e.util.escapeFragment(ae),n+=k?" "+b+" = "+b+" || Object.keys("+l+"); for (var "+v+"=0; "+v+"<"+b+".length; "+v+"++) { var "+m+" = "+b+"["+v+"]; ":" for (var "+m+" in "+l+") { ",n+=" if ("+e.usePattern(ae)+".test("+m+")) { ",d.errorPath=e.util.getPathExpr(e.errorPath,m,e.opts.jsonPointers);G=l+"["+m+"]";d.dataPathArr[y]=m;B=e.validate(d);d.baseId=j,e.util.varOccurences(B,g)<2?n+=" "+e.util.varReplace(B,g,G)+" ":n+=" var "+g+" = "+G+"; "+B+" ",c&&(n+=" if (!"+h+") break; "),n+=" } ",c&&(n+=" else "+h+" = true; "),n+=" } ",c&&(n+=" if ("+h+") { ",p+="}")}}}return c&&(n+=" "+p+" if ("+f+" == errors) {"),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="errs__"+a,d=e.util.copy(e);d.level++;var p="valid"+d.level;if(n+="var "+f+" = errors;",e.opts.strictKeywords?"object"==typeof o&&Object.keys(o).length>0:e.util.schemaHasRules(o,e.RULES.all)){d.schema=o,d.schemaPath=s,d.errSchemaPath=u;var h="key"+a,m="idx"+a,v="i"+a,y="' + "+h+" + '",g="data"+(d.dataLevel=e.dataLevel+1),b="dataProperties"+a,I=e.opts.ownProperties,w=e.baseId;I&&(n+=" var "+b+" = undefined; "),n+=I?" "+b+" = "+b+" || Object.keys("+l+"); for (var "+m+"=0; "+m+"<"+b+".length; "+m+"++) { var "+h+" = "+b+"["+m+"]; ":" for (var "+h+" in "+l+") { ",n+=" var startErrs"+a+" = errors; ";var S=h,P=e.compositeRule;e.compositeRule=d.compositeRule=!0;var D=e.validate(d);d.baseId=w,e.util.varOccurences(D,g)<2?n+=" "+e.util.varReplace(D,g,S)+" ":n+=" var "+g+" = "+S+"; "+D+" ",e.compositeRule=d.compositeRule=P,n+=" if (!"+p+") { for (var "+v+"=startErrs"+a+"; "+v+"<errors; "+v+"++) { vErrors["+v+"].propertyName = "+h+"; } var err = ",!1!==e.createErrors?(n+=" { keyword: 'propertyNames' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { propertyName: '"+y+"' } ",!1!==e.opts.messages&&(n+=" , message: 'property name \\'"+y+"\\' is invalid' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&c&&(e.async?n+=" throw new ValidationError(vErrors); ":n+=" validate.errors = vErrors; return false; "),c&&(n+=" break; "),n+=" } }"}return c&&(n+=" if ("+f+" == errors) {"),n=e.util.cleanUpCode(n)}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n=" ",a=e.level,i=e.dataLevel,o=e.schema[t],s=e.schemaPath+e.util.getProperty(t),u=e.errSchemaPath+"/"+t,c=!e.opts.allErrors,l="data"+(i||""),f="valid"+a,d=e.opts.$data&&o&&o.$data;d&&(n+=" var schema"+a+" = "+e.util.getData(o.$data,i,e.dataPathArr)+"; ");var p="schema"+a;if(!d)if(o.length<e.opts.loopRequired&&e.schema.properties&&Object.keys(e.schema.properties).length){var h=[],m=o;if(m)for(var v,y=-1,g=m.length-1;y<g;){v=m[y+=1];var b=e.schema.properties[v];b&&(e.opts.strictKeywords?"object"==typeof b&&Object.keys(b).length>0:e.util.schemaHasRules(b,e.RULES.all))||(h[h.length]=v)}}else h=o;if(d||h.length){var I=e.errorPath,w=d||h.length>=e.opts.loopRequired,S=e.opts.ownProperties;if(c)if(n+=" var missing"+a+"; ",w){d||(n+=" var "+p+" = validate.schema"+s+"; ");var P="' + "+(k="schema"+a+"["+(O="i"+a)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(I,k,e.opts.jsonPointers)),n+=" var "+f+" = true; ",d&&(n+=" if (schema"+a+" === undefined) "+f+" = true; else if (!Array.isArray(schema"+a+")) "+f+" = false; else {"),n+=" for (var "+O+" = 0; "+O+" < "+p+".length; "+O+"++) { "+f+" = "+l+"["+p+"["+O+"]] !== undefined ",S&&(n+=" && Object.prototype.hasOwnProperty.call("+l+", "+p+"["+O+"]) "),n+="; if (!"+f+") break; } ",d&&(n+=" } "),n+=" if (!"+f+") { ",(_=_||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+P+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+P+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";var D=n;n=_.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+D+"]); ":n+=" validate.errors = ["+D+"]; return false; ":n+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } else { "}else{n+=" if ( ";var E=h;if(E)for(var O=-1,x=E.length-1;O<x;){T=E[O+=1],O&&(n+=" || "),n+=" ( ( "+(U=l+(M=e.util.getProperty(T)))+" === undefined ",S&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(T)+"') "),n+=") && (missing"+a+" = "+e.util.toQuotedString(e.opts.jsonPointers?T:M)+") ) "}n+=") { ";var _;P="' + "+(k="missing"+a)+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(I,k,!0):I+" + "+k),(_=_||[]).push(n),n="",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+P+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+P+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ";D=n;n=_.pop(),!e.compositeRule&&c?e.async?n+=" throw new ValidationError(["+D+"]); ":n+=" validate.errors = ["+D+"]; return false; ":n+=" var err = "+D+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",n+=" } else { "}else if(w){d||(n+=" var "+p+" = validate.schema"+s+"; ");var k;P="' + "+(k="schema"+a+"["+(O="i"+a)+"]")+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(I,k,e.opts.jsonPointers)),d&&(n+=" if ("+p+" && !Array.isArray("+p+")) { var err = ",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+P+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+P+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+p+" !== undefined) { "),n+=" for (var "+O+" = 0; "+O+" < "+p+".length; "+O+"++) { if ("+l+"["+p+"["+O+"]] === undefined ",S&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", "+p+"["+O+"]) "),n+=") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+P+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+P+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",d&&(n+=" } ")}else{var j=h;if(j)for(var T,R=-1,A=j.length-1;R<A;){T=j[R+=1];var M=e.util.getProperty(T),U=(P=e.util.escapeQuotes(T),l+M);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(I,T,e.opts.jsonPointers)),n+=" if ( "+U+" === undefined ",S&&(n+=" || ! Object.prototype.hasOwnProperty.call("+l+", '"+e.util.escapeQuotes(T)+"') "),n+=") { var err = ",!1!==e.createErrors?(n+=" { keyword: 'required' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(u)+" , params: { missingProperty: '"+P+"' } ",!1!==e.opts.messages&&(n+=" , message: '",e.opts._errorDataPathProperty?n+="is a required property":n+="should have required property \\'"+P+"\\'",n+="' "),e.opts.verbose&&(n+=" , schema: validate.schema"+s+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+l+" "),n+=" } "):n+=" {} ",n+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}e.errorPath=I}else c&&(n+=" if (true) {");return n}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a=" ",i=e.level,o=e.dataLevel,s=e.schema[t],u=e.schemaPath+e.util.getProperty(t),c=e.errSchemaPath+"/"+t,l=!e.opts.allErrors,f="data"+(o||""),d="valid"+i,p=e.opts.$data&&s&&s.$data;if(p?(a+=" var schema"+i+" = "+e.util.getData(s.$data,o,e.dataPathArr)+"; ",n="schema"+i):n=s,(s||p)&&!1!==e.opts.uniqueItems){p&&(a+=" var "+d+"; if ("+n+" === false || "+n+" === undefined) "+d+" = true; else if (typeof "+n+" != 'boolean') "+d+" = false; else { "),a+=" var i = "+f+".length , "+d+" = true , j; if (i > 1) { ";var h=e.schema.items&&e.schema.items.type,m=Array.isArray(h);if(!h||"object"==h||"array"==h||m&&(h.indexOf("object")>=0||h.indexOf("array")>=0))a+=" outer: for (;i--;) { for (j = i; j--;) { if (equal("+f+"[i], "+f+"[j])) { "+d+" = false; break outer; } } } ";else{a+=" var itemIndices = {}, item; for (;i--;) { var item = "+f+"[i]; ";var v="checkDataType"+(m?"s":"");a+=" if ("+e.util[v](h,"item",!0)+") continue; ",m&&(a+=" if (typeof item == 'string') item = '\"' + item; "),a+=" if (typeof itemIndices[item] == 'number') { "+d+" = false; j = itemIndices[item]; break; } itemIndices[item] = i; } "}a+=" } ",p&&(a+=" } "),a+=" if (!"+d+") { ";var y=y||[];y.push(a),a="",!1!==e.createErrors?(a+=" { keyword: 'uniqueItems' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { i: i, j: j } ",!1!==e.opts.messages&&(a+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(a+=" , schema: ",a+=p?"validate.schema"+u:""+s,a+=" , parentSchema: validate.schema"+e.schemaPath+" , data: "+f+" "),a+=" } "):a+=" {} ";var g=a;a=y.pop(),!e.compositeRule&&l?e.async?a+=" throw new ValidationError(["+g+"]); ":a+=" validate.errors = ["+g+"]; return false; ":a+=" var err = "+g+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } ",l&&(a+=" else { ")}else l&&(a+=" if (true) { ");return a}},function(e,t,r){"use strict";var n=["multipleOf","maximum","exclusiveMaximum","minimum","exclusiveMinimum","maxLength","minLength","pattern","additionalItems","maxItems","minItems","uniqueItems","maxProperties","minProperties","required","additionalProperties","enum","format","const"];e.exports=function(e,t){for(var r=0;r<t.length;r++){e=JSON.parse(JSON.stringify(e));var a,i=t[r].split("/"),o=e;for(a=1;a<i.length;a++)o=o[i[a]];for(a=0;a<n.length;a++){var s=n[a],u=o[s];u&&(o[s]={anyOf:[u,{$ref:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/data.json#"}]})}}return e}},function(e,t,r){"use strict";var n=r(65).MissingRef;e.exports=function e(t,r,a){var i=this;if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");"function"==typeof r&&(a=r,r=void 0);var o=s(t).then((function(){var e=i._addSchema(t,void 0,r);return e.validate||function e(t){try{return i._compile(t)}catch(e){if(e instanceof n)return a(e);throw e}function a(n){var a=n.missingSchema;if(c(a))throw new Error("Schema "+a+" is loaded but "+n.missingRef+" cannot be resolved");var o=i._loadingSchemas[a];return o||(o=i._loadingSchemas[a]=i._opts.loadSchema(a)).then(u,u),o.then((function(e){if(!c(a))return s(e).then((function(){c(a)||i.addSchema(e,a,void 0,r)}))})).then((function(){return e(t)}));function u(){delete i._loadingSchemas[a]}function c(e){return i._refs[e]||i._schemas[e]}}}(e)}));a&&o.then((function(e){a(null,e)}),a);return o;function s(t){var r=t.$schema;return r&&!i.getSchema(r)?e.call(i,{$ref:r},!0):Promise.resolve()}}},function(e,t,r){"use strict";var n=/^[a-z_$][a-z0-9_$-]*$/i,a=r(265),i=r(266);e.exports={add:function(e,t){var r=this.RULES;if(r.keywords[e])throw new Error("Keyword "+e+" is already defined");if(!n.test(e))throw new Error("Keyword "+e+" is not a valid identifier");if(t){this.validateKeyword(t,!0);var i=t.type;if(Array.isArray(i))for(var o=0;o<i.length;o++)u(e,i[o],t);else u(e,i,t);var s=t.metaSchema;s&&(t.$data&&this._opts.$data&&(s={anyOf:[s,{$ref:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/data.json#"}]}),t.validateSchema=this.compile(s,!0))}function u(e,t,n){for(var i,o=0;o<r.length;o++){var s=r[o];if(s.type==t){i=s;break}}i||(i={type:t,rules:[]},r.push(i));var u={keyword:e,definition:n,custom:!0,code:a,implements:n.implements};i.rules.push(u),r.custom[e]=u}return r.keywords[e]=r.all[e]=!0,this},get:function(e){var t=this.RULES.custom[e];return t?t.definition:this.RULES.keywords[e]||!1},remove:function(e){var t=this.RULES;delete t.keywords[e],delete t.all[e],delete t.custom[e];for(var r=0;r<t.length;r++)for(var n=t[r].rules,a=0;a<n.length;a++)if(n[a].keyword==e){n.splice(a,1);break}return this},validate:function e(t,r){e.errors=null;var n=this._validateKeyword=this._validateKeyword||this.compile(i,!0);if(n(t))return!0;if(e.errors=n.errors,r)throw new Error("custom keyword definition is invalid: "+this.errorsText(n.errors));return!1}}},function(e,t,r){"use strict";e.exports=function(e,t,r){var n,a,i=" ",o=e.level,s=e.dataLevel,u=e.schema[t],c=e.schemaPath+e.util.getProperty(t),l=e.errSchemaPath+"/"+t,f=!e.opts.allErrors,d="data"+(s||""),p="valid"+o,h="errs__"+o,m=e.opts.$data&&u&&u.$data;m?(i+=" var schema"+o+" = "+e.util.getData(u.$data,s,e.dataPathArr)+"; ",a="schema"+o):a=u;var v,y,g,b,I,w="definition"+o,S=this.definition,P="";if(m&&S.$data){I="keywordValidate"+o;var D=S.validateSchema;i+=" var "+w+" = RULES.custom['"+t+"'].definition; var "+I+" = "+w+".validate;"}else{if(!(b=e.useCustomRule(this,u,e.schema,e)))return;a="validate.schema"+c,I=b.code,v=S.compile,y=S.inline,g=S.macro}var E=I+".errors",O="i"+o,x="ruleErr"+o,_=S.async;if(_&&!e.async)throw new Error("async keyword in sync schema");if(y||g||(i+=E+" = null;"),i+="var "+h+" = errors;var "+p+";",m&&S.$data&&(P+="}",i+=" if ("+a+" === undefined) { "+p+" = true; } else { ",D&&(P+="}",i+=" "+p+" = "+w+".validateSchema("+a+"); if ("+p+") { ")),y)S.statements?i+=" "+b.validate+" ":i+=" "+p+" = "+b.validate+"; ";else if(g){var k=e.util.copy(e);P="";k.level++;var j="valid"+k.level;k.schema=b.validate,k.schemaPath="";var T=e.compositeRule;e.compositeRule=k.compositeRule=!0;var R=e.validate(k).replace(/validate\.schema/g,I);e.compositeRule=k.compositeRule=T,i+=" "+R}else{(N=N||[]).push(i),i="",i+=" "+I+".call( ",e.opts.passContext?i+="this":i+="self",v||!1===S.schema?i+=" , "+d+" ":i+=" , "+a+" , "+d+" , validate.schema"+e.schemaPath+" ",i+=" , (dataPath || '')",'""'!=e.errorPath&&(i+=" + "+e.errorPath);var A=s?"data"+(s-1||""):"parentData",M=s?e.dataPathArr[s]:"parentDataProperty",U=i+=" , "+A+" , "+M+" , rootData ) ";i=N.pop(),!1===S.errors?(i+=" "+p+" = ",_&&(i+="await "),i+=U+"; "):i+=_?" var "+(E="customErrors"+o)+" = null; try { "+p+" = await "+U+"; } catch (e) { "+p+" = false; if (e instanceof ValidationError) "+E+" = e.errors; else throw e; } ":" "+E+" = null; "+p+" = "+U+"; "}if(S.modifying&&(i+=" if ("+A+") "+d+" = "+A+"["+M+"];"),i+=""+P,S.valid)f&&(i+=" if (true) { ");else{var N;i+=" if ( ",void 0===S.valid?(i+=" !",i+=g?""+j:""+p):i+=" "+!S.valid+" ",i+=") { ",n=this.keyword,(N=N||[]).push(i),i="",(N=N||[]).push(i),i="",!1!==e.createErrors?(i+=" { keyword: '"+(n||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { keyword: '"+this.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+this.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+c+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+d+" "),i+=" } "):i+=" {} ";var C=i;i=N.pop(),!e.compositeRule&&f?e.async?i+=" throw new ValidationError(["+C+"]); ":i+=" validate.errors = ["+C+"]; return false; ":i+=" var err = "+C+"; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var F=i;i=N.pop(),y?S.errors?"full"!=S.errors&&(i+=" for (var "+O+"="+h+"; "+O+"<errors; "+O+"++) { var "+x+" = vErrors["+O+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+x+".schemaPath === undefined) { "+x+'.schemaPath = "'+l+'"; } ',e.opts.verbose&&(i+=" "+x+".schema = "+a+"; "+x+".data = "+d+"; "),i+=" } "):!1===S.errors?i+=" "+F+" ":(i+=" if ("+h+" == errors) { "+F+" } else { for (var "+O+"="+h+"; "+O+"<errors; "+O+"++) { var "+x+" = vErrors["+O+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+x+".schemaPath === undefined) { "+x+'.schemaPath = "'+l+'"; } ',e.opts.verbose&&(i+=" "+x+".schema = "+a+"; "+x+".data = "+d+"; "),i+=" } } "):g?(i+=" var err = ",!1!==e.createErrors?(i+=" { keyword: '"+(n||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { keyword: '"+this.keyword+"' } ",!1!==e.opts.messages&&(i+=" , message: 'should pass \""+this.keyword+"\" keyword validation' "),e.opts.verbose&&(i+=" , schema: validate.schema"+c+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+d+" "),i+=" } "):i+=" {} ",i+="; if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&f&&(e.async?i+=" throw new ValidationError(vErrors); ":i+=" validate.errors = vErrors; return false; ")):!1===S.errors?i+=" "+F+" ":(i+=" if (Array.isArray("+E+")) { if (vErrors === null) vErrors = "+E+"; else vErrors = vErrors.concat("+E+"); errors = vErrors.length; for (var "+O+"="+h+"; "+O+"<errors; "+O+"++) { var "+x+" = vErrors["+O+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+"; "+x+'.schemaPath = "'+l+'"; ',e.opts.verbose&&(i+=" "+x+".schema = "+a+"; "+x+".data = "+d+"; "),i+=" } } else { "+F+" } "),i+=" } ",f&&(i+=" else { ")}return i}},function(e,t,r){"use strict";var n=r(105);e.exports={$id:"https://github.com/epoberezkin/ajv/blob/master/lib/definition_schema.js",definitions:{simpleTypes:n.definitions.simpleTypes},type:"object",dependencies:{schema:["validate"],$data:["validate"],statements:["inline"],valid:{not:{required:["macro"]}}},properties:{type:n.properties.type,schema:{type:"boolean"},statements:{type:"boolean"},dependencies:{type:"array",items:{type:"string"}},metaSchema:{type:"object"},modifying:{type:"boolean"},valid:{type:"boolean"},$data:{type:"boolean"},async:{type:"boolean"},errors:{anyOf:[{type:"boolean"},{const:"full"}]}}}},function(e){e.exports=JSON.parse('{"$schema":"http://json-schema.org/draft-07/schema#","$id":"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/data.json#","description":"Meta-schema for $data reference (JSON Schema extension proposal)","type":"object","required":["$data"],"properties":{"$data":{"type":"string","anyOf":[{"format":"relative-json-pointer"},{"format":"json-pointer"}]}},"additionalProperties":false}')},function(e,t,r){"use strict";r.r(t),r.d(t,"MODULE_TYPES",(function(){return s})),r.d(t,"CommandsManager",(function(){return V})),r.d(t,"ExtensionManager",(function(){return m})),r.d(t,"HotkeysManager",(function(){return Q})),r.d(t,"ServicesManager",(function(){return v})),r.d(t,"utils",(function(){return dn})),r.d(t,"hotkeys",(function(){return B})),r.d(t,"studies",(function(){return Ur})),r.d(t,"redux",(function(){return bo})),r.d(t,"classes",(function(){return xr})),r.d(t,"metadata",(function(){return ii})),r.d(t,"header",(function(){return Ni})),r.d(t,"cornerstone",(function(){return Za})),r.d(t,"string",(function(){return So})),r.d(t,"ui",(function(){return Do})),r.d(t,"user",(function(){return ne})),r.d(t,"object",(function(){return Ci})),r.d(t,"log",(function(){return h})),r.d(t,"DICOMWeb",(function(){return ae})),r.d(t,"DICOMSR",(function(){return Xa})),r.d(t,"measurements",(function(){return za})),r.d(t,"hangingProtocols",(function(){return Ui})),r.d(t,"UINotificationService",(function(){return I})),r.d(t,"UIModalService",(function(){return P})),r.d(t,"UIDialogService",(function(){return O})),r.d(t,"MeasurementService",(function(){return C})),r.d(t,"ViewerCore",(function(){return Eo}));var n={};r.r(n),r.d(n,"parse",(function(){return rn})),r.d(n,"queryString",(function(){return nn})),r.d(n,"paramString",(function(){return an}));var a={};r.r(a),r.d(a,"arrowAnnotate",(function(){return yn})),r.d(a,"bidirectional",(function(){return gn})),r.d(a,"ellipticalRoi",(function(){return bn})),r.d(a,"circleRoi",(function(){return In})),r.d(a,"freehandMouse",(function(){return wn})),r.d(a,"length",(function(){return Sn})),r.d(a,"nonTarget",(function(){return Pn})),r.d(a,"rectangleRoi",(function(){return Dn})),r.d(a,"angle",(function(){return En})),r.d(a,"cobbAngle",(function(){return kn})),r.d(a,"probe",(function(){return jn})),r.d(a,"targetCR",(function(){return On})),r.d(a,"targetNE",(function(){return xn})),r.d(a,"targetUN",(function(){return _n}));var i={};r.r(i),r.d(i,"LocationSchema",(function(){return Kn})),r.d(i,"LocationCriterion",(function(){return Jn})),r.d(i,"MaxTargetsPerOrganSchema",(function(){return Xn})),r.d(i,"MaxTargetsPerOrganCriterion",(function(){return Zn})),r.d(i,"MaxTargetsSchema",(function(){return ta})),r.d(i,"MaxTargetsCriterion",(function(){return ra})),r.d(i,"MeasurementsLengthSchema",(function(){return aa})),r.d(i,"MeasurementsLengthCriterion",(function(){return ia})),r.d(i,"ModalitySchema",(function(){return sa})),r.d(i,"ModalityCriterion",(function(){return ua})),r.d(i,"NonTargetResponseSchema",(function(){return la})),r.d(i,"NonTargetResponseCriterion",(function(){return fa})),r.d(i,"TargetTypeSchema",(function(){return pa})),r.d(i,"TargetTypeCriterion",(function(){return ha}));var o={};r.r(o),r.d(o,"recist11",(function(){return ba}));var s={COMMANDS:"commandsModule",PANEL:"panelModule",SOP_CLASS_HANDLER:"sopClassHandlerModule",TOOLBAR:"toolbarModule",VIEWPORT:"viewportModule"},u=r(13),c=r.n(u),l=r(0),f=r.n(l),d=r(1),p=r.n(d),h={error:console.error,warn:console.warn,info:console.log,trace:console.trace,debug:console.debug,time:console.time,timeEnd:console.timeEnd},m=function(){function e(t){var r=this,n=t.commandsManager,a=t.servicesManager,i=t.appConfig,o=void 0===i?{}:i;f()(this,e),this.modules={},this.registeredExtensionIds=[],this.moduleTypeNames=Object.values(s),this._commandsManager=n,this._servicesManager=a,this._appConfig=o,this.moduleTypeNames.forEach((function(e){r.modules[e]=[]}))}return p()(e,[{key:"registerExtensions",value:function(e){var t=this;e.forEach((function(e){if(Array.isArray(e)){var r=c()(e,2),n=r[0],a=r[1];t.registerExtension(n,a)}else t.registerExtension(e)}))}},{key:"registerExtension",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){var n=e.id;n||(n=Math.random().toString(36).substr(2,5),h.warn("Extension ID not set. Using random string ID: ".concat(n))),this.registeredExtensionIds.includes(n)?h.warn("Extension ID ".concat(n," has already been registered. Exiting before duplicating modules.")):(e.preRegistration&&e.preRegistration({servicesManager:this._servicesManager,commandsManager:this._commandsManager,appConfig:this._appConfig,configuration:r}),this.moduleTypeNames.forEach((function(a){var i=t._getExtensionModule(a,e,n,r);i&&(t._initSpecialModuleTypes(a,i),t.modules[a].push({extensionId:n,module:i}))})),this.registeredExtensionIds.push(n))}else h.warn("Attempting to register a null/undefined extension. Exiting early.")}},{key:"_getExtensionModule",value:function(e,t,r,n){var a,i="get".concat((a=e).charAt(0).toUpperCase()+a.substr(1)),o=t[i];if(o)try{var s=o({servicesManager:this._servicesManager,commandsManager:this._commandsManager,appConfig:this._appConfig,configuration:n});return s||h.warn("Null or undefined returned when registering the ".concat(i," module for the ").concat(r," extension")),s}catch(e){h.error("Exception thrown while trying to call ".concat(i," for the ").concat(r," extension"))}}},{key:"_initSpecialModuleTypes",value:function(e,t){switch(e){case"commandsModule":var r=t.definitions,n=t.defaultContext;if(!r||0===Object.keys(r).length)return void h.warn("Commands Module contains no command definitions");this._initCommandsModule(r,n)}}},{key:"_initCommandsModule",value:function(e){var t=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"VIEWER";this._commandsManager.getContext(r)||this._commandsManager.createContext(r),Object.keys(e).forEach((function(n){var a=e[n];a.context&&!t._commandsManager.getContext(a.context)&&t._commandsManager.createContext(a.context),t._commandsManager.registerCommand(a.context||r,n,a)}))}}]),e}();var v=function(){function e(){f()(this,e),this.services={},this.registeredServiceNames=[]}return p()(e,[{key:"registerService",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};e?e.name?this.registeredServiceNames.includes(e.name)?h.warn("Service name ".concat(e.name," has already been registered. Exiting before duplicating services.")):e.create?(this.services[e.name]=e.create({configuration:t}),this.registeredServiceNames.push(e.name)):h.warn("Service create factory function not defined. Exiting early."):h.warn("Service name not set. Exiting early."):h.warn("Attempting to register a null/undefined service. Exiting early.")}},{key:"registerServices",value:function(e){var t=this;e.forEach((function(e){if(Array.isArray(e)){var r=c()(e,2),n=r[0],a=r[1];t.registerService(n,a)}else t.registerService(e)}))}}]),e}(),y=[],g={name:"UINotificationService",hide:function(e){return b._hide({id:e})},show:function(e){var t=e.title,r=e.message,n=e.duration,a=void 0===n?5e3:n,i=e.position,o=void 0===i?"bottomRight":i,s=e.type,u=void 0===s?"info":s,c=e.autoClose,l=void 0===c||c;return b._show({title:t,message:r,duration:a,position:o,type:u,autoClose:l})},setServiceImplementation:function(e){var t=e.hide,r=e.show;t&&(b._hide=t);if(r)for(b._show=r;y.length>0;){var n=y.pop();b._show(n)}}},b={_hide:function(){return console.warn("hide() NOT IMPLEMENTED")},_show:function(e){y.push(e),console.warn("show() NOT IMPLEMENTED")}};var I={name:"UINotificationService",create:function(e){e.configuration;return g}},w={name:"UIModalService",hide:function(){return S._hide()},show:function(e){var t=e.content,r=void 0===t?null:t,n=e.contentProps,a=void 0===n?null:n,i=e.shouldCloseOnEsc,o=void 0!==i&&i,s=e.isOpen,u=void 0===s||s,c=e.closeButton,l=void 0===c||c,f=e.title,d=void 0===f?null:f,p=e.customClassName,h=void 0===p?null:p;return S._show({content:r,contentProps:a,shouldCloseOnEsc:o,isOpen:u,closeButton:l,title:d,customClassName:h})},setServiceImplementation:function(e){var t=e.hide,r=e.show;t&&(S._hide=t);r&&(S._show=r)}},S={_hide:function(){return console.warn("hide() NOT IMPLEMENTED")},_show:function(){return console.warn("show() NOT IMPLEMENTED")}};var P={name:"UIModalService",create:function(e){e.configuration;return w}},D={name:"UIDialogService",dismiss:function(e){var t=e.id;return E._dismiss({id:t})},dismissAll:function(){return E._dismissAll()},create:function(e){var t=e.id,r=e.content,n=e.contentProps,a=e.onStart,i=e.onDrag,o=e.onStop,s=e.centralize,u=void 0!==s&&s,c=e.preservePosition,l=void 0===c||c,f=e.isDraggable,d=void 0===f||f,p=e.showOverlay,h=void 0!==p&&p,m=e.defaultPosition;return E._create({id:t,content:r,contentProps:n,onStart:a,onDrag:i,onStop:o,centralize:u,preservePosition:l,isDraggable:d,showOverlay:h,defaultPosition:m})},setServiceImplementation:function(e){var t=e.dismiss,r=e.dismissAll,n=e.create;t&&(E._dismiss=t);r&&(E._dismissAll=r);n&&(E._create=n)}},E={_dismiss:function(){return console.warn("dismiss() NOT IMPLEMENTED")},_dismissAll:function(){return console.warn("dismissAll() NOT IMPLEMENTED")},_create:function(){return console.warn("create() NOT IMPLEMENTED")}};var O={name:"UIDialogService",create:function(e){e.configuration;return D}},x=r(4),_=r.n(x),k=function(){var e=function(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)};return e()+e()+"-"+e()+"-"+e()+"-"+e()+"-"+e()+e()+e()};function j(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var T,R,A=["id","SOPInstanceUID","FrameOfReferenceUID","referenceSeriesUID","label","description","type","unit","area","points","source"],M={MEASUREMENT_UPDATED:"event::measurement_updated",MEASUREMENT_ADDED:"event::measurement_added"},U={POLYLINE:"value_type::polyline",POINT:"value_type::point",ELLIPSE:"value_type::ellipse",MULTIPOINT:"value_type::multipoint",CIRCLE:"value_type::circle"},N=function(){function e(){f()(this,e),this._arrayOfObjects=function(e){return Object.entries(e).map((function(e){return _()({},e[0],e[1])}))},this.sources={},this.mappings={},this.measurements={},this.listeners={},Object.defineProperty(this,"EVENTS",{value:M,writable:!1,enumerable:!0,configurable:!1}),Object.defineProperty(this,"VALUE_TYPES",{value:U,writable:!1,enumerable:!0,configurable:!1})}return p()(e,[{key:"getMeasurements",value:function(){var e=this,t=this._arrayOfObjects(this.measurements);return t&&t.map((function(t){return e.measurements[Object.keys(t)[0]]}))}},{key:"getMeasurement",value:function(e){var t=null,r=this.measurements[e];return r&&Object.keys(r).length>0&&(t=this.measurements[e]),t}},{key:"createSource",value:function(e,t){var r=this;if(e){if(t){var n=k(),a={id:n,name:e,version:t,addOrUpdate:function(e,t){return r.addOrUpdate(a,e,t)},getAnnotation:function(e,t){return r.getAnnotation(a,e,t)}};return h.info("New '".concat(e,"@").concat(t,"' source added.")),this.sources[n]=a,a}h.warn("Source version not provided. Exiting early.")}else h.warn("Source name not provided. Exiting early.")}},{key:"addMapping",value:function(e,t,r,n,a){if(this._isValidSource(e))if(r)if(t)if(n)if(a){var i={matchingCriteria:r,definition:t,toSourceSchema:n,toMeasurementSchema:a};Array.isArray(this.mappings[e.id])?this.mappings[e.id].push(i):this.mappings[e.id]=[i],h.info("New measurement mapping added to source '".concat(this._getSourceInfo(e),"'."))}else h.warn("Measurement mapping function not provided. Exiting early.");else h.warn("Source mapping function not provided. Exiting early.");else h.warn("Definition not provided. Exiting early.");else h.warn("Matching criteria not provided. Exiting early.");else h.warn("Invalid source. Exiting early.")}},{key:"getAnnotation",value:function(e,t,r){if(this._isValidSource(e))if(t){var n=this._getMappingByMeasurementSource(r,t);if(n)return n.toSourceSchema(a,t);var a=this.getMeasurement(r),i=this._getMatchingMapping(e,t,a);if(i)return h.info("Matching mapping found:",i),(0,i.toSourceSchema)(a,i.definition)}else h.warn("No source definition provided. Exiting early.");else h.warn("Invalid source. Exiting early.")}},{key:"addOrUpdate",value:function(e,t,r){if(this._isValidSource(e)){var n=this._getSourceInfo(e);if(!t)return console.log("TEST"),void h.warn("No source definition provided. Exiting early.");if(this._sourceHasMappings(e)){var a={};try{(a=(0,this.mappings[e.id].find((function(e){return e.definition===t})).toMeasurementSchema)(r)).source=e}catch(e){return void h.warn("Failed to map '".concat(n,"' measurement for definition ").concat(t,":"),e.message)}if(this._isValidMeasurement(a)){var i=r.id;i||(i=k(),h.warn("Measurement ID not found. Generating UID: ".concat(i)));var o=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?j(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):j(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},a,{modifiedTimestamp:Math.floor(Date.now()/1e3),id:i});return this.measurements[i]?(h.info("Measurement already defined. Updating measurement.",o),this.measurements[i]=o,this._broadcastChange(this.EVENTS.MEASUREMENT_UPDATED,e,o)):(h.info("Measurement added.",o),this.measurements[i]=o,this._broadcastChange(this.EVENTS.MEASUREMENT_ADDED,e,o)),o.id}h.warn("Attempting to add or update a invalid measurement provided by '".concat(n,"'. Exiting early."))}else h.warn("No measurement mappings found for '".concat(n,"' source. Exiting early."))}else h.warn("Invalid source. Exiting early.")}},{key:"subscribe",value:function(e,t){var r=this;if(this._isValidEvent(e)){var n=k(),a={id:n,callback:t};return console.info("Subscribing to '".concat(e,"'.")),Array.isArray(this.listeners[e])?this.listeners[e].push(a):this.listeners[e]=[a],{unsubscribe:function(){return r._unsubscribe(e,n)}}}throw new Error("Event ".concat(e," not supported."))}},{key:"_getMappingByMeasurementSource",value:function(e,t){var r=this.getMeasurement(e);if(this._isValidSource(r.source))return this.mappings[r.source.id].find((function(e){return e.definition===t}))}},{key:"_getMatchingMapping",value:function(e,t,r){return this.mappings[e.id].filter((function(e){return e.definition===t})).find((function(e){var t=e.matchingCriteria;return r.points&&r.points.length===t.points}))}},{key:"_getSourceInfo",value:function(e){return"".concat(e.name,"@").concat(e.version)}},{key:"_isValidSource",value:function(e){return e&&this.sources[e.id]}},{key:"_sourceHasMappings",value:function(e){return Array.isArray(this.mappings[e.id])&&this.mappings[e.id].length}},{key:"_broadcastChange",value:function(e,t,r){var n=Object.keys(this.listeners).length>0,a=Array.isArray(this.listeners[e]);n&&a&&this.listeners[e].forEach((function(e){e.callback({source:t,measurement:r})}))}},{key:"_unsubscribe",value:function(e,t){if(this.listeners[e]){var r=this.listeners[e];Array.isArray(r)?this.listeners[e]=r.filter((function(e){return e.id!==t})):this.listeners[e]=void 0}}},{key:"_isValidMeasurement",value:function(e){return Object.keys(e).forEach((function(e){if(!A.includes(e))return h.warn("Invalid measurement key: ".concat(e)),!1})),!0}},{key:"_isValidEvent",value:function(e){return Object.values(this.EVENTS).includes(e)}}]),e}(),C={name:"MeasurementService",create:function(e){e.configuration;return new N}},F=r(9),L=r.n(F),V=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=t.getAppState,n=t.getActiveContexts;f()(this,e),this.contexts={},r&&n||h.warn("CommandsManager was instantiated without getAppState() or getActiveContexts()"),this._getAppState=r,this._getActiveContexts=n}return p()(e,[{key:"createContext",value:function(e){if(e)return this.contexts[e]?this.clearContext(e):void(this.contexts[e]={})}},{key:"getContext",value:function(e){var t=this.contexts[e];if(t)return t}},{key:"clearContext",value:function(e){e&&(this.contexts[e]={})}},{key:"registerCommand",value:function(e,t,r){if("object"===L()(r)){var n=this.getContext(e);n&&(n[t]=r)}}},{key:"getCommand",value:function(e,t){var r,n=this,a=[];if(t){var i=this.getContext(t);i&&a.push(i)}else{this._getActiveContexts().forEach((function(e){var t=n.getContext(e);t&&a.push(t)}))}if(0!==a.length)return a.forEach((function(t){t[e]&&(r=t[e])})),r}},{key:"runCommand",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=arguments.length>2?arguments[2]:void 0,n=this.getCommand(e,r);if(n){var a=n.commandFn,i=n.storeContexts,o=void 0===i?[]:i,s=n.options,u={},c=this._getAppState();if(o.forEach((function(e){u[e]=c[e]})),u=Object.assign({},u,s,t),"function"==typeof a)return a(u);h.warn('No commandFn was defined for command "'.concat(e,'"'))}else h.warn('Command "'.concat(e,'" not found in current context'))}}]),e}(),q=r(10),$=r.n(q),z=r(42),G=r.n(z);!function(e){var t=[],r=null,n=[],a=!1,i=e.prototype.handleKey;function o(e,t,r){var o=this;if(o.recording)if("keydown"===r.type){1===e.length&&a&&u();for(var c=0;c<t.length;++c)s(t[c]);s(e)}else"keyup"===r.type&&n.length>0&&u();else i.apply(o,arguments)}function s(e){for(var t=0;t<n.length;++t)if(n[t]===e)return;n.push(e),1===e.length&&(a=!0)}function u(){t.push(n),n=[],a=!1,c()}function c(){r&&(!function(e){for(var t=0;t<e.length;++t)e[t].sort((function(e,t){return e.length>1&&1===t.length?-1:1===e.length&&t.length>1||e>t?1:-1})),e[t]=e[t].join("+")}(t),r(t)),t=[],r=null,n=[]}e.prototype.record=function(e){var t=this;t.recording=!0,r=function(){t.recording=!1,e.apply(t,arguments)}},e.prototype.stopRecord=function(){this.recording=!1},e.prototype.startRecording=function(){this.recording=!0},e.prototype.handleKey=function(){var e=this;o.apply(e,arguments)},e.init()}(G.a),T=G.a,R=T.prototype.stopCallback,T.prototype.stopCallback=function(e,t,r){return!!this.paused||R.call(this,e,t,r)},T.prototype.pause=function(){this.paused=!0},T.prototype.unpause=function(){this.paused=!1},T.init();var B=G.a;function H(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function W(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?H(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):H(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Q=function(){function e(t,r){f()(this,e),this.hotkeyDefinitions={},this.hotkeyDefaults=[],this.isEnabled=!0,t||h.warn("HotkeysManager instantiated without a commandsManager. Hotkeys will be unable to find and run commands."),this._servicesManager=r,this._commandsManager=t}return p()(e,[{key:"record",value:function(e){return B.record(e)}},{key:"disable",value:function(){this.isEnabled=!1,B.pause()}},{key:"enable",value:function(){this.isEnabled=!0,B.unpause()}},{key:"setHotkeys",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];try{var r=this._getValidDefinitions(t);r.forEach((function(t){return e.registerHotkeys(t)}))}catch(e){var n=this._servicesManager.services.UINotificationService;n.show({title:"Hotkeys Manager",message:"Erro while setting hotkeys",type:"error"})}}},{key:"setDefaultHotKeys",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=this._getValidDefinitions(e);this.hotkeyDefaults=t}},{key:"_getValidDefinitions",value:function(e){return Array.isArray(e)?$()(e):this._parseToArrayLike(e)}},{key:"_parseToArrayLike",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=W({},t);return Object.entries(r).map((function(t){return e._parseToHotKeyObj(t[0],t[1])}))}},{key:"_parseToHotKeyObj",value:function(e,t){return W({commandName:e},t)}},{key:"registerHotkeys",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.commandName,r=e.keys,n=e.label;if(t){var a=this.hotkeyDefinitions[t];if(a){var i=a.keys;this._unbindHotkeys(t,i),h.info("Unbinding ".concat(t," from ").concat(i))}this.hotkeyDefinitions[t]={keys:r,label:n},this._bindHotkeys(t,r),h.info("Binding ".concat(t," to ").concat(r))}else h.warn('No command was defined for hotkey "'.concat(r,'"'))}},{key:"restoreDefaultBindings",value:function(){this.setHotkeys(this.hotkeyDefaults)}},{key:"destroy",value:function(){this.hotkeyDefaults=[],this.hotkeyDefinitions={},B.reset()}},{key:"_bindHotkeys",value:function(e,t){var r=this;""===t||void 0===t||(t instanceof Array?t:[t]).forEach((function(t){return B.bind(t,(function(t){t.preventDefault(),t.stopPropagation(),r._commandsManager.runCommand(e,{evt:t})}))}))}},{key:"_unbindHotkeys",value:function(e,t){""!==t&&void 0!==t&&(t instanceof Array?t:[t]).forEach((function(e){return B.unbind(e)}))}}]),e}(),K=r(22),J=r.n(K),Y=r(6),X=r.n(Y),Z=r(8),ee=r.n(Z),te=r(3),re=r.n(te);var ne={userLoggedIn:function(){return!1},getUserId:function(){return null},getName:function(){return null},getAccessToken:function(){return null},login:function(){return new Promise((function(e,t){return t()}))},logout:function(){return new Promise((function(e,t){return t()}))},getData:function(e){return null},setData:function(e,t){return null}};var ae={getAttribute:function(e,t){return e&&e.Value&&e.Value.length?function(e){function t(e){var t=e.length;return 0==t?"0000":1==t?"000".concat(e):2==t?"00".concat(e):3==t?"0".concat(e):e}for(var r="",n=0;n<e.length;n++)for(var a=0;a<e[n].length;a++)r+=t(e[n].charCodeAt(a).toString(16));return parseInt(r,16)}(e.Value):t},getAuthorizationHeader:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.requestOptions,r={},n=ne&&ne.getAccessToken&&ne.getAccessToken();return t&&t.auth?"function"==typeof t.auth?r.Authorization=t.auth(t):r.Authorization="Basic ".concat(btoa(t.auth)):n&&(r.Authorization=n),r},getModalities:function(e,t){if(!e&&!t)return{};var r=e||{vr:"CS",Value:[]};if(t){if(!r.vr||r.vr!==t.vr)return t;for(var n=0;n<t.Value.length;n++){var a=t.Value[n];-1===r.Value.indexOf(a)&&r.Value.push(a)}}return r},getName:function(e,t){return e&&e.Value&&e.Value.length?e.Value[0].Alphabetic?e.Value[0].Alphabetic:e.Value[0]:t},getNumber:function(e,t){return e&&e.Value&&e.Value.length?parseFloat(e.Value[0]):t},getString:function(e,t){return e&&e.Value&&e.Value.length?e.Value.join("\\"):t}},ie=r(66),oe=r.n(ie),se=r(107);function ue(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ce=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ue()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e){var t;return f()(this,n),(t=r.call(this)).message=e,t.stack=(new Error).stack,t.name=t.constructor.name,t}return n}(r.n(se)()(Error)),le=r(28);function fe(e){return e.getData().metadata.ImagePositionPatient}var de=function(){function e(t){if(f()(this,e),!0!==Array.isArray(t))throw new ce("ImageSet expects an array of images");Object.defineProperty(this,"images",{enumerable:!1,configurable:!1,writable:!1,value:t}),Object.defineProperty(this,"uid",{enumerable:!1,configurable:!1,writable:!1,value:k()})}return p()(e,[{key:"getUID",value:function(){return this.uid}},{key:"setAttribute",value:function(e,t){this[e]=t}},{key:"getAttribute",value:function(e){return this[e]}},{key:"setAttributes",value:function(e){if("object"===L()(e)&&null!==e){for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this[t]=e[t])}}},{key:"getImage",value:function(e){return this.images[e]}},{key:"sortBy",value:function(e){return this.images.sort(e)}},{key:"sortByImagePositionPatient",value:function(){var e=this.images,t=fe(e[0]),r=new le.Vector3(t[0],t[1],t[2]),n=e[0].getData().metadata.ImageOrientationPatient,a=new le.Vector3(n[0],n[1],n[2]).cross(new le.Vector3(n[3],n[4],n[5])),i=e.map((function(e){var t=oe()(le.Vector3,$()(fe(e)));return{distance:r.clone().sub(t).dot(a),image:e}}));i.sort((function(e,t){return t.distance-e.distance}));var o=i.map((function(e){return e.image}));e.sort((function(e,t){return o.indexOf(e)-o.indexOf(t)}))}}]),e}(),pe=function(){function e(t,r){f()(this,e),Object.defineProperty(this,"_data",{configurable:!1,enumerable:!1,writable:!1,value:t}),Object.defineProperty(this,"_uid",{configurable:!1,enumerable:!1,writable:!1,value:r}),Object.defineProperty(this,"_custom",{configurable:!1,enumerable:!1,writable:!1,value:Object.create(null)})}return p()(e,[{key:"getData",value:function(){return this._data}},{key:"getDataProperty",value:function(e){var t,r=this._data;return(r instanceof Object||"object"===L()(r)&&null!==r)&&(t=r[e]),t}},{key:"getObjectID",value:function(){return this._uid}},{key:"setCustomAttribute",value:function(e,t){this._custom[e]=t}},{key:"getCustomAttribute",value:function(e){return this._custom[e]}},{key:"customAttributeExists",value:function(e){return e in this._custom}},{key:"setCustomAttributes",value:function(e){var t=Object.prototype.hasOwnProperty,r=this._custom;for(var n in e)t.call(e,n)&&(r[n]=e[n])}}],[{key:"isValidUID",value:function(e){return"string"===L()(e)&&e.length>0}},{key:"isValidIndex",value:function(e){return"number"===L()(e)&&e>=0&&(0|e)===e}},{key:"isValidCallback",value:function(e){return"function"===L()(e)}}]),e}();function he(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var me=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(he()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t){var a;return f()(this,n),a=r.call(this,e,t),Object.defineProperties(J()(a),{_imageId:{configurable:!0,enumerable:!1,writable:!0,value:null}}),a._definePublicProperties(),a}return p()(n,[{key:"_definePublicProperties",value:function(){Object.defineProperty(this,"SOPInstanceUID",{configurable:!1,enumerable:!1,get:function(){return this.getSOPInstanceUID()}})}},{key:"getStudyInstanceUID",value:function(){return this.getTagValue("StudyInstanceUID",null)}},{key:"getSeriesInstanceUID",value:function(){return this.getTagValue("SeriesInstanceUID",null)}},{key:"getSOPInstanceUID",value:function(){return this.getTagValue("SOPInstanceUID",null)}},{key:"getStringValue",value:function(e,t,r){var a=this.getTagValue(e,r);return"string"!==L()(a)&&"undefined"!==L()(a)&&(a=a.toString()),n.getIndexedValue(a,t,r)}},{key:"getFloatValue",value:function(e,t,r){var a=this.getTagValue(e,r);return(a=n.getIndexedValue(a,t,r))instanceof Array?(a.forEach((function(e,t){a[t]=parseFloat(e)})),a):"string"===L()(a)?parseFloat(a):a}},{key:"getIntValue",value:function(e,t,r){var a=this.getTagValue(e,r);return(a=n.getIndexedValue(a,t,r))instanceof Array?(a.forEach((function(e,t){a[t]=parseFloat(e)})),a):"string"===L()(a)?parseInt(a):a}},{key:"getTagValue",value:function(e,t){throw new ce("InstanceMetadata::getTagValue is not overriden. Please, override it in a specialized class. See OHIFInstanceMetadata for example")}},{key:"equals",value:function(e){return e===this||e instanceof n&&e.getSOPInstanceUID()===this.getSOPInstanceUID()}},{key:"tagExists",value:function(e){throw new ce("InstanceMetadata::tagExists is not overriden. Please, override it in a specialized class. See OHIFInstanceMetadata for example")}},{key:"getImageId",value:function(e){throw new ce("InstanceMetadata::getImageId is not overriden. Please, override it in a specialized class. See OHIFInstanceMetadata for example")}}],[{key:"getIndexedValue",value:function(e,t,r){var n=r;if("string"===L()(e)){var a=-1!==e.indexOf("\\");if(n=e,a){var i=e.split("\\");if(pe.isValidIndex(t)){var o=i[t];n="string"!==L()(o)?r:o}else n=i}}return n}}]),n}(pe);function ve(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ye=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ve()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t){var a;return f()(this,n),a=r.call(this,e,t),Object.defineProperties(J()(a),{_seriesInstanceUID:{configurable:!0,enumerable:!1,writable:!0,value:null},_instances:{configurable:!1,enumerable:!1,writable:!1,value:[]},_firstInstance:{configurable:!1,enumerable:!1,writable:!0,value:null}}),a._definePublicProperties(),a}return p()(n,[{key:"_definePublicProperties",value:function(){Object.defineProperty(this,"seriesInstanceUID",{configurable:!1,enumerable:!1,get:function(){return this.getSeriesInstanceUID()}})}},{key:"getSeriesInstanceUID",value:function(){return this._seriesInstanceUID}},{key:"addInstance",value:function(e){var t=!1;return e instanceof me&&void 0===this.getInstanceByUID(e.getSOPInstanceUID())&&(this._instances.push(e),t=!0),t}},{key:"getFirstInstance",value:function(){var e=this._firstInstance;if(!(e instanceof me)){e=null;var t=this.getInstanceByIndex(0);t instanceof me&&(this._firstInstance=t,e=t)}return e}},{key:"getInstanceByIndex",value:function(e){var t;return pe.isValidIndex(e)&&(t=this._instances[e]),t}},{key:"getInstanceByUID",value:function(e){var t;return pe.isValidUID(e)&&(t=this._instances.find((function(t){return t.getSOPInstanceUID()===e}))),t}},{key:"getInstanceCount",value:function(){return this._instances.length}},{key:"forEachInstance",value:function(e){pe.isValidCallback(e)&&this._instances.forEach((function(t,r){e.call(null,t,r)}))}},{key:"indexOfInstance",value:function(e){return this._instances.indexOf(e)}},{key:"findInstance",value:function(e){if(pe.isValidCallback(e))return this._instances.find((function(t,r){return e.call(null,t,r)}))}},{key:"equals",value:function(e){return e===this||e instanceof n&&e.getSeriesInstanceUID()===this.getSeriesInstanceUID()}}]),n}(pe);function ge(e){return(ge="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function be(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function Ie(e){for(var t=new Uint8Array(e.length),r=0,n=e.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function we(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;if(r+t.length>e.length)return!1;for(var n=r,a=0;a<t.length;a++){if(t[a]!==e[n])return!1;n+=1}return!0}function Se(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3?arguments[3]:void 0,a=e.length;n&&(a=Math.min(r+n,e.length));for(var i=r;i<a;i++)if(e[i]===t[0]&&we(e,t,i))return i;return-1}function Pe(){function e(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return"".concat(e()+e(),"-").concat(e(),"-").concat(e(),"-").concat(e(),"-").concat(e()).concat(e()).concat(e())}function De(e){var t=new Uint8Array(e),r=Ie("\r\n\r\n"),n=Se(t,r,0,1e3);if(-1===n)throw new Error("Response message has no multipart mime header");var a=function(e){for(var t=e.split("\r\n"),r=0;r<t.length;r++)if("--"===t[r].substr(0,2))return t[r];return null}(function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2?arguments[2]:void 0,n=r||e.length-t,a="",i=t;i<t+n;i++)a+=String.fromCharCode(e[i]);return a}(t,0,n));if(!a)throw new Error("Header of response message does not specify boundary");for(var i,o=Ie(a),s=o.length,u=[],c=s;-1!==i&&-1!==(i=Se(t,o,c));){var l=Se(t,r,c,1e3);if(-1===l)throw new Error("Response message part has no mime header");c=l+r.length;var f=e.slice(c,i-2);u.push(f),c=i+s}return u}function Ee(e){return"object"===ge(e)&&null!==e}function Oe(e){return 0===Object.keys(e).length&&e.constructor===Object}var xe=function(e){return e[0]},_e=function(e){return e.length>1?e:e[0]},ke="application/dicom",je="application/dicom+json",Te="application/octet-stream",Re="application/pdf";var Ae={DICOMwebClient:function(){function e(t){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.baseURL=t.url,this.baseURL||console.error("no DICOMweb base url provided - calls will fail"),"username"in t&&(this.username=t.username,"password"in t||console.error("no password provided to authenticate with DICOMweb service"),this.password=t.password),"qidoURLPrefix"in t?(console.log("use URL prefix for QIDO-RS: ".concat(t.qidoURLPrefix)),this.qidoURL="".concat(this.baseURL,"/").concat(t.qidoURLPrefix)):this.qidoURL=this.baseURL,"wadoURLPrefix"in t?(console.log("use URL prefix for WADO-RS: ".concat(t.wadoURLPrefix)),this.wadoURL="".concat(this.baseURL,"/").concat(t.wadoURLPrefix)):this.wadoURL=this.baseURL,"stowURLPrefix"in t?(console.log("use URL prefix for STOW-RS: ".concat(t.stowURLPrefix)),this.stowURL="".concat(this.baseURL,"/").concat(t.stowURLPrefix)):this.stowURL=this.baseURL,this.headers=t.headers||{}}var t,r,n;return t=e,n=[{key:"_parseQueryParameters",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="?";return Object.keys(e).forEach((function(r,n){0!==n&&(t+="&"),t+="".concat(r,"=").concat(encodeURIComponent(e[r]))})),t}},{key:"_assertMediaTypeIsValid",value:function(e){if(!e)throw new Error("Not a valid media type: ".concat(e));var t=e.indexOf("/");if(-1===t)throw new Error("Not a valid media type: ".concat(e));var r=e.slice(0,t);if(!["application","image","text","video"].includes(r))throw new Error("Not a valid media type: ".concat(e));if(e.slice(t+1).includes("/"))throw new Error("Not a valid media type: ".concat(e))}},{key:"_parseMediaType",value:function(t){return e._assertMediaTypeIsValid(t),t.split("/")}},{key:"_buildAcceptHeaderFieldValue",value:function(t,r){if(!Array.isArray(t))throw new Error("Acceptable media types must be provided as an Array");return t.map((function(t){var n=t.mediaType;if(e._assertMediaTypeIsValid(n),!r.includes(n))throw new Error("Media type ".concat(n," is not supported for requested resource"));return n})).join(", ")}},{key:"_buildMultipartAcceptHeaderFieldValue",value:function(t,r){if(!Array.isArray(t))throw new Error("Acceptable media types must be provided as an Array");if(!Array.isArray(r)&&!Ee(r))throw new Error("Supported media types must be provided as an Array or an Object");var n=[];return t.forEach((function(t){var a=t.transferSyntaxUID,i=t.mediaType;e._assertMediaTypeIsValid(i);var o='multipart/related; type="'.concat(i,'"');if(Ee(r)){if(!(Object.values(r).flat(1).includes(i)||i.endsWith("/*")&&i.endsWith("/")))throw new Error("Media type ".concat(i," is not supported for requested resource"));if(a){if("*"!==a){if(!Object.keys(r).includes(a))throw new Error("Transfer syntax ".concat(a," is not supported for requested resource"));var s=r[a];if(!s.includes(i)){var u=e._parseMediaType(i)[0];s.map((function(t){var r=e._parseMediaType(t)[0];if(u!==r||!i.endsWith("/*")&&!i.endsWith("/"))throw new Error("Transfer syntax ".concat(a," is not supported for requested resource"))}))}}o+="; transfer-syntax=".concat(a)}}else if(Array.isArray(r)&&!r.includes(i))throw new Error("Media type ".concat(i," is not supported for requested resource"));n.push(o)})),n.join(", ")}},{key:"_buildRangeHeaderFieldValue",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return 1===e.length?"bytes=".concat(e[0],"-"):2===e.length?"bytes=".concat(e[0],"-").concat(e[1]):"bytes=0-"}},{key:"_getCommonMediaType",value:function(t){if(!t||!t.length)throw new Error("No acceptable media types provided");var r=new Set;if(t.forEach((function(t){var n=t.mediaType;if(n.startsWith("application"))r.add(n);else{var a=e._parseMediaType(n)[0];r.add("".concat(a,"/"))}})),0===r.size)throw new Error("No common acceptable media type could be identified.");if(r.size>1)throw new Error("Acceptable media types must have the same type.");return Array.from(r)[0]}}],(r=[{key:"_httpRequest",value:function(e,t,r){var n=this,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return new Promise((function(i,o){var s=new XMLHttpRequest;s.open(t,e,!0),"responseType"in a&&(s.responseType=a.responseType),"object"===ge(r)&&Object.keys(r).forEach((function(e){s.setRequestHeader(e,r[e])}));var u=n.headers;Object.keys(u).forEach((function(e){s.setRequestHeader(e,u[e])})),s.onloadstart=function(){},s.onloadend=function(){},s.onreadystatechange=function(){if(4===s.readyState)if(200===s.status)i(s.response);else if(202===s.status)console.warn("some resources already existed: ",s),i(s.response);else if(204===s.status)console.warn("empty response for request: ",s),i([]);else{console.error("request failed: ",s);var e=new Error("request failed");e.request=s,e.response=s.response,e.status=s.status,console.error(e),console.error(e.response),o(e)}},"progressCallback"in a&&"function"==typeof a.progressCallback&&(s.onprogress=a.progressCallback),"data"in a?s.send(a.data):s.send()}))}},{key:"_httpGet",value:function(e,t,r,n){return this._httpRequest(e,"get",t,{responseType:r,progressCallback:n})}},{key:"_httpGetApplicationJson",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=t;"object"===ge(r)&&(Oe(r)||(a+=e._parseQueryParameters(r)));var i={Accept:je},o="json";return this._httpGet(a,i,o,n)}},{key:"_httpGetApplicationPdf",value:function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0,a=t;"object"===ge(r)&&(Oe(r)||(a+=e._parseQueryParameters(r)));var i={Accept:Re},o="json";return this._httpGet(a,i,o,n)}},{key:"_httpGetImage",value:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0,i=t;"object"===ge(n)&&(Oe(n)||(i+=e._parseQueryParameters(n)));var o=["image/","image/*","image/jpeg","image/jp2","image/gif","image/png"],s=e._buildAcceptHeaderFieldValue(r,o),u={Accept:s},c="arraybuffer";return this._httpGet(i,u,c,a)}},{key:"_httpGetText",value:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0,i=t;"object"===ge(n)&&(Oe(n)||(i+=e._parseQueryParameters(n)));var o=["text/","text/*","text/html","text/plain","text/rtf","text/xml"],s=e._buildAcceptHeaderFieldValue(r,o),u={Accept:s},c="arraybuffer";return this._httpGet(i,u,c,a)}},{key:"_httpGetVideo",value:function(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3?arguments[3]:void 0,i=t;"object"===ge(n)&&(Oe(n)||(i+=e._parseQueryParameters(n)));var o=["video/","video/*","video/mpeg","video/mp4","video/H265"],s=e._buildAcceptHeaderFieldValue(r,o),u={Accept:s},c="arraybuffer";return this._httpGet(i,u,c,a)}},{key:"_httpGetMultipartImage",value:function(t,r,n,a){var i,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s=arguments.length>5?arguments[5]:void 0,u={};return o?i=["image/jpeg","image/gif","image/png","image/jp2"]:(i={"1.2.840.10008.1.2.5":["image/x-dicom-rle"],"1.2.840.10008.1.2.4.50":["image/jpeg"],"1.2.840.10008.1.2.4.51":["image/jpeg"],"1.2.840.10008.1.2.4.57":["image/jpeg"],"1.2.840.10008.1.2.4.70":["image/jpeg"],"1.2.840.10008.1.2.4.80":["image/x-jls","image/jls"],"1.2.840.10008.1.2.4.81":["image/x-jls","image/jls"],"1.2.840.10008.1.2.4.90":["image/jp2"],"1.2.840.10008.1.2.4.91":["image/jp2"],"1.2.840.10008.1.2.4.92":["image/jpx"],"1.2.840.10008.1.2.4.93":["image/jpx"]},n&&(u.Range=e._buildRangeHeaderFieldValue(n))),u.Accept=e._buildMultipartAcceptHeaderFieldValue(r,i),this._httpGet(t,u,"arraybuffer",s).then(De)}},{key:"_httpGetMultipartVideo",value:function(t,r,n,a){var i,o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],s=arguments.length>5?arguments[5]:void 0,u={};return o?i=["video/","video/*","video/mpeg2","video/mp4","video/H265"]:(i={"1.2.840.10008.1.2.4.100":["video/mpeg2"],"1.2.840.10008.1.2.4.101":["video/mpeg2"],"1.2.840.10008.1.2.4.102":["video/mp4"],"1.2.840.10008.1.2.4.103":["video/mp4"],"1.2.840.10008.1.2.4.104":["video/mp4"],"1.2.840.10008.1.2.4.105":["video/mp4"],"1.2.840.10008.1.2.4.106":["video/mp4"]},n&&(u.Range=e._buildRangeHeaderFieldValue(n))),u.Accept=e._buildMultipartAcceptHeaderFieldValue(r,i),this._httpGet(t,u,"arraybuffer",s).then(De)}},{key:"_httpGetMultipartApplicationDicom",value:function(t,r,n,a){var i={},o="application/dicom",s={"1.2.840.10008.1.2.1":[o],"1.2.840.10008.1.2.5":[o],"1.2.840.10008.1.2.4.50":[o],"1.2.840.10008.1.2.4.51":[o],"1.2.840.10008.1.2.4.57":[o],"1.2.840.10008.1.2.4.70":[o],"1.2.840.10008.1.2.4.80":[o],"1.2.840.10008.1.2.4.81":[o],"1.2.840.10008.1.2.4.90":[o],"1.2.840.10008.1.2.4.91":[o],"1.2.840.10008.1.2.4.92":[o],"1.2.840.10008.1.2.4.93":[o],"1.2.840.10008.1.2.4.100":[o],"1.2.840.10008.1.2.4.101":[o],"1.2.840.10008.1.2.4.102":[o],"1.2.840.10008.1.2.4.103":[o],"1.2.840.10008.1.2.4.104":[o],"1.2.840.10008.1.2.4.105":[o],"1.2.840.10008.1.2.4.106":[o]},u=r;return r||(u=[{mediaType:o}]),i.Accept=e._buildMultipartAcceptHeaderFieldValue(u,s),this._httpGet(t,i,"arraybuffer",a).then(De)}},{key:"_httpGetMultipartApplicationOctetStream",value:function(t,r,n,a,i){var o={},s={"1.2.840.10008.1.2.1":["application/octet-stream"]},u=r;return r||(u=[{mediaType:"application/octet-stream"}]),n&&(o.Range=e._buildRangeHeaderFieldValue(n)),o.Accept=e._buildMultipartAcceptHeaderFieldValue(u,s),this._httpGet(t,o,"arraybuffer",i).then(De)}},{key:"_httpPost",value:function(e,t,r,n){return this._httpRequest(e,"post",t,{data:r,progressCallback:n})}},{key:"_httpPostApplicationJson",value:function(e,t,r){var n={"Content-Type":je};return this._httpPost(e,n,t,r)}},{key:"searchForStudies",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};console.log("search for studies");var r="".concat(this.qidoURL,"/studies");return"queryParams"in t&&(r+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(r)}},{key:"retrieveStudyMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of study metadata");console.log("retrieve metadata of study ".concat(e.studyInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"searchForSeries",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=this.qidoURL;return"studyInstanceUID"in t&&(console.log("search series of study ".concat(t.studyInstanceUID)),r+="/studies/".concat(t.studyInstanceUID)),r+="/series","queryParams"in t&&(r+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(r)}},{key:"retrieveSeriesMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of series metadata");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required for retrieval of series metadata");console.log("retrieve metadata of series ".concat(e.seriesInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/series/").concat(e.seriesInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"searchForInstances",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},r=this.qidoURL;return"studyInstanceUID"in t?(r+="/studies/".concat(t.studyInstanceUID),"seriesInstanceUID"in t?(console.log("search for instances of series ".concat(t.seriesInstanceUID)),r+="/series/".concat(t.seriesInstanceUID)):console.log("search for instances of study ".concat(t.studyInstanceUID))):console.log("search for instances"),r+="/instances","queryParams"in t&&(r+=e._parseQueryParameters(t.queryParams)),this._httpGetApplicationJson(r)}},{key:"buildInstanceWadoURIUrl",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required.");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required.");if(!("sopInstanceUID"in e))throw new Error("SOP Instance UID is required.");var t=e.contentType||ke,r=e.transferSyntax||"*",n=[];n.push("requestType=WADO"),n.push("studyUID=".concat(e.studyInstanceUID)),n.push("seriesUID=".concat(e.seriesInstanceUID)),n.push("objectUID=".concat(e.sopInstanceUID)),n.push("contentType=".concat(t)),n.push("transferSyntax=".concat(r));var a=n.join("&");return"".concat(this.wadoURL,"?").concat(a)}},{key:"retrieveInstanceMetadata",value:function(e){if(!("studyInstanceUID"in e))throw new Error("Study Instance UID is required for retrieval of instance metadata");if(!("seriesInstanceUID"in e))throw new Error("Series Instance UID is required for retrieval of instance metadata");if(!("sopInstanceUID"in e))throw new Error("SOP Instance UID is required for retrieval of instance metadata");console.log("retrieve metadata of instance ".concat(e.sopInstanceUID));var t="".concat(this.wadoURL,"/studies/").concat(e.studyInstanceUID,"/series/").concat(e.seriesInstanceUID,"/instances/").concat(e.sopInstanceUID,"/metadata");return this._httpGetApplicationJson(t)}},{key:"retrieveInstanceFrames",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of instance frames");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of instance frames");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of instance frames");if(!("frameNumbers"in t))throw new Error("frame numbers are required for retrieval of instance frames");console.log("retrieve frames ".concat(t.frameNumbers.toString()," of instance ").concat(t.sopInstanceUID));var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/frames/").concat(t.frameNumbers.toString()),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationOctetStream(r);var a=e._getCommonMediaType(n);if(a===Te)return this._httpGetMultipartApplicationOctetStream(r,n);if(a.startsWith("image"))return this._httpGetMultipartImage(r,n);if(a.startsWith("video"))return this._httpGetMultipartVideo(r,n);throw new Error("Media type ".concat(a," is not supported for retrieval of frames."))}},{key:"retrieveInstanceRendered",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of rendered instance");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of rendered instance");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of rendered instance");var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/rendered"),n=t.mediaTypes,a=t.params;if(!n)return this._httpGet(r,{},"arraybuffer");var i=e._getCommonMediaType(n);if(i.startsWith("image"))return this._httpGetImage(r,n,a);if(i.startsWith("video"))return this._httpGetVideo(r,n,a);if(i.startsWith("text"))return this._httpGetText(r,n,a);if(i===Re)return this._httpGetApplicationPdf(r,a);throw new Error("Media type ".concat(i," is not supported for retrieval of rendered instance."))}},{key:"retrieveInstanceFramesRendered",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required for retrieval of rendered instance frames");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required for retrieval of rendered instance frames");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required for retrieval of rendered instance frames");if(!("frameNumbers"in t))throw new Error("frame numbers are required for retrieval of rendered instance frames");console.debug("retrieve rendered frames ".concat(t.frameNumbers.toString()," of instance ").concat(t.sopInstanceUID));var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID,"/frames/").concat(t.frameNumbers.toString(),"/rendered"),n=t.mediaTypes;if(!n)return this._httpGet(r,{},"arraybuffer");var a=e._getCommonMediaType(n);if(a.startsWith("image"))return this._httpGetImage(r,n);if(a.startsWith("video"))return this._httpGetVideo(r,n);throw new Error("Media type ".concat(a," is not supported for retrieval of rendered frame."))}},{key:"retrieveInstance",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required");if(!("sopInstanceUID"in t))throw new Error("SOP Instance UID is required");var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID,"/instances/").concat(t.sopInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(r).then(xe);var a=e._getCommonMediaType(n);if(a===ke)return this._httpGetMultipartApplicationDicom(r,n).then(xe);if(a===Te)return this._httpGetMultipartApplicationOctetStream(r,n).then(xe);if(a.startsWith("image"))return this._httpGetMultipartImage(r,n).then(_e);if(a.startsWith("video"))return this._httpGetMultipartVideo(r,n).then(_e);throw new Error("Media type ".concat(a," is not supported for retrieval of instance."))}},{key:"retrieveSeries",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");if(!("seriesInstanceUID"in t))throw new Error("Series Instance UID is required");var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID,"/series/").concat(t.seriesInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(r);var a=e._getCommonMediaType(n);if(a===ke)return this._httpGetMultipartApplicationDicom(r,n);if(a===Te)return this._httpGetMultipartApplicationOctetStream(r,n);if(a.startsWith("image"))return this._httpGetMultipartImage(r,n);if(a.startsWith("video"))return this._httpGetMultipartVideo(r,n);throw new Error("Media type ".concat(a," is not supported for retrieval of series."))}},{key:"retrieveStudy",value:function(t){if(!("studyInstanceUID"in t))throw new Error("Study Instance UID is required");var r="".concat(this.wadoURL,"/studies/").concat(t.studyInstanceUID),n=t.mediaTypes;if(!n)return this._httpGetMultipartApplicationDicom(r);var a=e._getCommonMediaType(n);if(a===ke)return this._httpGetMultipartApplicationDicom(r,n);if(a===Te)return this._httpGetMultipartApplicationOctetStream(r,n);if(a.startsWith("image"))return this._httpGetMultipartImage(r,n);if(a.startsWith("video"))return this._httpGetMultipartVideo(r,n);throw new Error("Media type ".concat(a," is not supported for retrieval of study."))}},{key:"retrieveBulkData",value:function(t){if(!("BulkDataURI"in t))throw new Error("BulkDataURI is required.");var r=t.BulkDataURI,n=t.mediaTypes,a=t.byteRange;if(!n)return this._httpGetMultipartApplicationOctetStream(r,n,a);var i=e._getCommonMediaType(n);if(i===Te)return this._httpGetMultipartApplicationOctetStream(r,n,a);if(i.startsWith("image"))return this._httpGetMultipartImage(r,n,a);throw new Error("Media type ".concat(i," is not supported for retrieval of bulk data."))}},{key:"storeInstances",value:function(e){if(!("datasets"in e))throw new Error("datasets are required for storing");var t="".concat(this.stowURL,"/studies");"studyInstanceUID"in e&&(t+="/".concat(e.studyInstanceUID));var r=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Pe(),r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/dicom",n="Content-Type: ".concat(r),a="\r\n--".concat(t,"\r\n").concat(n,"\r\n\r\n"),i="\r\n--".concat(t,"--"),o=Ie(a),s=Ie(i),u=o.length,c=s.length,l=0,f=e.map((function(e){var t=new Uint8Array(e),r=t.length;return l+=u+r+c,t})),d=new Uint8Array(l);d.set(o,0);var p=0;return f.forEach((function(e){d.set(o,p),d.set(e,p+u),p+=u+e.length})),d.set(s,p),{data:d.buffer,boundary:t}}(e.datasets),n=r.data,a=r.boundary,i={"Content-Type":"multipart/related; type=application/dicom; boundary=".concat(a)};return this._httpPost(t,i,n,e.progressCallback)}}])&&be(t.prototype,r),n&&be(t,n),e}()};function Me(e){if(!e.length)return{value:!1};var t=e[0].getData().metadata,r=t.Modality,n=t.NumberOfFrames>1;return Ce.includes(r)&&(n||1!==e.length)?n?(e[0],{value:!1}):function(e){for(var t=e[0].getData().metadata,r=t.Rows,n=t.Columns,a=t.SamplesPerPixel,i=t.ImageOrientationPatient,o=t.ImagePositionPatient,s=1;s<e.length;s++){var u=e[s].getData().metadata,c=u.Rows,l=u.Columns,f=u.SamplesPerPixel,d=u.ImageOrientationPatient;if(c!==r||l!==n||f!==a||!Ue(d,i))return{value:!1}}if(e.length>2){var p=e[e.length-1].getData().metadata.ImagePositionPatient;if(!o||!p)return{value:!1}}return{value:!0,missingFrames:0}}(e):{value:!1}}function Ue(e,t){if(void 0!==e&&void 0!==!t)return Math.abs(e[0]-t[0])<Ne&&Math.abs(e[1]-t[1])<Ne&&Math.abs(e[2]-t[2])<Ne}var Ne=.01;var Ce=["MR","CT","PT","NM"],Fe=Object.freeze(["SEG","KO","PR"]);function Le(e){return Fe.includes(e)}var Ve={getHTTPErrorHandler:function(){return null}};function qe(e){for(var t,r,n,a,i,o,s,u,c,l={mostUnique:0,max:0,min:0},f=[],d=0;d<e.length;d++){var p=e[d].getData().metadata,h=p.ImagePositionPatient,m=p.ImageOrientationPatient;if(!h||!m)return;var v=(n=m,a=void 0,i=void 0,o=void 0,s=void 0,u=void 0,c=void 0,void 0,a=(r=h)[0],i=r[1],o=r[2],s=n[1]*n[5]-n[2]*n[4],u=n[2]*n[3]-n[0]*n[5],c=n[0]*n[4]-n[1]*n[3],s*a+u*i+c*o);d>0?(d!==e.length-1&&(f[d]=v),f[d-1]=(t=Math.abs(v-f[d-1]),+(Math.round(t+"e+2")+"e-2"))):f.push(v)}var y=function(e){var t=$()(new Set(e)),r=new Array(t.length).fill(0),n=0,a=1/0;e.forEach((function(e){e>n&&(n=e),e<a&&(a=e),t.forEach((function(t,n){t===e&&r[n]++}))}));var i=r.indexOf(Math.max.apply(Math,$()(r)));return{mostUnique:t[i],max:n,min:a}}(f),g=y.mostUnique,b=y.max,I=y.min;return l.mostUnique=g,l.max=b,l.min=I,l}function $e(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ze=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if($e()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t){var a;return f()(this,n),a=r.call(this,e,t),Object.defineProperties(J()(a),{_studyInstanceUID:{configurable:!0,enumerable:!1,writable:!0,value:null},_series:{configurable:!1,enumerable:!1,writable:!1,value:[]},_displaySets:{configurable:!1,enumerable:!1,writable:!1,value:[]},_derivedDisplaySets:{configurable:!1,enumerable:!1,writable:!1,value:[]},_firstSeries:{configurable:!1,enumerable:!1,writable:!0,value:null},_firstInstance:{configurable:!1,enumerable:!1,writable:!0,value:null}}),a._definePublicProperties(),a}return p()(n,[{key:"_definePublicProperties",value:function(){Object.defineProperty(this,"studyInstanceUID",{configurable:!1,enumerable:!1,get:function(){return this.getStudyInstanceUID()}})}},{key:"getDisplaySets",value:function(){return this._displaySets.slice()}},{key:"_createDisplaySetsForSeries",value:function(e,t){var r=this,n=[];if(!(t.getInstanceCount()>0)){var a=new de([]),i=t.getData();return a.setAttributes({displaySetInstanceUID:a.uid,SeriesInstanceUID:i.SeriesInstanceUID,SeriesDescription:i.SeriesDescription,SeriesNumber:i.SeriesNumber,Modality:i.Modality,combinedId:t.combinedId}),n.push(a),n}var o=function(e){var t=new Set;return e.forEachInstance((function(e){var r=e.getTagValue("SOPClassUID");t.add(r)})),Array.from(t)}(t);if(e&&e.length>0){var s=function(e,t,r,n){if(1!==n.length)return void console.warn("getDisplaySetFromSopClassPlugin: More than one SOPClassUID in the same series is not yet supported.");var a=n[0],i=e.map((function(e){return e.module})).filter((function(e){return e.sopClassUIDs.includes(a)}));if(!i||!i.length)return;var o=i[0],s=ae.getAuthorizationHeader(),u=Ve.getHTTPErrorHandler(),c=new Ge({url:r.getData().wadoRoot,headers:s,errorInterceptor:u}),l=function(e){if(e&&!e.Modality){var r=t.getFirstInstance();e.Modality=r.getTagValue("Modality")}return e},f=o.getDisplaySetFromSeries(t,r,c,s);if(f.length)for(var d=0;d<f.length;d++)f[d]=l(f[d]);else f&&(f=[l(f)]);return f}(e,t,r,o);if(s){for(var u=0;u<s.length;u++)s[u].sopClassModule=!0,s[u].isDerived?this._addDerivedDisplaySet(s[u]):n.push(s[u]),s[u].combinedId="".concat(t.combinedId,"_").concat(u);return n}}var c=[];if(t.forEachInstance((function(e){var a;Be(e)?((a=He(t,[e])).setAttributes({sopClassUIDs:o,isClip:!0,SeriesInstanceUID:t.getSeriesInstanceUID(),StudyInstanceUID:r.getStudyInstanceUID(),numImageFrames:e.getTagValue("NumberOfFrames"),InstanceNumber:e.getTagValue("InstanceNumber"),AcquisitionDatetime:e.getTagValue("AcquisitionDateTime")}),n.push(a)):We(e.Modality)?((a=He(t,[e])).setAttributes({sopClassUIDs:o,StudyInstanceUID:r.getStudyInstanceUID(),SeriesInstanceUID:t.getSeriesInstanceUID(),InstanceNumber:e.getTagValue("InstanceNumber"),AcquisitionDatetime:e.getTagValue("AcquisitionDateTime")}),n.push(a)):c.push(e)})),c.length){var l=He(t,c);l.setAttribute("StudyInstanceUID",r.getStudyInstanceUID()),l.setAttributes({sopClassUIDs:o}),n.push(l)}return n}},{key:"_addDerivedDisplaySet",value:function(e){this._derivedDisplaySets.push(e)}},{key:"_addDerivedDisplaySets",value:function(e){var t=this;e.map((function(e){return t._derivedDisplaySets.push(e)}))}},{key:"getDerivedDatasets",value:function(e){var t=e.Modality,r=e.referencedSeriesInstanceUID,n=e.referencedFrameOfReferenceUID,a=this._derivedDisplaySets;return t&&(a=a.filter((function(e){return e.Modality===t}))),r&&(a=a.filter((function(e){return!!e.metadata.ReferencedSeriesSequence&&(Array.isArray(e.metadata.ReferencedSeriesSequence)?e.metadata.ReferencedSeriesSequence:[e.metadata.ReferencedSeriesSequence]).some((function(e){return e.SeriesInstanceUID===r}))}))),n&&(a=a.filter((function(e){return e.ReferencedFrameOfReferenceUID===n}))),a}},{key:"createDisplaySets",value:function(e){var t=this,r=[];return this.getSeriesCount()?(this.forEachSeries((function(n){var a=t._createDisplaySetsForSeries(e,n);r.push.apply(r,$()(a))})),Ke(r)):r}},{key:"sortDisplaySets",value:function(){Ke(this._displaySets)}},{key:"createAndAddDisplaySetsForSeries",value:function(e,t){var r=this;if(!this.containsSeries(t))return!1;for(var n=this._createDisplaySetsForSeries(e,t),a=this._displaySets.length-1;a>=0;a--){this._displaySets[a].combinedId===t.combinedId&&this._displaySets.splice(a,1)}return n.forEach((function(e){r.addDisplaySet(e)})),this.sortDisplaySets(),!0}},{key:"setDisplaySets",value:function(e){var t=this;Array.isArray(e)&&e.length>0&&(this._displaySets.splice(0),e.forEach((function(e){return t.addDisplaySet(e)})),this.sortDisplaySets())}},{key:"addDisplaySet",value:function(e){return!!(e instanceof de||e.sopClassModule)&&(this._displaySets.push(e),!0)}},{key:"forEachDisplaySet",value:function(e){pe.isValidCallback(e)&&this._displaySets.forEach((function(t,r){e.call(null,t,r)}))}},{key:"findDisplaySet",value:function(e){if(pe.isValidCallback(e))return this._displaySets.find((function(t,r){return e.call(null,t,r)}))}},{key:"getDisplaySetCount",value:function(){return this._displaySets.length}},{key:"getStudyInstanceUID",value:function(){return this._studyInstanceUID}},{key:"getSeries",value:function(){return this._series.slice()}},{key:"addSeries",value:function(e){var t=!1;return e instanceof ye&&(void 0===this.getSeriesByUID(e.getSeriesInstanceUID())||e.isSubSeries())&&(this._series.push(e),t=!0),t}},{key:"updateSeries",value:function(e,t){var r=this.getSeriesIndexByCustomId(t.getCustomSeriesInstanceUID());if(!(t instanceof ye))throw new Error("Series must be an instance of SeriesMetadata");return this._series[r]=t,!0}},{key:"getSeriesByIndex",value:function(e){var t;return pe.isValidIndex(e)&&(t=this._series[e]),t}},{key:"getSeriesByUID",value:function(e){var t;return pe.isValidUID(e)&&(t=this._series.find((function(t){return t.getSeriesInstanceUID()===e}))),t}},{key:"containsSeries",value:function(e){return e instanceof ye&&this._series.indexOf(e)>=0}},{key:"getSeriesCount",value:function(){return this._series.length}},{key:"getInstanceCount",value:function(){return this._series.reduce((function(e,t){return e+t.getInstanceCount()}),0)}},{key:"forEachSeries",value:function(e){pe.isValidCallback(e)&&this._series.forEach((function(t,r){e.call(null,t,r)}))}},{key:"indexOfSeries",value:function(e){return this._series.indexOf(e)}},{key:"sortSeriesByDisplaySets",value:function(){var e=this,t={};this.forEachDisplaySet((function(e,r){if(!(e instanceof de))throw new ce("StudyMetadata::sortSeriesByDisplaySets display set at index ".concat(r," is not an instance of ImageSet"));void 0===t[e.SeriesInstanceUID]&&(t[e.SeriesInstanceUID]=r)})),this.getSeries().forEach((function(r,n){if(!(r instanceof ye))throw new ce("StudyMetadata::sortSeriesByDisplaySets series at index ".concat(n," is not an instance of SeriesMetadata"));var a=t[r.getSeriesInstanceUID()];e._series[a]=r}))}},{key:"equals",value:function(e){return e===this||e instanceof n&&e.getStudyInstanceUID()===this.getStudyInstanceUID()}},{key:"getFirstSeries",value:function(){var e=this._firstSeries;if(!(e instanceof ye)){e=null;var t=this.getSeriesByIndex(0);t instanceof ye&&(this._firstSeries=t,e=t)}return e}},{key:"getFirstImageId",value:function(e){try{return this.findDisplaySet((function(t){return t.displaySetInstanceUID===e})).images[0].getImageId()}catch(e){return console.error("Failed to retrieve image metadata"),null}}},{key:"getFirstInstance",value:function(){var e=this._firstInstance;if(!(e instanceof me)){e=null;var t=this.getFirstSeries();if(t instanceof ye){var r=t.getFirstInstance();r instanceof me&&(this._firstInstance=r,e=r)}}return e}},{key:"findSeriesAndInstanceByInstance",value:function(e){var t;if(pe.isValidCallback(e)){var r,n=this._series.find((function(t){return(r=t.findInstance(e))instanceof me}));n instanceof ye&&(t={series:n,instance:r})}return t||{}}},{key:"findSeriesByInstance",value:function(e){return this.findSeriesAndInstanceByInstance(e).series}},{key:"findInstance",value:function(e){return this.findSeriesAndInstanceByInstance(e).instance}},{key:"getSeriesIndexByCustomId",value:function(e){var t=this._series.findIndex((function(t){return t.combinedId===e}));return t<0?null:t}}]),n}(pe),Ge=Ae.DICOMwebClient,Be=function(e){return e.getTagValue("NumberOfFrames")>1},He=function(e,t){var r=t[0],n=new de(t),a=e.getData();n.setAttributes({displaySetInstanceUID:e.getCustomSeriesInstanceUID(),SeriesDate:a.SeriesDate,SeriesTime:a.SeriesTime,SeriesInstanceUID:e.getSeriesInstanceUID(),SeriesNumber:e.getSeriesNumber(),SeriesDescription:e.getSeriesDescription(),numImageFrames:t.length,frameRate:r.getTagValue("FrameTime"),Modality:r.getTagValue("Modality"),isMultiFrame:Be(r)});n.sortBy((function(e,t){return(parseInt(e.getTagValue("InstanceNumber",0))||0)-(parseInt(t.getTagValue("InstanceNumber",0))||0)})),n.setAttribute("InstanceNumber",n.getImage(0).getTagValue("InstanceNumber"));var i=Me(t);n.isReconstructable=i.value,n.isReconstructable&&n.sortByImagePositionPatient(),i.missingFrames&&(n.missingFrames=i.missingFrames);var o=qe(t);return n.calculatedSpacings=o,n},We=function(e){return"CR"===e||"MG"===e||"DX"===e};function Qe(e,t){var r=Le(e.Modality),n=Le(t.Modality);return!r&&n?-1:r&&!n?1:function(e,t){return e.SeriesNumber>t.SeriesNumber||!e.SeriesNumber&&t.SeriesNumber?1:-1}(e,t)}function Ke(e){return e.sort(Qe)}var Je=r(2),Ye=r.n(Je),Xe=r(5),Ze=r.n(Xe),et=r(7),tt=r.n(et);function rt(){return Promise.resolve().then(r.t.bind(null,275,7))}function nt(e,t){var r=function(e,t){var r=e.wadorsuri;if(r)return null===t?r=r.replace(/frames\/(\d+)/,""):(t=t?parseInt(t)+1:1,r=r.replace(/frames\/(\d+)/,"frames/".concat(t))),r}(e,t);if(r)return"wadors:".concat(r)}function at(e,t,r){var n=new RegExp("([?&])"+t+"=.*?(&|$)","i"),a=-1!==e.indexOf("?")?"&":"?";return e.match(n)?e.replace(n,"$1"+t+"="+r+"$2"):e+a+t+"="+r}function it(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(e){if("function"==typeof e.getImageId)return e.getImageId();if(e.url)return void 0!==t&&(e.url=at(e.url,"frame",t)),e.url;var n=r?"thumbnailRendering":"imageRendering";if(!e[n]||"wadouri"===e[n]||!e.wadorsuri){var a="dicomweb:"+e.wadouri;return void 0!==t&&(a+="&frame="+t),a}return nt(e,t)}}var ot=r(12),st=r.n(ot),ut=r(41),ct=r.n(ut),lt=r(43),ft=r.n(lt),dt=function(e){return null==e?e:isNaN(e)?void 0:parseFloat(e)};function pt(e){for(var t=e.length,r=new Uint8Array(t),n=0;n<t;n++)r[n]=e.charCodeAt(n);return r.buffer}function ht(e,t){return mt.apply(this,arguments)}function mt(){return(mt=Ze()(Ye.a.mark((function e(t,r){var n,a,i,o,s,u,l;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.PaletteColorLookupTableUID,a=t.RedPaletteColorLookupTableDescriptor,i=t.GreenPaletteColorLookupTableDescriptor,o=t.BluePaletteColorLookupTableDescriptor,s=t.RedPaletteColorLookupTableData,u=t.GreenPaletteColorLookupTableData,l=t.BluePaletteColorLookupTableData,e.abrupt("return",new Promise((function(e){var f;if(vt.isValidUID(n)&&(f=vt.get(n)))return e(f);var d=[yt(r,s,a),yt(r,u,i),yt(r,l,o)];Promise.all(d).then((function(r){var a=c()(r,3),i=a[0],o=a[1],s=a[2];vt.add({RedPaletteColorLookupTableData:i,GreenPaletteColorLookupTableData:o,BluePaletteColorLookupTableData:s,PaletteColorLookupTableUID:n}),t.RedPaletteColorLookupTableData=i,t.GreenPaletteColorLookupTableData=o,t.BluePaletteColorLookupTableData=s,e()}))})));case 2:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var vt={count:0,maxAge:864e5,entries:{},isValidUID:function(e){return"string"==typeof e&&e.length>0},get:function(e){var t=null;return Object.prototype.hasOwnProperty.call(this.entries,e)&&(t=this.entries[e],Date.now()-t.time>this.maxAge&&(delete this.entries[e],this.count--,t=null)),t},add:function(e){if(this.isValidUID(e.uid)){var t=e.uid;!0!==Object.prototype.hasOwnProperty.call(this.entries,t)&&this.count++,e.time=Date.now(),this.entries[t]=e}}};function yt(e,t,r){var n=r[0],a=r[2],i=function(e,t){return e[t]+256*e[t+1]},o=function(e){var t=new Uint8Array(e),r=[];if(16===a)for(var o=0;o<n;o++)r[o]=i(t,2*o);else for(var s=0;s<n;s++)r[s]=t[s];return r};if(t.BulkDataURI){var s=t.BulkDataURI;0!==e.wadoRoot.indexOf("https")||s.includes("https")||(s=s.replace("http","https"));var u={url:e.wadoRoot,headers:ae.getAuthorizationHeader(e)},c={BulkDataURI:s};return new Ae.DICOMwebClient(u).retrieveBulkData(c).then((function(e){return e[0]})).then(o)}if(t.InlineBinary){var l=pt(atob(t.InlineBinary));return new Promise((function(e){e(o(l))}))}return Promise.resolve(o(t))}function gt(e){for(var t=new Uint8Array(e),r=new Uint8Array(8*t.length),n=0;n<r.length;n++){var a=n%8,i=Math.floor(n/8);r[n]=1*((t[i]&1<<a)>>a)}return r}function bt(e,t,r){return It.apply(this,arguments)}function It(){return(It=Ze()(Ye.a.mark((function e(t,r,n){var a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=[],i=[],e.abrupt("return",new Promise((function(e){for(var o=0;o<=30;o+=2){var s="60".concat(o.toString(16));3===s.length&&(s="600".concat(o.toString(16)));var u="".concat(s,"3000");if(t[u]&&t[u].InlineBinary){var c=pt(atob(t[u].InlineBinary));t[u]=gt(c)}else t[u]&&t[u].BulkDataURI?(a.push(wt(t[u],r,n)),i.push(u)):t[u]&&t[u]instanceof ArrayBuffer&&(t[u]=gt(t[u]))}a.length?Promise.all(a).then((function(r){for(var n=0;n<r.length;n++)t[i[n]]=r[n];e()})):e()})).catch((function(e){console.error(e)})));case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function wt(e,t,r){return St.apply(this,arguments)}function St(){return(St=Ze()(Ye.a.mark((function e(t,r,n){var a,i,o,s,u;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a=t.BulkDataURI,i=n?"/studies/".concat(n).concat(a.slice(a.indexOf("/series"),a.length)):a.slice(a.indexOf("/studies"),a.length),0!==r.wadoRoot.indexOf("https")||i.includes("https")||(i=i.replace("http","https")),o={url:r.wadoRoot,headers:ae.getAuthorizationHeader(r)},s=new Ae.DICOMwebClient(o),u={BulkDataURI:"".concat(r.wadoRoot).concat(i)},e.abrupt("return",s.retrieveBulkData(u).then((function(e){return e[0]})).then(gt).catch((function(e){return console.error(e)})));case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Pt=new(function(){function e(){f()(this,e),Object.defineProperty(this,"studies",{configurable:!1,enumerable:!1,writable:!1,value:new Map}),Object.defineProperty(this,"imageIdToUIDs",{configurable:!1,enumerable:!1,writable:!1,value:new Map})}var t,r;return p()(e,[{key:"addInstance",value:(r=Ze()(Ye.a.mark((function e(t){var r,n,a,i,o,s,u,c,l,f,d,p=arguments;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=p.length>1&&void 0!==p[1]?p[1]:{},t instanceof ArrayBuffer?(a=ot.data.DicomMessage.readFile(t),n=a.dict):n=t,i=void 0===n.SeriesInstanceUID?ot.data.DicomMetaDictionary.naturalizeDataset(n):n,r.StudyInstanceUID&&(i.StudyInstanceUID=r.StudyInstanceUID),s=(o=i).StudyInstanceUID,u=o.SeriesInstanceUID,c=o.SOPInstanceUID,l=this._getAndCacheStudy(s),f=this._getAndCacheSeriesFromStudy(l,u),d=this._getAndCacheInstanceFromStudy(f,c),Object.assign(d,i),!r.server){e.next=18;break}return e.prev=10,e.next=13,this._checkBulkDataAndInlineBinaries(d,r.server,r.StudyInstanceUID);case 13:e.next=18;break;case 15:return e.prev=15,e.t0=e.catch(10),e.abrupt("return",d);case 18:return e.abrupt("return",d);case 19:case"end":return e.stop()}}),e,this,[[10,15]])}))),function(e){return r.apply(this,arguments)})},{key:"addImageIdToUIDs",value:function(e,t){this.imageIdToUIDs.set(e,t)}},{key:"_getAndCacheStudy",value:function(e){var t=this.studies,r=t.get(e);return r||(r={series:new Map},t.set(e,r)),r}},{key:"_getAndCacheSeriesFromStudy",value:function(e,t){var r=e.series.get(t);return r||(r={instances:new Map},e.series.set(t,r)),r}},{key:"_getAndCacheInstanceFromStudy",value:function(e,t){var r=e.instances.get(t);return r||(r={},e.instances.set(t,r)),r}},{key:"_checkBulkDataAndInlineBinaries",value:(t=Ze()(Ye.a.mark((function e(t,r,n){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,bt(t,r,n);case 2:if("PALETTE COLOR"!==t.PhotometricInterpretation){e.next=5;break}return e.next=5,ht(t,r,n);case 5:case"end":return e.stop()}}),e)}))),function(e,r,n){return t.apply(this,arguments)})},{key:"_getInstance",value:function(e){var t=this._getUIDsFromImageID(e);if(t){var r=t.StudyInstanceUID,n=t.SeriesInstanceUID,a=t.SOPInstanceUID;return this._getInstanceData(r,n,a)}}},{key:"get",value:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{fallback:!1},n=this._getInstance(t);return e===Et?n:this.getTagFromInstance(e,n,r)}},{key:"getTag",value:function(e,t,r){return this.get(e,t,r)}},{key:"getInstance",value:function(e){return this.get(Et,e)}},{key:"getTagFromInstance",value:function(e,t){if(t)return t[e]?t[e]:this._getCornerstoneWADOImageLoaderTag(e,t)}},{key:"_getCornerstoneWADOImageLoaderTag",value:function(e,t){var r;switch(e){case Dt.GENERAL_SERIES_MODULE:var n,a,i=t.SeriesDate,o=t.SeriesTime;i&&(n=ft.a.parseDA(i)),o&&(a=ft.a.parseTM(o)),r={modality:t.Modality,seriesInstanceUID:t.SeriesInstanceUID,seriesNumber:t.SeriesNumber,studyInstanceUID:t.StudyInstanceUID,seriesDate:n,seriesTime:a,seriesDescription:t.SeriesDescription};break;case Dt.PATIENT_STUDY_MODULE:r={patientAge:t.PatientAge,patientSize:t.PatientSize,patientWeight:t.PatientWeight};break;case Dt.IMAGE_PLANE_MODULE:var s,u,c,l,f=t.ImageOrientationPatient,d=function(e){var t=e.PixelSpacing,r=e.ImagerPixelSpacing,n=e.SOPClassUID,a=e.PixelSpacingCalibrationType,i=e.PixelSpacingCalibrationDescription,o=e.EstimatedRadiographicMagnificationFactor,s=e.SequenceOfUltrasoundRegions,u=["1.2.840.10008.5.1.4.1.1.1","1.2.840.10008.5.1.4.1.1.1.1","1.2.840.10008.5.1.4.1.1.1.1.1","1.2.840.10008.5.1.4.1.1.1.2","1.2.840.10008.5.1.4.1.1.1.2.1","1.2.840.10008.5.1.4.1.1.1.3","1.2.840.10008.5.1.4.1.1.1.3.1","1.2.840.10008.5.1.4.1.1.12.1","1.2.840.10008.5.1.4.1.1.12.1.1","1.2.840.10008.5.1.4.1.1.12.2","1.2.840.10008.5.1.4.1.1.12.2.1","1.2.840.10008.5.1.4.1.1.12.3"].includes(n),c="NOT_APPLICABLE";if(u&&!r)return{PixelSpacing:t,type:"UNKNOWN",isProjection:u};if(t&&r&&t===r)return{PixelSpacing:t,type:"DETECTOR",isProjection:u};if(t&&r&&t!==r)return{PixelSpacing:t,type:"CALIBRATED",isProjection:u,PixelSpacingCalibrationType:a,PixelSpacingCalibrationDescription:i};if(!t&&r){var l=r;return o?l=r.map((function(e){return e/o})):h.info("EstimatedRadiographicMagnificationFactor was not present. Unable to correct ImagerPixelSpacing."),{PixelSpacing:l,isProjection:u}}if(s&&"object"===L()(s))return{PixelSpacing:[10*s.PhysicalDeltaX,10*s.PhysicalDeltaY]};if(s&&Array.isArray(s)&&s.length>1)h.warn("Sequence of Ultrasound Regions > one entry. This is not yet implemented, all measurements will be shown in pixels.");else if(!1===u&&!r)return{PixelSpacing:t,type:c,isProjection:u};h.info("Unknown combination of PixelSpacing and ImagerPixelSpacing identified. Unable to determine spacing.")}(t).PixelSpacing;d&&(s=dt(d[0]),u=dt(d[1])),f&&(c=f.slice(0,3),l=f.slice(3,6)),r={frameOfReferenceUID:t.FrameOfReferenceUID,rows:t.Rows,columns:t.Columns,imageOrientationPatient:f,rowCosines:c,columnCosines:l,imagePositionPatient:t.ImagePositionPatient,sliceThickness:t.SliceThickness,sliceLocation:t.SliceLocation,pixelSpacing:d,rowPixelSpacing:s,columnPixelSpacing:u};break;case Dt.IMAGE_PIXEL_MODULE:r={samplesPerPixel:t.SamplesPerPixel,photometricInterpretation:t.PhotometricInterpretation,rows:t.Rows,columns:t.Columns,bitsAllocated:t.BitsAllocated,bitsStored:t.BitsStored,highBit:t.HighBit,pixelRepresentation:t.PixelRepresentation,planarConfiguration:t.PlanarConfiguration,pixelAspectRatio:t.PixelAspectRatio,smallestPixelValue:t.SmallestPixelValue,largestPixelValue:t.LargestPixelValue,redPaletteColorLookupTableDescriptor:t.RedPaletteColorLookupTableDescriptor,greenPaletteColorLookupTableDescriptor:t.GreenPaletteColorLookupTableDescriptor,bluePaletteColorLookupTableDescriptor:t.BluePaletteColorLookupTableDescriptor,redPaletteColorLookupTableData:t.RedPaletteColorLookupTableData,greenPaletteColorLookupTableData:t.GreenPaletteColorLookupTableData,bluePaletteColorLookupTableData:t.BluePaletteColorLookupTableData};break;case Dt.VOI_LUT_MODULE:var p=t.WindowCenter,m=t.WindowWidth;r={windowCenter:Array.isArray(p)?p.map((function(e){return dt(e)})):[dt(p)],windowWidth:Array.isArray(m)?m.map((function(e){return dt(e)})):[dt(m)]};break;case Dt.MODALITY_LUT_MODULE:r={rescaleIntercept:dt(t.RescaleIntercept),rescaleSlope:dt(t.RescaleSlope),rescaleType:t.RescaleType};break;case Dt.SOP_COMMON_MODULE:r={sopClassUID:t.SOPClassUID,sopInstanceUID:t.SOPInstanceUID};break;case Dt.PET_ISOTOPE_MODULE:var v=t.RadiopharmaceuticalInformationSequence;if(v){var y=Array.isArray(v)?v[0]:v,g=y.RadiopharmaceuticalStartTime,b=y.RadionuclideTotalDose,I=y.RadionuclideHalfLife;r={radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:ft.a.parseTM(g),radionuclideTotalDose:b,radionuclideHalfLife:I}}}break;case Dt.OVERLAY_PLANE_MODULE:for(var w=[],S=0;S<=30;S+=2){var P="60".concat(S.toString(16));3===P.length&&(P="600".concat(S.toString(16)));var D=t["".concat(P,"3000")];if(D){var E="".concat(P,"0010"),O="".concat(P,"0011"),x="".concat(P,"0040"),_="".concat(P,"0050"),k="".concat(P,"0022"),j="".concat(P,"1500"),T="".concat(P,"1301"),R="".concat(P,"1302"),A="".concat(P,"1303"),M=t[_],U={rows:t[E],columns:t[O],type:t[x],x:M[0],y:M[1],pixelData:D,description:t[k],label:t[j],roiArea:t[T],roiMean:t[R],roiStandardDeviation:t[A]};w.push(U)}}r={overlays:w};break;case Dt.PATIENT_MODULE:var N,C=t.PatientName;C&&(N=C.Alphabetic),r={patientName:N,patientId:t.PatientID};break;case Dt.GENERAL_IMAGE_MODULE:r={instanceNumber:t.InstanceNumber,lossyImageCompression:t.LossyImageCompression,lossyImageCompressionRatio:t.LossyImageCompressionRatio,lossyImageCompressionMethod:t.LossyImageCompressionMethod};break;case Dt.GENERAL_STUDY_MODULE:r={studyDescription:t.StudyDescription,studyDate:t.StudyDate,studyTime:t.StudyTime,accessionNumber:t.AccessionNumber};break;case Dt.CINE_MODULE:r={frameTime:t.FrameTime}}return r}},{key:"_getInstanceData",value:function(e,t,r){var n=this.studies.get(e);if(n){var a=n.series.get(t);if(a)return a.instances.get(r)}}},{key:"_getUIDsFromImageID",value:function(e){if(e.includes("wadors:")){var t=e.split("studies/")[1].split("/");return{StudyInstanceUID:t[0],SeriesInstanceUID:t[2],SOPInstanceUID:t[4]}}if(e.includes("wado?requestType=WADO")){var r=ct.a.parse(e);return{StudyInstanceUID:r.studyUID,SeriesInstanceUID:r.seriesUID,SOPInstanceUID:r.objectUID}}return this.imageIdToUIDs.get(e)}}]),e}()),Dt={GENERAL_SERIES_MODULE:"generalSeriesModule",PATIENT_STUDY_MODULE:"patientStudyModule",IMAGE_PLANE_MODULE:"imagePlaneModule",IMAGE_PIXEL_MODULE:"imagePixelModule",VOI_LUT_MODULE:"voiLutModule",MODALITY_LUT_MODULE:"modalityLutModule",SOP_COMMON_MODULE:"sopCommonModule",PET_ISOTOPE_MODULE:"petIsotopeModule",OVERLAY_PLANE_MODULE:"overlayPlaneModule",PATIENT_MODULE:"patientModule",GENERAL_IMAGE_MODULE:"generalImageModule",GENERAL_STUDY_MODULE:"generalStudyModule",CINE_MODULE:"cineModule"},Et="instance",Ot={},xt={},_t=[];xt={createAndAddStack:function(e,t,r,n){var a=r.images;if(a){var i,o=a.length,s=[];r.images.forEach((function(e,n){var a=e.getData(),u={instance:a,series:r,study:t,numImages:o,imageIndex:n+1},c=e.getData().metadata,l=c.NumberOfFrames;if(l>1)for(var f=0;f<l;f++){u.frameNumber=f,i=it(a,f),s.push(i);var d=e.getData().metadata,p=d.StudyInstanceUID,h=d.SeriesInstanceUID,m=d.SOPInstanceUID;Pt.addImageIdToUIDs(i,{StudyInstanceUID:p,SeriesInstanceUID:h,SOPInstanceUID:m})}else{u.frameNumber=1,i=it(a),s.push(i);var v=c.StudyInstanceUID,y=c.SeriesInstanceUID,g=c.SOPInstanceUID;Pt.addImageIdToUIDs(i,{StudyInstanceUID:v,SeriesInstanceUID:y,SOPInstanceUID:g})}}));var u={StudyInstanceUID:t.StudyInstanceUID,displaySetInstanceUID:r.displaySetInstanceUID,imageIds:s,frameRate:r.frameRate,isClip:r.isClip};return e[r.displaySetInstanceUID]=u,u}}};var kt={clearStacks:function(){Ot={}},makeAndAddStack:function(e,t){return xt.createAndAddStack(Ot,e,t,_t)},findStack:function(e){return Ot[e]},findOrCreateStack:function(e,t){var r=this.findStack(t.displaySetInstanceUID);return r&&r.imageIds||(r=this.makeAndAddStack(e,t)),r},getAllStacks:function(){return Ot},addStackUpdatedCallback:function(e){if("function"!=typeof e)throw new ce("callback must be provided as a function");_t.push(e)},getConfiguration:function(){return xt},setConfiguration:function(e){xt=e}};function jt(e){return function(){var t,r=re()(e);if(Tt()){var n=re()(this).constructor;t=Reflect.construct(r,arguments,n)}else t=r.apply(this,arguments);return ee()(this,t)}}function Tt(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var Rt=function(){function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};f()(this,e),this.id=e.getNewId(),this.stack=t,this.startListening(),this.statsItemsLimit=r.statsItemsLimit||2,this.stats={items:[],total:0,elapsedTime:0,speed:0},this._setProgressData=r._setProgressData,this._clearProgressById=r._clearProgressById,this._addStatsData(0),this._updateProgress()}return p()(e,[{key:"_addStatsData",value:function(e){var t=new Date,r=this.stats,n=r.items,a={value:e,date:t};for(n.push(a),r.total+=a.value;n.length>this.statsItemsLimit;){var i=n.shift();r.total-=i.value}if(n.length>1){var o=n[0];r.elapsedTime=(a.date.getTime()-o.date.getTime())/1e3,r.speed=(r.total-o.value)/r.elapsedTime}}},{key:"_getProgressId",value:function(){return"StackProgress:"+this.stack.displaySetInstanceUID}},{key:"_clearProgress",value:function(){var e=this._getProgressId();this._clearProgressById(e)}},{key:"startListening",value:function(){throw new Error("`startListening` must be implemented by child classes")}},{key:"stopListening",value:function(){throw new Error("`stopListening` must be implemented by child classes")}},{key:"destroy",value:function(){this.stopListening(),this._clearProgress()}}],[{key:"getNewId",value:function(){var e=(new Date).getTime().toString().slice(-8),t=parseInt(1e9*Math.random());return e.toString()+t.toString()}}]),e}(),At=function(e){X()(n,e);var t,r=jt(n);function n(e,t){var a;return f()(this,n),(a=r.call(this,e,t))._imageLoadProgressEventHandler=function(e){var t=e.detail,r=a._convertImageIdToDataSetUrl(t.imageId),n=t.loaded-a._lastLoaded;!a._dataSetUrl!==r&&(a._addStatsData(n),a._updateProgress(t),a._lastLoaded=t.loaded)},a._dataSetUrl=a._getDataSetUrl(e),a._lastLoaded=0,a._checkCachedData(),a}return p()(n,[{key:"_checkCachedData",value:(t=Ze()(Ye.a.mark((function e(){var t,r,n;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,rt();case 2:t=e.sent,(r=t.wadouri.dataSetCacheManager.get(this._dataSetUrl))&&(n=r.byteArray.length,this._updateProgress({percentComplete:100,loaded:n,total:n}));case 5:case"end":return e.stop()}}),e,this)}))),function(){return t.apply(this,arguments)})},{key:"_getImageLoadProgressEventName",value:function(){return"cornerstoneimageloadprogress."+this.id}},{key:"startListening",value:function(){var e=this._getImageLoadProgressEventName();this.imageLoadProgressEventHandler=this._imageLoadProgressEventHandle.bind(this),this.stopListening(),tt.a.events.addEventListener(e,this.imageLoadProgressEventHandle)}},{key:"stopListening",value:function(){var e=this._getImageLoadProgressEventName();tt.a.events.removeEventListener(e,this.imageLoadProgressEventHandle)}},{key:"_updateProgress",value:function(e){var t=this._getProgressId(),r={multiFrame:!1,percentComplete:(e=e||{}).percentComplete,bytesLoaded:e.loaded,bytesTotal:e.total,bytesPerSecond:this.stats.speed};this._setProgressData(t,r)}},{key:"_convertImageIdToDataSetUrl",value:function(e){return e=(e=(e=e.replace(/^(dicomweb:|wadouri:)/i,"")).replace(/frame=\d+&?/i,"")).replace(/&$/,"")}},{key:"_getDataSetUrl",value:function(e){var t=e.imageIds[0];return this._convertImageIdToDataSetUrl(t)}}]),n}(Rt),Mt=function(e){X()(r,e);var t=jt(r);function r(e){var n,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return f()(this,r),a.statsItemsLimit=20,(n=t.call(this,e,a)).imageDataMap=n._convertImageIdsArrayToMap(e.imageIds),n.framesStatus=n._createArray(e.imageIds.length,!1),n.loadedCount=0,n._checkCachedData(),n}return p()(r,[{key:"_convertImageIdsArrayToMap",value:function(e){for(var t=new Map,r=0;r<e.length;r++)t.set(e[r],{index:r,loaded:!1});return t}},{key:"_createArray",value:function(e,t){for(var r=[],n=0;n<e;n++)r[n]=t;return r}},{key:"_checkCachedData",value:function(){}},{key:"_getImageLoadedEventName",value:function(){return"".concat(tt.a.EVENTS.IMAGE_LOADED,".").concat(this.id)}},{key:"_getImageCachePromiseRemoveEventName",value:function(){return"".concat(tt.a.EVENTS.IMAGE_CACHE_PROMISE_REMOVED,".").concat(this.id)}},{key:"_imageLoadedEventHandler",value:function(e){this._updateFrameStatus(e.detail.image.imageId,!0)}},{key:"_imageCachePromiseRemovedEventHandler",value:function(e){this._updateFrameStatus(e.detail.imageId,!1)}},{key:"startListening",value:function(){var e=this._getImageLoadedEventName(),t=this._getImageCachePromiseRemoveEventName();this.imageLoadedEventHandler=this._imageLoadedEventHandler.bind(this),this.imageCachePromiseRemovedEventHandler=this._imageCachePromiseRemovedEventHandler.bind(this),this.stopListening(),tt.a.events.addEventListener(e,this.imageLoadedEventHandler),tt.a.events.addEventListener(t,this.imageCachePromiseRemovedEventHandler)}},{key:"stopListening",value:function(){var e=this._getImageLoadedEventName(),t=this._getImageCachePromiseRemoveEventName();tt.a.events.removeEventListener(e,this.imageLoadedEventHandler),tt.a.events.removeEventListener(t,this.imageCachePromiseRemovedEventHandler)}},{key:"_updateFrameStatus",value:function(e,t){var r=this.imageDataMap.get(e);r&&r.loaded!==t&&(t&&this._addStatsData(1),r.loaded=t,this.framesStatus[r.index]=t,this.loadedCount+=t?1:-1,this._updateProgress())}},{key:"_setProgressData",value:function(e,t){throw new Error("The _setProgressData function must be provided in StudyLoadingListener's options")}},{key:"_clearProgressById",value:function(e){throw new Error("The _clearProgressById function must be provided in StudyLoadingListener's options")}},{key:"_updateProgress",value:function(){var e=this.stack.imageIds.length,t=this.loadedCount,r=e-t,n=Math.round(t/e*100),a=this._getProgressId(),i={multiFrame:!0,totalFramesCount:e,loadedFramesCount:t,loadingFramesCount:r,percentComplete:n,framesPerSecond:this.stats.speed,framesStatus:this.framesStatus};this._setProgressData(a,i)}},{key:"_logProgress",value:function(){for(var e=this.stack.imageIds.length,t=this.stack.displaySetInstanceUID,r="[",n=0;n<e;n++){var a=this.framesStatus[n]?"|":".";r+="".concat(a)}r+="]",console.info("".concat(t,": ").concat(r))}}]),r}(Rt),Ut=function(){function e(t){f()(this,e),this.listeners={},this.options=t}return p()(e,[{key:"addStack",value:function(e,t){if(e){var r=e.displaySetInstanceUID;if(!this.listeners[r]){var n=this._createListener(e,t);n&&(this.listeners[r]=n)}}}},{key:"addStudy",value:function(e){var t=this;e.displaySets.forEach((function(r){var n=kt.findOrCreateStack(e,r);if(!n)return console.warn("Skipping adding displaySet to StudyLoadingListener"),void console.warn(r);t.addStack(n,{isMultiFrame:r.isMultiFrame})}))}},{key:"addStudies",value:function(e){var t=this;e&&e.length&&e.forEach((function(e){return t.addStudy(e)}))}},{key:"clear",value:function(){for(var e=Object.keys(this.listeners),t=e.length,r=0;r<t;r++){var n=e[r];this.listeners[n].destroy()}this.listeners={}}},{key:"_createListener",value:function(e,t){return"wadors"!==this._getSchema(e)&&t.isMultiFrame?new At(e,this.options):new Mt(e,this.options)}},{key:"_getSchema",value:function(e){var t=e.imageIds[0];if(!t)return null;var r=t.indexOf(":");return t.substring(0,r)}}],[{key:"getInstance",value:function(t){return e._instance||(e._instance=new e(t)),e._instance}}]),e}(),Nt=function(){function e(){f()(this,e),this._operationCount=0,this._elementList=[],this._handlers=Object.create(null)}return p()(e,[{key:"_invalidate",value:function(){var e=this._operationCount;this._operationCount=e<2147483647?e+1:0}},{key:"_elements",value:function(e){return!0===e||this._operationCount,this._elementList}},{key:"_elementWithPayload",value:function(e,t){return this._elements(t).find((function(t){return t.payload===e}))}},{key:"_elementWithId",value:function(e,t){return this._elements(t).find((function(t){return t.id===e}))}},{key:"_trigger",value:function(e,t){var r=this._handlers;if(e in r){if(!((r=r[e])instanceof Array))return;for(var n=0,a=r.length;n<a;++n){var i=r[n];Lt(i)&&i.call(null,t)}}}},{key:"onInsert",value:function(e){if(Lt(e)){var t=this._handlers.insert;t instanceof Array||(t=[],this._handlers.insert=t),t.push(e)}}},{key:"updateById",value:function(e,t){var r=!1,n=this._elementWithPayload(t,!0);return n?n.id===e&&(r=!0,this._invalidate()):(n=this._elementWithId(e,!0))&&(n.payload=t,r=!0,this._invalidate()),r}},{key:"update",value:function(e){var t=!1;return this._elementWithPayload(e,!0)&&(t=!0,this._invalidate()),t}},{key:"insert",value:function(e){var t=null;return this._elementWithPayload(e,!0)||(t=k(),this._elements(!0).push({id:t,payload:e}),this._invalidate(),this._trigger("insert",{id:t,data:e})),t}},{key:"removeAll",value:function(){for(var e=this._elements(!0),t=e.length,r=t-1;r>=0;r--){var n=e[r];delete n.id,delete n.payload,e[r]=null}e.splice(0,t),this._invalidate()}},{key:"remove",value:function(e){var t=this.findAllEntriesBy(e),r=t.length,n=[];if(r>0){for(var a=this._elements(!0),i=r-1;i>=0;i--){var o=t[i];a.splice(o[2],1),n.push(o[0])}this._invalidate()}return n}},{key:"getElementId",value:function(e){var t=this._elementWithPayload(e);return t&&t.id}},{key:"findById",value:function(e){var t=this._elementWithId(e);return t&&t.payload}},{key:"indexOfElement",value:function(e){return this._elements().indexOf(this._elementWithPayload(e,!0))}},{key:"indexOfId",value:function(e){return this._elements().indexOf(this._elementWithId(e,!0))}},{key:"getElementByIndex",value:function(e){var t=this._elements()[e>=0?e:-1];return t&&t.payload}},{key:"find",value:function(e){var t,r=this;return Lt(e)&&(t=this._elements().find((function(t,n){return e.call(r,t.payload,t.id,n)}))),t&&t.payload}},{key:"findBy",value:function(e,t){var r;if(Ct(t)){var n=this.all(t);n.length>0&&(r=Ct(e)?n.find((function(t){return qt(e,t)})):n[0])}else Ct(e)&&(r=this._elements().find((function(t){return qt(e,t.payload)})))&&(r=r.payload);return r}},{key:"findAllEntriesBy",value:function(e){var t=[];return Ct(e)&&this._elements().forEach((function(r,n){qt(e,r.payload)&&t.push([r.payload,r.id,n])})),t}},{key:"findAllBy",value:function(e,t){var r=this.findAllEntriesBy(e).map((function(e){return e[0]}));return Ct(t)&&"sort"in t&&$t(r,t.sort),r}},{key:"forEach",value:function(e){var t=this;Lt(e)&&this._elements().forEach((function(r,n){e.call(t,r.payload,r.id,n)}))}},{key:"count",value:function(){return this._elements().length}},{key:"all",value:function(e){var t=this._elements().map((function(e){return e.payload}));return Ct(e)&&"sort"in e&&$t(t,e.sort),t}}]),e}();function Ct(e){return e instanceof Object||"object"===L()(e)&&null!==e}function Ft(e){return"string"==typeof e}function Lt(e){return"function"==typeof e}function Vt(e,t){var r;if(Ct(e)&&Ft(t)){var n=t.split("."),a=n.length;if(a>0){var i=n[0],o=a>1?n.slice(1).join("."):null;r=e[i],null!==o&&(r=Vt(r,o))}}return r}function qt(e,t){var r=!1;for(var n in e)if(Object.prototype.hasOwnProperty.call(e,n)){if(e[n]!==Vt(t,n)){r=!1;break}!0!==r&&(r=!0)}return r}function $t(e,t){if(!(e instanceof Array&&function(e){var t=!0;if(e instanceof Array&&e.length>0)for(var r=e.length-1;r>=0;r--){var n=e[r];if(n instanceof Array){var a=n[0],i=n[1];if(Ft(a)&&("asc"===i||"desc"===i))continue}t=!1;break}return t}(t)))throw new Error("Invalid Arguments");var r=t.length;e.sort((function(e,n){for(var a=0;a<r;){var i=t[a],o=i[0],s="desc"===i[1]?-1:1,u=Vt(e,o),c=Vt(n,o);if(u<c)return-1*s;if(u>c)return 1*s;if(++a>=r)return 0}}))}var zt=new Nt;var Gt={add:function(e){zt.insert(e)},get:function(e){return zt.findBy({studyInstanceUID:e})},all:function(e){return zt.all(e)},remove:function(e){zt.remove({studyInstanceUID:e})},purge:function(){zt.removeAll()}},Bt=function(){function e(){f()(this,e)}return p()(e,[{key:"getByInstanceUID",value:function(e){throw new ce("StudyMetadataSource::getByInstanceUID is not overriden. Please, override it in a specialized class. See OHIFStudyMetadataSource for example")}},{key:"loadStudy",value:function(e){throw new ce("StudyMetadataSource::loadStudy is not overriden. Please, override it in a specialized class. See OHIFStudyMetadataSource for example")}}]),e}(),Ht=function(e){var t=e["00081115"],r=[];return t&&t.Value&&t.Value.forEach((function(e){var t=ae.getString(e["0020000E"]),n=e["0008114A"],a=[];n.Value.forEach((function(e){a.push({referencedSOPClassUID:ae.getString(e["00081150"]),referencedSOPInstanceUID:ae.getString(e["00081155"])})})),r.push({referencedSeriesInstanceUID:t,referencedInstanceSequence:a})})),r};function Wt(e,t,r){return{series:[],seriesMap:Object.create(null),seriesLoader:null,wadoUriRoot:e.wadoUriRoot,wadoRoot:e.wadoRoot,qidoRoot:e.qidoRoot,PatientName:ae.getName(t["00100010"]),PatientID:ae.getString(t["00100020"]),PatientAge:ae.getNumber(t["00101010"]),PatientSize:ae.getNumber(t["00101020"]),PatientWeight:ae.getNumber(t["00101030"]),AccessionNumber:ae.getString(t["00080050"]),StudyTime:ae.getString(t["00080030"]),StudyDate:ae.getString(t["00080020"]),FrameOfReferenceUID:ae.getString(t["00200052"]),ReferencedSeriesSequence:Ht(t),modalities:ae.getString(t["00080061"]),StudyDescription:ae.getString(t["00081030"]),NumberOfStudyRelatedInstances:ae.getString(t["00201208"]),StudyInstanceUID:r||ae.getString(t["0020000D"]),InstitutionName:ae.getString(t["00080080"])}}function Qt(e,t,r,n){var a=[];a.push("requestType=WADO"),a.push("studyUID=".concat(t)),a.push("seriesUID=".concat(r)),a.push("objectUID=".concat(n)),a.push("contentType=application/dicom"),a.push("transferSyntax=*");var i=a.join("&");return"".concat(e.wadoUriRoot,"?").concat(i)}function Kt(e,t,r,n){return"".concat(e.wadoRoot,"/studies/").concat(t,"/series/").concat(r,"/instances/").concat(n)}function Jt(e,t,r,n,a){var i=Kt(e,t,r,n);return a=null!=a||1,"".concat(i,"/frames/").concat(a)}function Yt(e,t,r){return Xt.apply(this,arguments)}function Xt(){return(Xt=Ze()(Ye.a.mark((function e(t,r,n){var a,i,o,s,u,c,l,f,d,p,h,m,v,y,g;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Pt.addInstance(n,{server:t,StudyInstanceUID:r.StudyInstanceUID});case 2:if(a=e.sent,i=a.StudyInstanceUID,o=a.SeriesInstanceUID,s=a.SOPInstanceUID,(u=r.seriesMap[o])||(u={SeriesInstanceUID:o,SeriesDescription:a.SeriesDescription,Modality:a.Modality,SeriesNumber:a.SeriesNumber,SeriesDate:a.SeriesDate,SeriesTime:a.SeriesTime,instances:[]},r.seriesMap[o]=u,r.series.push(u)),c=Qt(t,i,o,s),l=Kt(t,i,o,s),f=Jt(t,i,o,s),d={metadata:a,baseWadoRsUri:l,wadouri:c,wadorsuri:f,wadoRoot:t.wadoRoot,imageRendering:t.imageRendering,thumbnailRendering:t.thumbnailRendering},u.instances.push(d),"wadors"!==d.thumbnailRendering&&"wadors"!==d.imageRendering){e.next=18;break}return p=Object.assign(n),e.next=15,rt();case 15:if(h=e.sent,m=d.metadata.NumberOfFrames)for(v=0;v<m;v++)y=nt(d,v),h.wadors.metaDataManager.add(y,p);else g=nt(d),h.wadors.metaDataManager.add(g,p);case 18:return e.abrupt("return",d);case 19:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Zt(e,t,r){return er.apply(this,arguments)}function er(){return(er=Ze()(Ye.a.mark((function e(t,r,n){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Promise.all(n.map((function(e){return Yt(t,r,e)}))));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var tr=function(){var e=Ze()(Ye.a.mark((function e(t,r,n){var a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(Array.isArray(r)&&r.length>0)){e.next=6;break}return a=r[0],i=Wt(t,a,n),e.next=5,Zt(t,i,r);case 5:return e.abrupt("return",i);case 6:throw new Error("Failed to create study out of provided SOP instance list");case 7:case"end":return e.stop()}}),e)})));return function(t,r,n){return e.apply(this,arguments)}}();function rr(e){if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(e=function(e,t){if(!e)return;if("string"==typeof e)return nr(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return nr(e,t)}(e))){var t=0,r=function(){};return{s:r,n:function(){return t>=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var n,a,i=!0,o=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return i=e.done,e},e:function(e){o=!0,a=e},f:function(){try{i||null==n.return||n.return()}finally{if(o)throw a}}}}function nr(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var ar=function(){function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};f()(this,e),this.server=t,this.studyInstanceUID=r,this.filters=n}var t,r,n,a,i,o;return p()(e,[{key:"execLoad",value:(o=Ze()(Ye.a.mark((function e(){var t,r,n;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.configLoad();case 2:return e.next=4,this.preLoad();case 4:return t=e.sent,e.next=7,this.load(t);case 7:return r=e.sent,e.next=10,this.posLoad(r);case 10:return n=e.sent,e.abrupt("return",n);case 12:case"end":return e.stop()}}),e,this)}))),function(){return o.apply(this,arguments)})},{key:"runLoaders",value:(i=Ze()(Ye.a.mark((function e(t){var r,n,a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:n=rr(t),e.prev=1,n.s();case 3:if((a=n.n()).done){e.next=12;break}return i=a.value,e.next=7,i();case 7:if(!(r=e.sent)||!r.length){e.next=10;break}return e.abrupt("break",12);case 10:e.next=3;break;case 12:e.next=17;break;case 14:e.prev=14,e.t0=e.catch(1),n.e(e.t0);case 17:return e.prev=17,n.f(),e.finish(17);case 20:if(!t.next().done||r){e.next=22;break}throw new Error("RetrieveMetadataLoader failed");case 22:return e.abrupt("return",r);case 23:case"end":return e.stop()}}),e,null,[[1,14,17,20]])}))),function(e){return i.apply(this,arguments)})},{key:"configLoad",value:(a=Ze()(Ye.a.mark((function e(){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return a.apply(this,arguments)})},{key:"preLoad",value:(n=Ze()(Ye.a.mark((function e(){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(){return n.apply(this,arguments)})},{key:"load",value:(r=Ze()(Ye.a.mark((function e(t){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(e){return r.apply(this,arguments)})},{key:"posLoad",value:(t=Ze()(Ye.a.mark((function e(t){return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}]),e}();function ir(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var or=function(e){X()(i,e);var t,r,n,a=(t=i,function(){var e,r=re()(t);if(ir()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function i(){return f()(this,i),a.apply(this,arguments)}return p()(i,[{key:"getOptions",value:function(){var e={studyInstanceUID:this.studyInstanceUID},t=this.filters.seriesInstanceUID;return t&&(e.seriesInstanceUID=t),e}},{key:"getLoaders",value:Ye.a.mark((function e(){var t,r,n,a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[],r=this.studyInstanceUID,n=this.filters,a=(n=void 0===n?{}:n).seriesInstanceUID,i=this.client,a&&t.push(i.retrieveSeriesMetadata.bind(i,{studyInstanceUID:r,seriesInstanceUID:a})),t.push(i.retrieveStudyMetadata.bind(i,{studyInstanceUID:r})),e.delegateYield(t,"t0",7);case 7:case"end":return e.stop()}}),e,this)}))},{key:"configLoad",value:function(){var e=this.server,t=new Ae.DICOMwebClient({url:e.wadoRoot,headers:ae.getAuthorizationHeader(e)});this.client=t}},{key:"load",value:(n=Ze()(Ye.a.mark((function e(t){var r,n;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.getLoaders(),n=this.runLoaders(r),e.abrupt("return",n);case 3:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"posLoad",value:(r=Ze()(Ye.a.mark((function e(t){var r,n;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.server,n=this.studyInstanceUID,e.abrupt("return",tr(r,t,n));case 2:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}]),i}(ar),sr=Symbol("INFO");function ur(e){var t=e[sr];if(!t){var r=ae.getString(e["00080060"],"").toUpperCase();t=Object.freeze({Modality:r,isLowPriority:Le(r),SeriesInstanceUID:ae.getString(e["0020000E"]),SeriesNumber:ae.getNumber(e["00200011"],0)||0}),e[sr]=t}return t}var cr={default:function(e,t){return e.SeriesNumber-t.SeriesNumber},seriesInfoSortingCriteria:function(e,t){var r=ur(e),n=ur(t);return!r.isLowPriority&&n.isLowPriority?-1:r.isLowPriority&&!n.isLowPriority?1:r.SeriesNumber-n.SeriesNumber}},lr={default:function(e,t){return e.InstanceNumber-t.InstanceNumber}},fr=cr,dr=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:cr.default;return e.sort(t)},pr=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:lr.default;return e.sort(t)};function hr(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var mr=st.a.data.DicomMetaDictionary.naturalizeDataset;function vr(e,t,r){t.seriesLoader=Object.freeze({hasNext:function(){return r.hasNext()},next:function(){return Ze()(Ye.a.mark((function n(){var a;return Ye.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,r.next();case 2:return a=n.sent,n.next=5,Zt(e,t,a.sopInstances,t.StudyInstanceUID);case 5:return n.abrupt("return",t.seriesMap[a.seriesInstanceUID]);case 6:case"end":return n.stop()}}),n)})))()}})}function yr(e,t,r){return Object.freeze({hasNext:function(){return r.length>0},next:function(){return Ze()(Ye.a.mark((function n(){var a,i;return Ye.a.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return a=r.shift(),n.next=3,e.retrieveSeriesMetadata({studyInstanceUID:t,seriesInstanceUID:a});case 3:return i=n.sent,n.abrupt("return",{studyInstanceUID:t,seriesInstanceUID:a,sopInstances:i});case 5:case"end":return n.stop()}}),n)})))()}})}var gr=function(e){X()(o,e);var t,r,n,a,i=(t=o,function(){var e,r=re()(t);if(hr()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function o(){return f()(this,o),i.apply(this,arguments)}return p()(o,[{key:"configLoad",value:function(){var e=this.server,t=new Ae.DICOMwebClient({url:e.qidoRoot,headers:ae.getAuthorizationHeader(e),errorInterceptor:Ve.getHTTPErrorHandler()});this.client=t}},{key:"getPreLoaders",value:Ye.a.mark((function e(){var t,r,n,a,i,o;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=[],r=this.studyInstanceUID,n=this.filters,a=(n=void 0===n?{}:n).seriesInstanceUID,i=this.client,a&&(o={studyInstanceUID:r,queryParams:{SeriesInstanceUID:a}},t.push(i.searchForSeries.bind(i,o))),t.push(i.searchForSeries.bind(i,{studyInstanceUID:r})),e.delegateYield(t,"t0",7);case 7:case"end":return e.stop()}}),e,this)}))},{key:"preLoad",value:(a=Ze()(Ye.a.mark((function e(){var t,r,n,a;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.getPreLoaders(),e.next=3,this.runLoaders(t);case 3:return r=e.sent,n=dr(r,fr.seriesInfoSortingCriteria),a=n.map((function(e){return ur(e).SeriesInstanceUID})),e.abrupt("return",{seriesInstanceUIDsMap:a,seriesData:r});case 7:case"end":return e.stop()}}),e,this)}))),function(){return a.apply(this,arguments)})},{key:"load",value:(n=Ze()(Ye.a.mark((function e(t){var r,n,a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.client,n=this.studyInstanceUID,a=yr(r,n,t.seriesInstanceUIDsMap),e.next=4,a.next();case 4:return i=e.sent,e.abrupt("return",{sopInstances:i.sopInstances,asyncLoader:a,seriesData:t.seriesData});case 6:case"end":return e.stop()}}),e,this)}))),function(e){return n.apply(this,arguments)})},{key:"posLoad",value:(r=Ze()(Ye.a.mark((function e(t){var r,n,a,i,o,s;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.server,n=this.studyInstanceUID,a=t.sopInstances,i=t.asyncLoader,o=t.seriesData,e.next=4,tr(r,a,n);case 4:return s=e.sent,o.map(mr).forEach((function(e,t){var r={SeriesInstanceUID:e.SeriesInstanceUID,SeriesDescription:e.SeriesDescription,SeriesNumber:e.SeriesNumber,Modality:e.Modality,instances:[]};s.series[t]?s.series[t]=Object.assign(r,s.series[t]):s.series[t]=r,s.seriesMap[e.SeriesInstanceUID]=s.series[t]})),i.hasNext()&&vr(r,s,i),e.abrupt("return",s);case 9:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})}]),o}(ar);function br(){return(br=Ze()(Ye.a.mark((function e(t,r){var n,a,i,o,s=arguments;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=s.length>2&&void 0!==s[2]?s[2]:{},a=!1!==t.enableStudyLazyLoad?gr:or,i=new a(t,r,n),o=i.execLoad(),e.abrupt("return",o);case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Ir=function(e,t){return br.apply(this,arguments)},wr=new Map;function Sr(e,t,r){if(!e)throw new Error("".concat("RetrieveStudyMetadata",": Required 'server' parameter not provided."));if(!t)throw new Error("".concat("RetrieveStudyMetadata",": Required 'StudyInstanceUID' parameter not provided."));if(wr.has(t))return wr.get(t);var n=new Promise((function(n,a){Ir(e,t,r).then((function(e){n(e)}),a)}));return wr.set(t,n),n}function Pr(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var Dr=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(Pr()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){return f()(this,n),r.apply(this,arguments)}return p()(n,[{key:"getByInstanceUID",value:function(e,t){return Sr(e,t)}},{key:"loadStudy",value:function(e){var t=this;if(!(e instanceof ze))throw new ce("OHIFStudyMetadataSource::loadStudy study is not an instance of StudyMetadata");return new Promise((function(r,a){var i=e.getStudyInstanceUID();if(e instanceof ze)return OHIF.viewer.Studies.findBy({StudyInstanceUID:i})||n._updateStudyCollections(e),void r(e);t.getByInstanceUID(i).then((function(e){var t=new ze(e,e.StudyInstanceUID),a=t.createDisplaySets();t.setDisplaySets(a),n._updateStudyCollections(t),r(t)})).catch(a)}))}}],[{key:"_updateStudyCollections",value:function(e){var t=e.getData();t.selected=!0,t.displaySets=e.getDisplaySets(),Gt.add(e)}}]),n}(Bt),Er=r(18),Or=r.n(Er),xr={OHIFStudyMetadataSource:Dr,MetadataProvider:Pt,CommandsManager:V,HotkeysManager:Q,ImageSet:de,StudyPrefetcher:function(){function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};f()(this,e),this.studies=t||[],this.prefetchDisplaySetsTimeout=300,this.lastActiveViewportElement=null,this.options=r,tt.a.events.addEventListener("cornerstoneimagecachefull.StudyPrefetcher",this.cacheFullHandler.bind(this))}return p()(e,[{key:"destroy",value:function(){this.stopPrefetching(),tt.a.events.removeEventListener("cornerstoneimagecachefull.StudyPrefetcher",this.cacheFullHandler.bind(this))}},{key:"setStudies",value:function(e){this.stopPrefetching(),this.studies=e}},{key:"setOptions",value:function(e){this.options=e}},{key:"prefetch",value:function(){this.studies&&this.studies.length&&(this.stopPrefetching(),this.prefetchDisplaySets())}},{key:"stopPrefetching",value:function(){Or.a.requestPoolManager.clearRequestStack("prefetch")}},{key:"prefetchDisplaySetsAsync",value:function(e){var t=this;e=e||this.prefetchDisplaySetsTimeout,clearTimeout(this.prefetchDisplaySetsHandler),this.prefetchDisplaySetsHandler=setTimeout((function(){t.prefetchDisplaySets()}),e)}},{key:"prefetchDisplaySets",value:function(){var e=this.getDisplaySetsToPrefetch({order:"closest",displaySetCount:1}),t=this.getImageIdsFromDisplaySets(e);this.prefetchImageIds(t)}},{key:"prefetchImageIds",value:function(e){var t=this.filterCachedImageIds(e),r=Or.a.requestPoolManager,n=this.options.mediaType,a=function(){};t.forEach((function(e){r.addRequest({},e,"prefetch",!1,a,a,!1,n)})),r.startGrabbing()}},{key:"getInstance",value:function(e,t){var r=tt.a.metaData.get("instance",t.imageId);return e.getInstanceByUID(r.SOPInstanceUID)}},{key:"getActiveDisplaySet",value:function(e,t){return e.find((function(e){return e.images.some((function(e){return e.SOPInstanceUID===t.SOPInstanceUID}))}))}},{key:"getDisplaySetsToPrefetch",value:function(e){var t=this.getActiveViewportImage();if(!t||!e||!e.displaySetCount)return[];var r=this.getStudy(t).displaySets,n=e.order,a=this[{topdown:"getFirstDisplaySets",downward:"getNextDisplaySets",closest:"getClosestDisplaySets"}[n]];return a?a.call(this,r,null,e.displaySetCount):(n&&h.warn("Invalid prefetch order configuration (".concat(n,")")),[])}},{key:"getFirstDisplaySets",value:function(e,t,r){for(var n=e.length,a=[],i=0;i<n&&r;i++){var o=e[i];o!==t&&(a.push(o),r--)}return a}},{key:"getNextDisplaySets",value:function(e,t,r){var n=e.indexOf(t)+1,a=Math.min(n+r,e.length);return e.slice(n,a)}},{key:"getClosestDisplaySets",value:function(e,t,r){for(var n=e.indexOf(t),a=e.length,i=[],o=n-1,s=n+1;(o>=0||s<a)&&r;)o>=0&&(i.push(e[o]),r--,o--),s<a&&r&&(i.push(e[s]),r--,s++);return i}},{key:"getImageIdsFromDisplaySets",value:function(e){var t=this,r=[];return e.forEach((function(e){r=r.concat(t.getImageIdsFromDisplaySet(e))})),r}},{key:"getImageIdsFromDisplaySet",value:function(e){var t=[];return e.images&&e.images.length&&e.images.forEach((function(e){var r=e.numFrames;if(r>1)for(var n=0;n<r;n++){var a=it(e,n);t.push(a)}else{var i=it(e);t.push(i)}})),t}},{key:"filterCachedImageIds",value:function(e){var t=this;return e.filter((function(e){return!t.isImageCached(e)}))}},{key:"isImageCached",value:function(e){var t=tt.a.imageCache.imageCache[e];return t&&t.sizeInBytes}},{key:"cacheFullHandler",value:function(){h.warn("Cache full"),this.stopPrefetching()}}],[{key:"getInstance",value:function(){return e.instance||(e.instance=new e([])),e.instance}}]),e}(),StudyLoadingListener:Ut,StackLoadingListener:Mt,DICOMFileLoadingListener:At,StudyMetadata:ze,SeriesMetadata:ye,InstanceMetadata:me,TypeSafeCollection:Nt,OHIFError:ce,StudyMetadataSource:Bt};function _r(e,t,r){var n={};return r.forEach((function(r){var a=ae.getString(r["0020000E"]),i=n[a];i||(i={SeriesInstanceUID:a,SeriesNumber:ae.getString(r["00200011"]),instances:[]},n[a]=i,i.push(i));var o=ae.getString(r["00080018"]),s="".concat(e.wadoUriRoot,"?requestType=WADO&studyUID=").concat(t,"&seriesUID=").concat(a,"&objectUID=").concat(o,"&contentType=application%2Fdicom");i.instances.push({SOPClassUID:ae.getString(r["00080016"]),SOPInstanceUID:o,uri:s,InstanceNumber:ae.getString(r["00200013"])})})),[]}function kr(e){if(!e)return"";var t=e.getFullYear().toString(),r=(e.getMonth()+1).toString(),n=e.getDate().toString();return t="0".repeat(4-t.length).concat(t),r="0".repeat(2-r.length).concat(r),n="0".repeat(2-n.length).concat(n),"".concat(t,r,n)}function jr(e){var t=[];if(e&&e.length)return e.forEach((function(e){return t.push({StudyInstanceUID:ae.getString(e["0020000D"]),StudyDate:ae.getString(e["00080020"]),StudyTime:ae.getString(e["00080030"]),AccessionNumber:ae.getString(e["00080050"]),referringPhysicianName:ae.getString(e["00080090"]),PatientName:ae.getName(e["00100010"]),PatientID:ae.getString(e["00100020"]),PatientBirthdate:ae.getString(e["00100030"]),patientSex:ae.getString(e["00100040"]),studyId:ae.getString(e["00200010"]),numberOfStudyRelatedSeries:ae.getString(e["00201206"]),numberOfStudyRelatedInstances:ae.getString(e["00201208"]),StudyDescription:ae.getString(e["00081030"]),modalities:ae.getString(ae.getModalities(e["00080060"],e["00080061"]))})})),t}function Tr(e,t){var r={url:e.qidoRoot,headers:ae.getAuthorizationHeader(e)},n=new Ae.DICOMwebClient(r);e.qidoSupportsIncludeField=void 0===e.qidoSupportsIncludeField||e.qidoSupportsIncludeField;var a={queryParams:function(e,t){var r=["00081030","00080060"].join(","),n={PatientName:e.PatientName,PatientID:e.PatientID,AccessionNumber:e.AccessionNumber,StudyDescription:e.StudyDescription,ModalitiesInStudy:e.ModalitiesInStudy,limit:e.limit,offset:e.offset,fuzzymatching:e.fuzzymatching,includefield:t?r:"all"};if(e.studyDateFrom||e.studyDateTo){var a=kr(new Date(e.studyDateFrom)),i=kr(new Date(e.studyDateTo));n.StudyDate="".concat(a,"-").concat(i)}if(e.StudyInstanceUID){var o=e.StudyInstanceUID;o=(o=Array.isArray(o)?o.join():o).replace(/[^0-9.]+/g,"\\"),n.StudyInstanceUID=o}var s={};return Object.keys(n).forEach((function(e){void 0!==n[e]&&""!==n[e]&&(s[e]=n[e])})),s}(t,e.qidoSupportsIncludeField)};return n.searchForStudies(a).then(jr)}var Rr={RetrieveMetadata:Ir},Ar={Studies:Tr,Instances:function(e,t){var r={url:e.qidoRoot,headers:ae.getAuthorizationHeader(e)},n=new Ae.DICOMwebClient(r),a={studyInstanceUID:t};return n.searchForInstances(a).then((function(r){return{wadoUriRoot:e.wadoUriRoot,StudyInstanceUID:t,series:_r(e,t,r.data)}}))}};var Mr=new Map;var Ur={services:{QIDO:Ar,WADO:Rr},loadingDict:{},retrieveStudyMetadata:Sr,deleteStudyMetadataPromise:function(e){wr.has(e)&&wr.delete(e)},retrieveStudiesMetadata:function(e,t,r){var n=[];t.forEach((function(t){var a=Sr(e,t,r);n.push(a)}));var a=Promise.all(n);return a.catch((function(e){return h.warn(e)})),a},getStudyBoxData:!1,searchStudies:function(e,t){var r={qidoRoot:e.qidoRoot,filter:t},n=JSON.stringify(r);if(Mr.has(n))return Mr.get(n);var a=Tr(e,t);return Mr.set(n,a),a},sortStudy:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:cr.default,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:lr.default;if(!e||!e.series)throw new Error("Insufficient study data was provided to sortStudy");return dr(e.series,r),t&&e.series.forEach((function(e){pr(e.instances,n)})),e}},Nr=function(e){var t="/";if(!e)return t;var r=window.location.origin,n=r.split("/");if(n.length>4){var a=r.indexOf(n[3]);t+=r.substring(a)+e}else t+=e;return t.replace(/\/\/+/g,"/")},Cr=function(e,t){if(!e||!t)throw new Error("The servers and store must be defined");Object.keys(e).forEach((function(r){e[r].forEach((function(e){var n=Object.assign({},e);n.type=r,t.dispatch({type:"ADD_SERVER",server:n})}))}))},Fr=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:512,n=atob(e),a=[],i=0;i<n.length;i+=r){for(var o=n.slice(i,i+r),s=new Array(o.length),u=0;u<o.length;u++)s[u]=o.charCodeAt(u);var c=new Uint8Array(s);a.push(c)}var l=new Blob(a,{type:t});return l},Lr=r(108),Vr=r.n(Lr),qr=(r(125),r(109)),$r=r.n(qr),zr=function(e){if(e)return"function"==typeof e.getImageId?e.getImageId():e.url},Gr=function(e,t){var r=e.find((function(e){return e.displaySets.some((function(e){return e.displaySetInstanceUID===t}))})).series,n=((void 0===r?[]:r)[0]||{}).instances,a=(void 0===n?[]:n)[0];return zr(a)},Br=function(e){return(Array.isArray(e)?e:[e]).some((function(e){return!e}))},Hr=function(e){return e&&e.images&&e.images[0]},Wr=function(e){return zr(e)},Qr=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:ae.getAuthorizationHeader();return fetch(e,t).then((function(e){return e.arrayBuffer()}))},Kr=function(e){return tt.a.loadAndCacheImage(e).then((function(e){return e&&e.data&&e.data.byteArray.buffer}))},Jr=function(e,t,r,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:ae.getAuthorizationHeader(),i=arguments.length>5?arguments[5]:void 0,o={url:e,headers:a},s=new Ae.DICOMwebClient(o);return s.retrieveInstance({studyInstanceUID:t,seriesInstanceUID:r,sopInstanceUID:n,mediaTypes:i})},Yr=function(e){var t=/^\w+:/,r=t.exec(e);return 0===t.lastIndex&&r&&r[0]&&r[0].replace(":","")||""},Xr=new(function(){function e(){f()(this,e)}var t,r;return p()(e,[{key:"getLocalData",value:(r=Ze()(Ye.a.mark((function e(t,r){var n,a,i;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!t||!t.localFile){e.next=9;break}if(n=Hr(t),a=Wr(n),Br(a)&&(a=Gr(r,t.displaySetInstanceUID)),Br(a)){e.next=9;break}return e.next=7,rt();case 7:return i=e.sent,e.abrupt("return",i.wadouri.loadFileRequest(a));case 9:case"end":return e.stop()}}),e)}))),function(e,t){return r.apply(this,arguments)})},{key:"getDataByImageType",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=Hr(e);if(r){var n=Wr(r),a=Qr,i=Yr(n);switch(i){case"dicomfile":a=Kr.bind(this,n);break;case"wadors":var o=r.getData().wadoRoot,s=r.getStudyInstanceUID(),u=r.getSeriesInstanceUID(),c=r.getSOPInstanceUID(),l=Br([o,s,u,c]),f=t.mediaTypes;if(l)return;a=Jr.bind(this,o,s,u,c,f);break;case"wadouri":if(n=n.substring(n.indexOf(":")+1),Br(n))return;a=Qr.bind(this,n)}return a()}}},{key:"getDataByDatasetType",value:function(e){var t=e.StudyInstanceUID,r=e.SeriesInstanceUID,n=e.SOPInstanceUID,a=e.authorizationHeaders,i=e.wadoRoot,o=e.wadoUri,s=e.mediaTypes;return Br(i)?Br(o)?void 0:Qr(o,{headers:a}):Jr(i,t,r,n,a,s)}},{key:"getLoaderIterator",value:function(e,t,r){var n=this;return $r()(Ye.a.mark((function a(){return Ye.a.wrap((function(a){for(;;)switch(a.prev=a.next){case 0:return a.next=2,n.getLocalData(e,t,r);case 2:return a.next=4,n.getDataByImageType(e,r);case 4:return a.next=6,n.getDataByDatasetType(e,r);case 6:case"end":return a.stop()}}),a)})))()}},{key:"findDicomDataPromise",value:(t=Ze()(Ye.a.mark((function e(t,r,n){var a,i,o,s,u,c,l,f;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:a=this.getLoaderIterator(t,r,n),i=!0,o=!1,e.prev=3,u=Vr()(a);case 5:return e.next=7,u.next();case 7:return c=e.sent,i=c.done,e.next=11,c.value;case 11:if(l=e.sent,i){e.next=19;break}if(!(f=l)){e.next=16;break}return e.abrupt("return",f);case 16:i=!0,e.next=5;break;case 19:e.next=25;break;case 21:e.prev=21,e.t0=e.catch(3),o=!0,s=e.t0;case 25:if(e.prev=25,e.prev=26,i||null==u.return){e.next=30;break}return e.next=30,u.return();case 30:if(e.prev=30,!o){e.next=33;break}throw s;case 33:return e.finish(30);case 34:return e.finish(25);case 35:throw new Error("Invalid dicom data loader");case 36:case"end":return e.stop()}}),e,this,[[3,21,25,35],[26,,30,34]])}))),function(e,r,n){return t.apply(this,arguments)})}]),e}()),Zr=function(e,t){var r=e.StudyInstanceUID,n=e.SeriesInstanceUID,a=Gt.get(r);if(a){var i=a.getDerivedDatasets({referencedSeriesInstanceUID:n});if(i.length){var o={};i.forEach((function(e){var t=e.Modality;void 0===o[t]&&(o[t]=[]),o[t].push(e)})),Object.keys(o).forEach((function(r){var n=o[r];if(!n.some((function(e){return e.isLoaded}))){var a,i=0;n.forEach((function(e){var t=Number("".concat(e.SeriesDate).concat(e.SeriesTime));t>i&&(i=t,a=e)})),a.load(e,t)}}))}}};function en(){var e=[].slice.call(arguments),t=e.length;return function(r,n){var a,i,o,s,u,c,l;for(l=0;l<t&&(c=0,a=r[s="string"==typeof(o=e[l])?o:o.name],i=n[s],void 0!==o.primer&&(a=o.primer(a),i=o.primer(i)),u=o.reverse?-1:1,a<i&&(c=-1*u),a>i&&(c=1*u),0===c);l++);return c}}function tn(e){return e[0].toLowerCase()+e.slice(1)}var rn=function(e){return e?ct.a.parse(e):{}},nn={getQueryFilters:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.search;if(t){var r=rn(t),n={};return Object.entries(r).forEach((function(e){var t=c()(e,2),r=t[0],a=t[1];n[tn(r)]=a})),n}}},an={isValidPath:function(e){var t="/".concat(":");return e.indexOf(t)<0},parseParam:function(e){var t=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";try{var t=window.atob(e);return t}catch(t){return e}}(e);if(t&&"string"==typeof t)return t.split(";")},replaceParam:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0,r=arguments.length>2?arguments[2]:void 0,n="".concat(":").concat(t);return r?e.replace(n,r):e}};function on(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var sn=function(e){var t=e.instances,r=e.Modality;if(!t||!t.length)return[e];switch(r){case"MR":return un(e);default:return[e]}},un=function(e){var t,r,n,a,i=cn(e.instances,(n=e.instances[0],a=n.metadata,t=a.Manufacturer||a["00080070"]||"",r=t.toLowerCase(),r.indexOf("siemens")>-1?{MR:["ImageType","SequenceName","0019100C","EchoTime","RepetitionTime"]}:r.indexOf("philips")>-1?{MR:["ImageType","20011020","20011003","EchoTime","RepetitionTime"]}:{MR:["ImageType","SequenceName","DiffusionBValue","EchoTime","RepetitionTime"]}).MR);delete e.instance;var o,s=0,u=!1;return i.length>1&&(u=!0,o=" - Subseries "),i.map((function(t){return s++,function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?on(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):on(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e,{SeriesDescription:u?e.SeriesDescription+o+s:e.SeriesDescription,SubSeriesIndex:u?"_"+s:"",isSubSeries:u,instances:t})}))},cn=function(e,t){var r=[],n=t.length,a=new Array(n).fill(new Set),i=new Set;return e.forEach((function(e){for(var o="",s=0;s<n;s++){var u=ln(e.metadata,t[s]),c=fn(u);a[s].add(c),o+=$()(a[s]).indexOf(c)}i.add(o);var l=$()(i).indexOf(o);r[l]?r[l].push(e):r[l]=[e]})),r},ln=function(e,t){for(var r=t.split("."),n=e[r[0]],a=1;a<r.length;a++)n=n[r[a]];return n},fn=function(e){return Array.isArray(e)?e.join("/"):e},dn={guid:k,ObjectPath:function(){function e(){f()(this,e)}return p()(e,null,[{key:"set",value:function(t,r,n){var a=e.getPathComponents(r),i=null!==a?a.length:0,o=!1;if(i>0&&e.isValidObject(t)){for(var s=0,u=i-1,c=t;s<u;){var l=a[s];if(l in c){if(!e.isValidObject(c[l]))break}else c[l]={};c=c[l],s++}s===u&&(c[a[u]]=n,o=!0)}return o}},{key:"get",value:function(t,r){var n,a=e.getPathComponents(r),i=null!==a?a.length:0;if(i>0&&e.isValidObject(t)){for(var o=0,s=i-1,u=t;o<s;){var c=a[o],l=e.isValidObject(u[c]);if(!(c in u)||!l)break;u=u[c],o++}o===s&&a[s]in u&&(n=u[a[s]])}return n}},{key:"isValidObject",value:function(e){return"object"===L()(e)&&null!==e&&e instanceof Object}},{key:"getPathComponents",value:function(e){return"string"==typeof e?e.split("."):null}}]),e}(),absoluteUrl:Nr,addServers:Cr,sortBy:en,writeScript:function(e,t){var r=document.createElement("script");r.src=Nr(e),r.onload=function(){"function"==typeof t&&t(r)},document.body.appendChild(r)},b64toBlob:Fr,StackManager:kt,studyMetadataManager:Gt,DicomLoaderService:Xr,urlUtil:n,loadAndCacheDerivedDisplaySets:Zr,makeCancelable:function(e){var t=!1,r=Promise.resolve(e).then((function(e){if(t)throw Object.freeze({isCanceled:t});return e}),(function(e){if(t)throw Object.freeze({isCanceled:t,error:e});throw e}));return Object.assign(Object.create(r),{then:r.then.bind(r),cancel:function(){t=!0}})},hotkeys:B,getImageSetCalculatedSpacings:qe,splitSeries:sn},pn=function(e,t){var r;return e.find((function(e){return!!e.images&&!!(r=e.images.find((function(e){return e.getSOPInstanceUID()===t})))})),r};function hn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var mn=function(e,t,r,n){return[e,t,r,n].join("_")},vn=function(e,t){var r=ot.data.DicomMessage.readFile(e),n=ot.data.DicomMetaDictionary.naturalizeDataset(r.dict),a=ot.adapters.Cornerstone.MeasurementReport.generateToolState(n),i={},o=0;return Object.keys(a).forEach((function(e){var r=a[e];i[e]=[],r.forEach((function(r){var n=pn(t,r.sopInstanceUid),a=n._study,s=n._series,u=a.StudyInstanceUID,c=a.PatientID,l=s.SeriesInstanceUID,f=r.sopInstanceUid,d=r.frameIndex,p=mn(u,l,f,d),h=n.getImageId();if(h){var m=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?hn(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):hn(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},r,{imageId:h,imagePath:p,SOPInstanceUID:f,SeriesInstanceUID:l,StudyInstanceUID:u,PatientID:c,measurementNumber:++o,timepointId:"TimepointId",toolType:e,_id:h+o});i[e].push(m)}}))})),i},yn={id:"ArrowAnnotate",name:"ArrowAnnotate",toolGroup:"allTools",cornerstoneToolType:"ArrowAnnotate",options:{measurementTable:{displayFunction:function(e){return e.text||""}},caseProgress:{include:!0,evaluate:!0}}},gn={id:"Bidirectional",name:"Target",toolGroup:"allTools",cornerstoneToolType:"Bidirectional",options:{measurementTable:{displayFunction:function(e){return e.shortestDiameter?"".concat(e.longestDiameter," x ").concat(e.shortestDiameter):e.longestDiameter}},caseProgress:{include:!0,evaluate:!0}}},bn={id:"EllipticalRoi",name:"Ellipse",toolGroup:"allTools",cornerstoneToolType:"EllipticalRoi",options:{measurementTable:{displayFunction:function(e){var t="",r=e.cachedStats;return r&&r.mean&&!isNaN(r.mean)&&(t="".concat(r.mean.toFixed(2)," HU")),t}},caseProgress:{include:!0,evaluate:!0}}},In={id:"CircleRoi",name:"Circle",toolGroup:"allTools",cornerstoneToolType:"CircleRoi",options:{measurementTable:{displayFunction:function(e){var t="",r=e.cachedStats;return r&&r.mean&&!isNaN(r.mean)&&(t="".concat(r.mean.toFixed(2)," HU")),t}},caseProgress:{include:!0,evaluate:!0}}},wn={id:"FreehandRoi",name:"Freehand",toolGroup:"allTools",cornerstoneToolType:"FreehandRoi",options:{measurementTable:{displayFunction:function(e){var t="";return e.meanStdDev&&e.meanStdDev.mean&&!isNaN(e.meanStdDev.mean)&&(t="".concat(e.meanStdDev.mean.toFixed(2)," HU")),t}},caseProgress:{include:!0,evaluate:!0}}},Sn={id:"Length",name:"Length",toolGroup:"allTools",cornerstoneToolType:"Length",options:{measurementTable:{displayFunction:function(e){var t="";return e.length&&!isNaN(e.length)&&(t="".concat(e.length.toFixed(2)," ").concat(e.unit?e.unit:"mm")),t}},caseProgress:{include:!0,evaluate:!0}}},Pn={id:"NonTarget",name:"Non-Target",toolGroup:"allTools",cornerstoneToolType:"NonTarget",options:{measurementTable:{displayFunction:function(e){return e.response}},caseProgress:{include:!0,evaluate:!0}}},Dn={id:"RectangleRoi",name:"Rectangle",toolGroup:"allTools",cornerstoneToolType:"RectangleRoi",options:{measurementTable:{displayFunction:function(e){var t="",r=e.cachedStats;return r&&r.mean&&!isNaN(r.mean)&&(t="".concat(r.mean.toFixed(2)," HU")),t}},caseProgress:{include:!0,evaluate:!0}}},En={id:"Angle",name:"Angle",toolGroup:"allTools",cornerstoneToolType:"Angle",options:{measurementTable:{displayFunction:function(e){var t="";return e.rAngle&&!isNaN(e.rAngle)&&(t=e.rAngle.toFixed(2)+String.fromCharCode(176)),t}},caseProgress:{include:!0,evaluate:!0}}},On={id:"TargetCR",name:"CR Target",toolGroup:"allTools",cornerstoneToolType:"TargetCR",options:{measurementTable:{displayFunction:function(e){return e.response}},caseProgress:{include:!0,evaluate:!0}}},xn={id:"TargetNE",name:"NE Target",toolGroup:"allTools",cornerstoneToolType:"TargetNE",options:{measurementTable:{displayFunction:function(e){return e.response}},caseProgress:{include:!0,evaluate:!0}}},_n={id:"TargetUN",name:"UN Target",toolGroup:"allTools",cornerstoneToolType:"TargetUN",options:{measurementTable:{displayFunction:function(e){return e.response}},caseProgress:{include:!0,evaluate:!0}}},kn={id:"CobbAngle",name:"CobbAngle",toolGroup:"allTools",cornerstoneToolType:"CobbAngle",options:{measurementTable:{displayFunction:function(e){var t="";return e.rAngle&&!isNaN(e.rAngle)&&(t=e.rAngle.toFixed(2)+String.fromCharCode(176)),t}},caseProgress:{include:!0,evaluate:!0}}},jn={id:"Probe",name:"Probe",toolGroup:"allTools",cornerstoneToolType:"Probe",options:{measurementTable:{displayFunction:function(e){return"Probe ".concat(parseInt(e.handles.end.x),", ").concat(parseInt(e.handles.end.y))}},caseProgress:{include:!0,evaluate:!0}}},Tn=[];Object.keys(a).forEach((function(e){return Tn.push(a[e])}));var Rn={measurementTools:[{id:"allTools",name:"Measurements",childTools:Tn,options:{caseProgress:{include:!0,evaluate:!0}}}],newLesions:[{id:"newTargets",name:"New Targets",toolGroupId:"targets"},{id:"newNonTargets",name:"New Non-Targets",toolGroupId:"nonTargets"}],dataExchange:{retrieve:function(e,t){return h.error("retrieveMeasurements"),Promise.resolve()},store:function(e,t){return h.error("storeMeasurements"),Promise.resolve()}}};function An(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Mn(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?An(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):An(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Un=Mn({},{dataExchange:{retrieve:function(e){return h.error("retrieveTimepoints"),Promise.resolve()},store:function(e){return h.error("storeTimepoints"),Promise.resolve()},remove:function(e){return h.error("removeTimepoint"),Promise.resolve()},update:function(e,t){return h.error("updateTimepoint"),Promise.resolve()},disassociate:function(e,t){return h.error("disassociateStudy"),Promise.resolve()}}}),Nn={prebaseline:"Pre-Baseline",baseline:"Baseline",followup:"Follow-up"},Cn=function(){function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(f()(this,e),e.Instance)return e.Instance.initialize(t,r),e.Instance;this.initialize(t,r),e.Instance=this}return p()(e,null,[{key:"setConfiguration",value:function(e){Object.assign(Un,e)}},{key:"getConfiguration",value:function(){return Un}}]),p()(e,[{key:"initialize",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.currentTimepointId=e,this.comparisonTimepointKey=t.comparisonTimepointKey||"baseline",this.options=t,this.timepoints=[]}},{key:"onTimepointsUpdated",value:function(){"function"==typeof this.options.onTimepointsUpdated?this.options.onTimepointsUpdated(Object.assign([],this.timepoints)):h.warn("Timepoints update callback is not defined")}},{key:"calculateVisitNumber",value:function(e){var t=this.timepoints.sort((function(e,t){return e.visitDate>t.visitDate?1:-1})).find((function(t){return t.PatientID===e.PatientID&&t.timepointType===e.timepointType})).map((function(e){return e.timepointId})).indexOf(e.timepointId)+1;if(!t)throw new Error("Current timepoint was not in the list of relevant timepoints?");return t}},{key:"retrieveTimepoints",value:function(e){var t=this,r=Un.dataExchange.retrieve;if("function"==typeof r)return new Promise((function(n,a){r(e).then((function(e){h.info("Timepoint data retrieval"),e.forEach((function(e){var r=t.timepoints.findIndex((function(t){return t.timepointId===e.timepointId}));r<0?t.timepoints.push(e):t.timepoints[r]=e})),t.onTimepointsUpdated(),n()})).catch((function(e){h.error("Timepoint retrieval function failed: ".concat(e)),a(e)}))}));h.error("Timepoint retrieval function has not been configured.")}},{key:"storeTimepoints",value:function(){var e=Un.dataExchange.store;if("function"==typeof e)return h.info("Preparing to store timepoints"),h.info(JSON.stringify(this.timepoints,null,2)),e(this.timepoints);h.error("Timepoint store function has not been configured.")}},{key:"disassociateStudy",value:function(e,t){var r=this,n=Un.dataExchange.disassociate;"function"==typeof n?n(e,t).then((function(){h.info("Disassociation completed"),r.timepoints=[],r.retrieveTimepoints({})})):h.error("Study disassociate function has not been configured.")}},{key:"removeTimepoint",value:function(e){var t=this,r=Un.dataExchange.remove;if("function"==typeof r){var n={timepointId:e};h.info("Preparing to remove timepoint"),h.info(JSON.stringify(n,null,2)),r(n).then((function(){h.info("Timepoint removal completed");var r=t.timepoints.findIndex((function(t){return t.timepointId===e}));r>-1&&t.timepoints.splice(r,1),t.onTimepointsUpdated()}))}else h.error("Timepoint remove function has not been configured.")}},{key:"updateTimepoint",value:function(e,t){var r=this,n=Un.dataExchange.update;if("function"==typeof n){var a={timepointId:e};h.info("Preparing to update timepoint"),h.info(JSON.stringify(a,null,2)),h.info(JSON.stringify(t,null,2)),n(a,t).then((function(){h.info("Timepoint updated completed");var n=r.timepoints.findIndex((function(t){return t.timepointId===e}));n>-1&&(r.timepoints[n]=Mn({},r.timepoints[n],{},t)),r.onTimepointsUpdated()}))}else h.error("Timepoint update function has not been configured.")}},{key:"all",value:function(e){return(e?this.timepoints.filter(e):this.timepoints).sort((function(e,t){return e.visitDate<t.visitDate?1:-1}))}},{key:"current",value:function(){var e=this;return this.timepoints.find((function(t){return t.timepointId===e.currentTimepointId}))}},{key:"lock",value:function(){var e=this,t=this.timepoints.findIndex((function(t){return t.timepointId===e.currentTimepointId}));t<0||(this.timepoints[t]=Mn({},this.timepoints[t],{locked:!0}))}},{key:"prior",value:function(){var e=this.current();if(e)return this.all().find((function(t){return t.visitDate<e.visitDate}))}},{key:"currentAndPrior",value:function(){var e=[],t=this.current();t&&e.push(t);var r=this.prior();return t&&r&&r.timepointId!==t.timepointId&&e.push(r),e}},{key:"currentAndComparison",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.comparisonTimepointKey,t=this.current(),r=this.comparison(e),n=[t];return r&&!n.find((function(e){return e.timepointId===r.timepointId}))&&n.push(r),n}},{key:"isRebaseline",value:function(e){var t=e?this.timepoints.find((function(t){return t.timepointId===e})):this.current();return!!t&&this.timepoints.filter((function(e){return"baseline"===e.timepointType&&e.visitDate<=t.visitDate})).length>1}},{key:"nextBaselineAfterCurrent",value:function(){var e=this.current();return this.timepoints.sort((function(e,t){return e.visitDate>t.visitDate?1:-1})).find((function(t){return t.visitDate>e.visitDate&&"baseline"===t.timepointType}))}},{key:"setCurrentTimepointId",value:function(e){this.currentTimepointId=e}},{key:"setUserComparison",value:function(e){this.userComparison=e}},{key:"comparison",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.comparisonTimepointKey;if(this.userComparison)return this.userComparison;var t=this.current();if(t){if("prebaseline"===t.timepointType){var r=this.nextBaselineAfterCurrent();if(r)return r}if("baseline"===t.timepointType){var n=this.prior();if(n)return n}var a=this[e]();if(!a||a.timepointId!==t.timepointId)return a}}},{key:"latestInitialTimepointAfterCurrent",value:function(){var e=this.current();if("followup"!==e.timepointType){var t=this.timepoints.sort((function(e,t){return e.visitDate>t.visitDate?1:-1})).filter((function(t){return t.visitDate>e.visitDate})),r=t.findIndex((function(e){return"followup"===e.timepointType}))-1;return r<0?t[t.length-1]:t[r]}}},{key:"initialTimepointIds",value:function(){var e=this.current();"prebaseline"!==e.timepointType&&"baseline"!==e.timepointType||(e=this.latestInitialTimepointAfterCurrent()||e);var t=e.visitDate,r=(this.timepoints.filter((function(e){return"prebaseline"===e.timepointType&&e.visitDate<=t}))||[]).map((function(e){return e.timepointId})),n=(this.timepoints.filter((function(e){return"baseline"===e.timepointType&&e.visitDate<=t}))||[]).map((function(e){return e.timepointId}));return r.concat(n)}},{key:"baseline",value:function(){var e=this.current().visitDate;return this.all().find((function(t){return"baseline"===t.timepointType&&t.visitDate<=e}))}},{key:"nadir",value:function(){var e=this.current(),t=this.all().find((function(t){return t.timepointId!==e.timepointId&&"nadir"===t.timepointKey&&t.visitDate<=e.visitDate}));return t||this.baseline()}},{key:"key",value:function(){var e=[this.current()],t=this.prior(),r=this.nadir(),n=this.baseline(),a=function(t){return!!e.find((function(e){return e.timepointId===t.timepointId}))};return t&&!1===a(t)&&e.push(t),r&&!1===a(r)&&e.push(r),n&&!1===a(n)&&e.push(n),e}},{key:"study",value:function(e){return this.all().filter((function(t){return t.studyInstanceUIDs.includes(e)}))}},{key:"name",value:function(e){var t=Nn[e.timepointType];if("baseline"===e.timepointType)return"Baseline";if(e.visitNumber)return"".concat(t," ").concat(e.visitNumber);var r=this.calculateVisitNumber(e);return"".concat(t," ").concat(r)}},{key:"title",value:function(e){for(var t=this.name(e),r=this.all(),n=-1,a=null,i=0;i<r.length;i++){var o=r[i];if(this.currentTimepointId===o.timepointId&&(a=0),null!==a&&(n=a++),o.timepointId===e.timepointId)break}var s={0:["Current"],1:["Prior"]}[n]||[],u=this.nadir();u&&u.timepointId===e.timepointId&&s.push("Nadir");var c="";return s.length&&(c="(".concat(s.join(", "),")")),"".concat(t," ").concat(c)}},{key:"addTempTimepoint",value:function(e){this.timepoints.push(e),this.onTimepointsUpdated()}}],[{key:"getInstance",value:function(){return this.Instance||(this.Instance=new e),this.Instance}}]),e}();Cn.Instance=void 0;var Fn=function(e){if(e)switch(e.toolType){case"Bidirectional":case"TargetCR":case"TargetNE":case"TargetUN":return"Target ".concat(e.lesionNamingNumber);case"NonTarget":return"Non-Target ".concat(e.lesionNamingNumber)}},Ln=function(e){return e.description},Vn=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=e.split("_"),n=c()(r,4),a=n[0],i=n[1],o=n[2],s=n[3],u=Gt.get(a),l=u.getSeriesByUID(i),f=l.getInstanceByUID(o);return f.getImageId(s,t)};function qn(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function $n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?qn(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):qn(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var zn=$n({},Rn),Gn=function(){function e(t){var r=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(f()(this,e),this.temporaryDeletedMeasurement={},this.getTemporaryDeletedMeasurements=function(e){return r.temporaryDeletedMeasurement[e]||[]},this.addTemporaryDeletedMeasurements=function(e){var t=e.StudyInstanceUID,n=r.getTemporaryDeletedMeasurements(t);0!==n.length&&-1!==n.findIndex((function(t){return t.id===e.id}))||(h.info("add measurement to temporary deleted list",e),n.push(e),r.temporaryDeletedMeasurement[t]=n)},this.clearTemporaryDeletedMeasurement=function(e){delete r.temporaryDeletedMeasurement[e]},e.Instance)return e.Instance.initialize(t,n),e.Instance;this.initialize(t,n),e.Instance=this}return p()(e,null,[{key:"setConfiguration",value:function(e){Object.assign(zn,e)}},{key:"getConfiguration",value:function(){return zn}},{key:"getToolsGroupsMap",value:function(){var e={};return zn.measurementTools.forEach((function(t){t.childTools.forEach((function(r){return e[r.id]=t.id}))})),e}},{key:"getToolGroupTools",value:function(e){var t={};return Object.keys(e).forEach((function(r){var n=e[r];t[n]||(t[n]=[]),t[n].push(r)})),t}},{key:"getToolConfiguration",value:function(t){var r,n=e.getConfiguration(),a=e.getToolsGroupsMap()[t],i=n.measurementTools.find((function(e){return e.id===a}));return i&&(r=i.childTools.find((function(e){return e.id===t}))),{toolGroupId:a,toolGroup:i,tool:r}}},{key:"syncMeasurementAndToolData",value:function(t){h.info("syncMeasurementAndToolData",t);var r=Fn(t);r&&(t.labels=[r]);var n=Or.a.globalImageIdSpecificToolStateManager.saveToolState(),a=t.StudyInstanceUID;if(Gt.get(a)){var i=t.toolType,o=e.getToolConfiguration(i).tool;if(Array.isArray(o.childTools))o.childTools.forEach((function(r){var n=t[r];n&&(n._id=t._id,n.measurementNumber=t.measurementNumber,n.lesionNamingNumber=t.lesionNamingNumber,e.syncMeasurementAndToolData(n))}));else{var s=Vn(t.imagePath);n[s]||(n[s]={});var u=n[s][i],c=u&&u.data;if(c&&c.length){var l=n[s][i].data,f=!1;if(l.forEach((function(e){if(e._id===t._id)return f=!0,Object.assign(e,t),!1})),!0===f)return}else n[s][i]={data:[]};n[s][i].data.push(t),Or.a.globalImageIdSpecificToolStateManager.restoreToolState(n)}}}},{key:"isToolIncluded",value:function(e){return e.options&&e.options.caseProgress&&e.options.caseProgress.include}}]),p()(e,[{key:"initialize",value:function(t){var r=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.timepointApi=t,this.options=n,this.toolGroups={},this.tools={},this.toolsGroupsMap=e.getToolsGroupsMap(),this.toolGroupTools=e.getToolGroupTools(this.toolsGroupsMap),zn.measurementTools.forEach((function(e){r.toolGroups[e.id]=[],e.childTools.forEach((function(e){r.tools[e.id]=[]}))}))}},{key:"onMeasurementsUpdated",value:function(){"function"==typeof this.options.onMeasurementsUpdated?this.options.onMeasurementsUpdated($n({},this.tools)):h.warn("Measurements update callback is not defined")}},{key:"processMeasurementData",value:function(e){var t=this;e&&(h.info("Measurement data retrieval"),h.info(e),Object.keys(e).forEach((function(r){e[r].forEach((function(e){var r=e.toolType;t.addMeasurement(r,e)}))}))),this.syncMeasurementsAndToolData();try{tt.a.getEnabledElements().forEach((function(e){tt.a.updateImage(e.element)}))}catch(e){h.error(e)}this.onMeasurementsUpdated()}},{key:"retrieveMeasurements",value:function(e){var t=this,r=zn.dataExchange.retrieve,n=zn.server;if("function"==typeof r)return new Promise((function(a,i){r(n,e).then((function(e){t.processMeasurementData(e),a()}),i)}));h.error("Measurement retrieval function has not been configured.")}},{key:"storeMeasurements",value:function(t,r){var n=this,a=zn.server,i=zn.dataExchange.store;if("function"==typeof i){var o={};zn.measurementTools.forEach((function(t){e.isToolIncluded(t)&&t.childTools.forEach((function(r){e.isToolIncluded(r)&&(o[t.id]||(o[t.id]=[]),o[t.id]=o[t.id].concat(n.tools[r.id]))}))}));var s=t?function(e){return e.timepointId===t}:null,u=this.timepointApi.all(s),c=u.map((function(e){return e.timepointId})),l={PatientID:u[0].PatientID,timepointIds:c};return h.info("Saving Measurements for timepoints:",u),i(o,l,a,r).then((function(e){return h.info("Measurement storage completed",e),n.processMeasurementData(e),e}))}h.error("Measurement store function has not been configured.")}},{key:"calculateLesionNamingNumber",value:function(e){var t,r=e.sort((function(e,t){return e.lesionNamingNumber>t.lesionNamingNumber?1:e.lesionNamingNumber<t.lesionNamingNumber?-1:0}));for(t=1;t<r.length+1&&!(t<r[t-1].lesionNamingNumber);t++);return t}},{key:"fetch",value:function(e,t){var r=this;if(!this.toolGroups[e])throw new Error("MeasurementApi: No Collection with the id: ".concat(e));return(t?this.toolGroups[e].filter(t):this.toolGroups[e]).map((function(e){return e.toolId?r.tools[e.toolId].find((function(t){return t._id===e.toolItemId})):{lesionNamingNumber:e.lesionNamingNumber}}))}},{key:"getFirstMeasurement",value:function(t){var r,n=this,a=[];return zn.measurementTools.forEach((function(t){if(!e.isToolIncluded(t))return!1;a=a.concat(t.childTools)})),a.filter((function(t){return e.isToolIncluded(t)})).every((function(e){return!(r=n.tools[e.id].find((function(e){return e.timepointId===t&&1===e.measurementNumber})))})),r}},{key:"lesionExistsAtTimepoints",value:function(e,t,r){return!!this.fetch(t,(function(e){return r.includes(e.timepointId)})).find((function(t){return t.lesionNamingNumber===e}))}},{key:"isNewLesionsMeasurement",value:function(t){if(t){var r=e.getToolConfiguration(t.toolType),n=r.tool.parentTool||t.toolType,a=this.timepointApi,i=this.tools[n].find((function(e){return e._id===t._id}))||{},o=i.timepointId||t.timepointId,s=i.lesionNamingNumber||t.lesionNamingNumber;if(a&&o&&r){var u=r.toolGroupId,c=a.timepoints.find((function(e){return e.timepointId===o})),l=a.initialTimepointIds();return!(!l||l.length<1||l.some((function(e){return e===c.timepointId})))&&!1===this.lesionExistsAtTimepoints(s,u,l)}}}},{key:"calculateLesionMaxMeasurementNumber",value:function(e,t){for(var r=this,n=(e?this.toolGroups[e]||[]:Object.keys(this.toolGroups).reduce((function(e,t){return e.push.apply(e,$()(r.toolGroups[t])),e}),[])).filter(t).sort((function(e,t){return e.measurementNumber<t.measurementNumber?1:-1})),a=function(e){var t=n[e],a=r.tools[t.toolId].find((function(e){return e._id===t.toolItemId}));if(!r.isNewLesionsMeasurement(a))return{v:a&&a.measurementNumber||0}},i=0;i<n.length;i++){var o=a(i);if("object"===L()(o))return o.v}return 0}},{key:"calculateNewLesionMaxMeasurementNumber",value:function(e,t){for(var r=this,n=this.toolGroups[e].filter(t).sort((function(e,t){return e.measurementNumber<t.measurementNumber?1:-1})),a=function(e){var t=n[e],a=r.tools[t.toolId].find((function(e){return e._id===t.toolItemId}));if(r.isNewLesionsMeasurement(a))return{v:a.measurementNumber}},i=0;i<n.length;i++){var o=a(i);if("object"===L()(o))return o.v}return 0}},{key:"calculateMeasurementNumber",value:function(e){var t=this.toolsGroupsMap[e.toolType],r=function(t){return t._id!==e._id};if(!this.isNewLesionsMeasurement(e)){var n=this.calculateLesionMaxMeasurementNumber("targets",r);if("targets"===t)return n;if("nonTargets"===t){var a=this.calculateLesionMaxMeasurementNumber("nonTargets",r);return Math.max(n,a)}return this.calculateLesionMaxMeasurementNumber(null,r)}var i=this.calculateLesionMaxMeasurementNumber("targets",r),o=this.calculateLesionMaxMeasurementNumber("nonTargets",r),s=this.calculateNewLesionMaxMeasurementNumber("targets",r);if("targets"===t)return Math.max(i,o,s);if("nonTargets"===t){var u=this.calculateNewLesionMaxMeasurementNumber("nonTargets",r);return Math.max(i,o,s,u)}return 0}},{key:"getPreviousMeasurement",value:function(e){if(e){var t=e.timepointId,r=e.toolType,n=e.lesionNamingNumber;if(t&&r&&n){var a,i=this.toolsGroupsMap[e.toolType],o=e.additionalData&&e.additionalData.TrialPatientLocationUID;a=o?function(t){return t._id!==e._id&&t.additionalData&&t.additionalData.TrialPatientLocationUID===o}:function(t){return t._id!==e._id&&t.lesionNamingNumber===n};for(var s=this.toolGroupTools[i],u=0;u<s.length;u++){var c=s[u],l=this.tools[c].find(a);if(l)return l}}}}},{key:"hasDuplicateMeasurementNumber",value:function(e){var t=this;if(e){var r=e.toolType,n=e.measurementNumber;if(r&&n){var a=function(t){return t._id!==e._id&&t.measurementNumber===e.measurementNumber};return zn.measurementTools.filter((function(e){return"temp"!==e.id})).some((function(e){return!!t.toolGroups[e.id].find(a)||e.childTools.some((function(e){if(t.tools[e.id].find(a))return!0}))}))}}}},{key:"updateNumbering",value:function(e,t,r,n){e.filter(t).forEach((function(e){e[r]+=n}))}},{key:"updateMeasurementNumberForAllMeasurements",value:function(e,t){var r=this,n=function(t){return t._id!==e._id&&t.measurementNumber>=e.measurementNumber};zn.measurementTools.filter((function(e){return"temp"!==e.id})).forEach((function(e){r.updateNumbering(r.toolGroups[e.id],n,"measurementNumber",t),e.childTools.forEach((function(e){r.updateNumbering(r.tools[e.id],n,"measurementNumber",t)}))}))}},{key:"addMeasurement",value:function(e,t){var r,n=this.toolsGroupsMap[e],a=this.toolGroups[n],i=this.tools[e],o=i.find((function(e){return e.lesionNamingNumber===t.lesionNamingNumber&&e.toolType===t.toolType}));if(o&&o.location&&(t.location=o.location),o&&o.description&&(t.description=o.description),t._id||(t._id=k()),t.StudyInstanceUID)r=this.timepointApi.study(t.StudyInstanceUID)[0];else{var s=t.timepointId;r=this.timepointApi.timepoints.find((function(e){return e.timepointId===s}))}if(r){var u=a.find((function(e){return e.toolItemId===t._id&&e.timepointId===r.timepointId}));if(t.timepointId=r.timepointId,u)t.lesionNamingNumber=u.lesionNamingNumber,t.measurementNumber=u.measurementNumber,a.filter((function(e){return e.timepointId===r.timepointId&&e.lesionNamingNumber===t.lesionNamingNumber})).forEach((function(e){e.toolId=t.toolType,e.toolItemId=t._id,e.createdAt=t.createdAt,e.measurementNumber=t.measurementNumber,e.id=t.id}));else{h.info("handle measurement not added by cornerstone tool",t);var c=a.filter((function(e){return e.timepointId===r.timepointId}));t.lesionNamingNumber=t.lesionNamingNumber||this.calculateLesionNamingNumber(c),t.measurementNumber=t.measurementNumber||this.calculateMeasurementNumber(t)+1}var l,f={timepointId:r.timepointId,lesionNamingNumber:t.lesionNamingNumber,measurementNumber:t.measurementNumber,id:t.id},d=this.getPreviousMeasurement(t);if(d){h.info("previous measurement",d),t.lesionNamingNumber=d.lesionNamingNumber,t.measurementNumber=d.measurementNumber,f.lesionNamingNumber=d.lesionNamingNumber,f.measurementNumber=d.measurementNumber,f.additionalData=t.additionalData||{},f.additionalData.TrialPatientLocationUID=d.additionalData&&d.additionalData.TrialPatientLocationUID,f.location=d.location,f.label=d.label,f.description=d.description,f.isSplitLesion=d.isSplitLesion,f.isNodal=d.isNodal;var p=Ln(d);p&&(f.description=p)}else this.hasDuplicateMeasurementNumber(t);var m=i.findIndex((function(e){return e._id===t._id}));return m>-1?(l=$n({},i[m],{},f),i[m]=l):(l=$n({},t,{},f),i.push(l)),u||a.push({toolId:e,toolItemId:l._id,timepointId:r.timepointId,StudyInstanceUID:l.StudyInstanceUID,createdAt:l.createdAt,lesionNamingNumber:l.lesionNamingNumber,measurementNumber:l.measurementNumber,id:l.id}),this.onMeasurementsUpdated(),l}}},{key:"updateMeasurement",value:function(e,t){var r=this.tools[e],n=r.findIndex((function(e){return e._id===t._id}));n<0||(r[n]=$n({},t,{updated:!0}),this.onMeasurementsUpdated())}},{key:"onMeasurementRemoved",value:function(e,t){var r=this,n=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=t.lesionNamingNumber,i=t.measurementNumber,o=this.toolsGroupsMap[e],s=this.toolGroups[o],u=s.findIndex((function(e){return e.toolItemId===t._id}));if(h.info("onMeasurementRemoved",t,s,u),!(u<0)){s.splice(u,1);var c=s.filter((function(e){return e.measurementNumber===i})).map((function(e){return e.timepointId}));if(c.length<1){var l=function(e){return e.lesionNamingNumber>=a};this.updateNumbering(s,l,"lesionNamingNumber",-1);var f=zn.measurementTools.find((function(e){return e.id===o}));f&&f.childTools&&f.childTools.forEach((function(e){var t=r.tools[e.id];r.updateNumbering(t,l,"lesionNamingNumber",-1)})),this.updateMeasurementNumberForAllMeasurements(t,-1)}this.syncMeasurementsAndToolData(),this.onMeasurementsUpdated();var d=t.id;d&&n&&this.addTemporaryDeletedMeasurements(t)}}},{key:"syncMeasurementsAndToolData",value:function(){var t=this;zn.measurementTools.forEach((function(r){e.isToolIncluded(r)&&r.childTools.forEach((function(r){e.isToolIncluded(r)&&t.tools[r.id].forEach((function(t){e.syncMeasurementAndToolData(t)}))}))}))}},{key:"deleteMeasurements",value:function(t,r,n,a){var i=this,o={lesionNamingNumber:n.lesionNamingNumber,timepointId:n.timepointId},s=Object.keys(o),u=this.toolGroups[r];if(u){var c=u.filter((function(e){return s.every((function(t){return e[t]===o[t]}))})),l=[];if(c.forEach((function(e){if(e.toolId){var t=i.tools[e.toolId],r=t.findIndex((function(t){return t._id===e.toolItemId}));r>-1&&(l.push(t[r]),t.splice(r,1))}})),l.length){var f=o.lesionNamingNumber||l[0].lesionNamingNumber,d=Or.a.globalImageIdSpecificToolStateManager.saveToolState();l.forEach((function(r){var n=[],o=e.getToolConfiguration(r.toolType).tool;Array.isArray(o.childTools)?o.childTools.forEach((function(e){var t=r[e];t&&n.push(t)})):n.push(r),n.forEach((function(e){var t=e.imagePath,n=e.toolType,a=Vn(t);if(a&&d[a]){var i=d[a][n],o=i&&i.data,s=o.find((function(e){return e._id===r._id}));if(s){var u=o.indexOf(s);o.splice(u,1)}}})),i.onMeasurementRemoved(t,r,a)})),Or.a.globalImageIdSpecificToolStateManager.restoreToolState(d);var p=$n({},o);delete p.timepointId,delete p.lesionNamingNumber;var h=Object.keys(p);$()(new Set(l.map((function(e){return e.toolType})))).forEach((function(t){i.tools[t].filter((function(e){return e.lesionNamingNumber>f-1&&h.every((function(t){return e[t]===o[t]}))})).forEach((function(t){e.syncMeasurementAndToolData(t)}))}))}}}}],[{key:"getInstance",value:function(){return this.Instance||(this.Instance=new e),this.Instance}}]),e}();Gn.Instance=void 0;var Bn=r(112),Hn=r.n(Bn),Wn=function(){function e(t,r){f()(this,e),this.options=t,this.criterionName=r}return p()(e,[{key:"generateResponse",value:function(e,t){return{passed:!e,isGlobal:!t||!t.length,message:e,measurements:t,criterionName:this.criterionName}}},{key:"getNewTargetNumbers",value:function(e){var t=this.options,r=[],n=new Set;return t.newTarget&&(e.targets.forEach((function(e){var t=e.measurement.measurementNumber;"baseline"===e.timepoint.timepointType&&r.push(t)})),e.targets.forEach((function(e){var t=e.measurement.measurementNumber;"followup"===e.timepoint.timepointType&&(r.includes(t)||n.add(t))}))),n}}]),e}();function Qn(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var Kn={type:"object"},Jn=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(Qn()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=e.targets.concat(e.nonTargets),n=[];return r.forEach((function(e){var t=e.measurement;t.location||n.push(t)})),n.length&&(t="All measurements should have a location"),this.generateResponse(t,n)}}]),n}(Wn);function Yn(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var Xn={type:"object",properties:{limit:{label:"Max targets allowed per organ",type:"integer",minimum:1},newTarget:{label:"Flag to evaluate only new targets",type:"boolean"},isNodal:{label:"Filter to evaluate only nodal or extranodal measurements",type:"boolean"},message:{label:"Message to be displayed in case of nonconformity",type:"string"}},required:["limit"]},Zn=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(Yn()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=this.options,n={},a=[],i=this.getNewTargetNumbers(e);if(e.targets.forEach((function(e){var t=e.measurement,o=t.location,s=t.measurementNumber,u=t.isSplitLesion,c=t.isNodal;u||"boolean"==typeof c&&"boolean"==typeof r.isNodal&&r.isNodal!==c||(n[o]||(n[o]=new Set),r.newTarget&&!i.has(s)||n[o].add(s),n[o].size>r.limit&&a.push(t))})),a.length){var o=r.newTarget?"new ":"";t=r.message||"Each organ should not have more than ".concat(r.limit," ").concat(o,"targets.")}return this.generateResponse(t,a)}}]),n}(Wn);function ea(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ta={type:"object",properties:{limit:{label:"Max targets allowed in study",type:"integer",minimum:0},newTarget:{label:"Flag to evaluate only new targets",type:"boolean"},locationIn:{label:"Filter to evaluate only measurements with the specified locations",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},locationNotIn:{label:"Filter to evaluate only measurements without the specified locations",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},isNodal:{label:"Filter to evaluate only nodal or extranodal measurements",type:"boolean"},message:{label:"Message to be displayed in case of nonconformity",type:"string"}},required:["limit"]},ra=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ea()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t=this.options,r=this.getNewTargetNumbers(e),n=[];e.targets.forEach((function(e){var a=e.measurement,i=a.location,o=a.measurementNumber,s=a.isSplitLesion,u=a.isNodal;s||"boolean"==typeof u&&"boolean"==typeof t.isNodal&&t.isNodal!==u||t.newTarget&&!r.has(o)||t.locationIn&&-1===t.locationIn.indexOf(i)||t.locationNotIn&&t.locationNotIn.indexOf(i)>-1||n.push(o)}));var a,i="";if("boolean"==typeof t.isNodal&&(i=t.isNodal?"nodal ":"extranodal "),n.length>t.limit){var o=t.newTarget?"new ":"",s=1===t.limit?"":"s",u=0===t.limit?"":"more than ".concat(t.limit);a=t.message||"The study should not have ".concat(u," ").concat(o).concat(i,"target").concat(s,".")}return this.generateResponse(a)}}]),n}(Wn);function na(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var aa={type:"object",properties:{longAxis:{label:"Minimum length of long axis",type:"number",minimum:0},shortAxis:{label:"Minimum length of short axis",type:"number",minimum:0},longAxisSliceThicknessMultiplier:{label:"Length of long axis multiplier",type:"number",minimum:0},shortAxisSliceThicknessMultiplier:{label:"Length of short axis multiplier",type:"number",minimum:0},modalityIn:{label:"Filter to evaluate only measurements with the specified modalities",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},modalityNotIn:{label:"Filter to evaluate only measurements without the specified modalities",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},locationIn:{label:"Filter to evaluate only measurements with the specified locations",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},locationNotIn:{label:"Filter to evaluate only measurements without the specified locations",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},isNodal:{label:"Filter to evaluate only nodal or extranodal measurements",type:"boolean"},message:{label:"Message to be displayed in case of nonconformity",type:"string"}},anyOf:[{required:["message","longAxis"]},{required:["message","shortAxis"]},{required:["message","longAxisSliceThicknessMultiplier"]},{required:["message","shortAxisSliceThicknessMultiplier"]}]},ia=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(na()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=[],n=this.options,a=n.longAxisSliceThicknessMultiplier,i=n.shortAxisSliceThicknessMultiplier;return e.targets.forEach((function(e){var t=e.metadata,o=e.measurement,s=o.location,u=o.longestDiameter,c=o.shortestDiameter,l=o.isNodal;if(o.childToolsCount){var f=o.bidirectional;u=f&&f.longestDiameter||0,c=f&&f.shortestDiameter||0}var d=t.SliceThickness,p=t.getTagValue("Modality")||"";"boolean"==typeof l&&"boolean"==typeof n.isNodal&&n.isNodal!==l||(n.locationIn&&-1===n.locationIn.indexOf(s)||n.modalityIn&&-1===n.modalityIn.indexOf(p)||n.locationNotIn&&n.locationNotIn.indexOf(s)>-1||n.modalityNotIn&&n.modalityNotIn.indexOf(p)>-1||(n.longAxis&&u<n.longAxis||n.shortAxis&&c<n.shortAxis||a&&!isNaN(d)&&u<a*d||i&&!isNaN(d)&&c<i*d)&&r.push(o))})),r.length&&(t=n.message),this.generateResponse(t,r)}}]),n}(Wn);function oa(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var sa={type:"object",properties:{method:{label:'Specify if it\'s goinig to "allow" or "deny" the modalities',type:"string",enum:["allow","deny"]},measurementTypes:{label:"List of measurement types that will be evaluated",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},modalities:{label:"List of allowed/denied modalities",type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},required:["method","modalities"]},ua=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(oa()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=this.options.measurementTypes||["targets"],n=new Set(this.options.modalities),a=this.options.method,i=[],o=new Set;if(r.forEach((function(t){e[t].forEach((function(e){var t=e.measurement,r=e.metadata.getTagValue("Modality")||"";("allow"===a&&!n.has(r)||"deny"===a&&n.has(r))&&(i.push(t),o.add(r))}))})),i.length){var s=Array.from(o),u=s.join(", "),c=s.length>1?"modalities":"Modality";t="The ".concat(c," ").concat(u," should not be used as a method of measurement")}return this.generateResponse(t,i)}}]),n}(Wn);function ca(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var la={type:"object"},fa=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ca()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=e.nonTargets,n=[];return r.forEach((function(e){var t=e.measurement;"present"!==(t.response||"").toLowerCase()&&n.push(t)})),n.length&&(t='Non-targets can only be assessed as "present"'),this.generateResponse(t,n)}}]),n}(Wn);function da(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var pa={type:"object"},ha=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(da()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(){f()(this,n);for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];return r.call.apply(r,[this].concat(t))}return p()(n,[{key:"evaluate",value:function(e){var t,r=e.targets,n=[];return r.forEach((function(e){var t=e.measurement;"Bidirectional"===t.toolType||t.bidirectional||n.push(t)})),n.length&&(t="Target lesions must have measurements (cannot be assessed as CR, UN/NE, EX)"),this.generateResponse(t,n)}}]),n}(Wn);function ma(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var va=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ma(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ma(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},i),ya=function(){function e(t){var r=this;f()(this,e);var n=this.getCriteriaValidator();if(this.criteria=[],!n(t)){var a="";throw n.errors.forEach((function(e){a+="\noptions".concat(e.dataPath," ").concat(e.message)})),new Error(a)}Object.keys(t).forEach((function(e){var n=t[e],a=va["".concat(e,"Criterion")];(n instanceof Array?n:[n]).forEach((function(t){return r.criteria.push(new a(t,e))}))}))}return p()(e,[{key:"getMaxTargets",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=0;return this.criteria.forEach((function(r){var n=e===!!r.options.newTarget;if(r instanceof va.MaxTargetsCriterion&&n){var a=r.options.limit;a>t&&(t=a)}})),t}},{key:"getCriteriaValidator",value:function(){if(e.criteriaValidator)return e.criteriaValidator;var t={properties:{},definitions:{}};return Object.keys(va).forEach((function(e){if(va[e].prototype instanceof Wn){var r=e.replace(/Criterion$/,""),n="#/definitions/".concat(r);t.definitions[r]=va["".concat(r,"Schema")],t.properties[r]={oneOf:[{$ref:n},{type:"array",items:{$ref:n}}]}}})),e.criteriaValidator=(new Hn.a).compile(t),e.criteriaValidator}},{key:"evaluate",value:function(e){var t=[];return this.criteria.forEach((function(r){var n=r.evaluate(e);n.passed||t.push(n)})),t}}],[{key:"setCriterion",value:function(e,t){va[e]=t}}]),e}(),ga=r(111),ba=r.t(ga,2);function Ia(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var wa=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ia(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ia(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},o),Sa=function(){function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};f()(this,e),this.measurementApi=t,this.timepointApi=r,this.nonconformities=[],this.groupedNonConformities=[],this.maxTargets=null,this.maxNewTargets=null,this.options=n}var t,r;return p()(e,[{key:"loadStudy",value:function(e){if("function"!=typeof this.options.loadStudy)throw new Error("loadStudy callback is not defined");return this.options.loadStudy(null,e)}},{key:"validate",value:(r=Ze()(Ye.a.mark((function e(t){var r,n,a,i,o,s,u,l,f,d,p,h;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=this.getData("baseline"),n=this.getData("followup"),e.next=4,Promise.all([r,n]);case 4:return a=e.sent,i=c()(a,2),o=i[0],s=i[1],(u={targets:[],nonTargets:[]}).targets=u.targets.concat(o.targets),u.targets=u.targets.concat(s.targets),u.nonTargets=u.nonTargets.concat(o.nonTargets),u.nonTargets=u.nonTargets.concat(s.nonTargets),this.maxTargets=null,this.maxNewTargets=null,l=this.validateTimepoint("both",t,u),f=this.validateTimepoint("baseline",t,o),d=this.validateTimepoint("followup",t,s),p=f.concat(d).concat(l),h=this.groupNonConformities(p),this.nonconformities=p,this.groupedNonConformities=h,console.warn("nonconformities"),console.warn(p),console.warn("groupedNonConformities"),console.warn(h),e.abrupt("return",p);case 27:case"end":return e.stop()}}),e,this)}))),function(e){return r.apply(this,arguments)})},{key:"groupNonConformities",value:function(e){var t={},r=this.measurementApi.toolsGroupsMap;return e.forEach((function(e){if(e.isGlobal)return t.globals=t.globals||{messages:[]},void t.globals.messages.push(e.message);e.measurements.forEach((function(n){var a=r[n.toolType];t[a]=t[a]||{measurementNumbers:{}};var i=t[a],o=n.measurementNumber,s=i.measurementNumbers[o];s||(s=i.measurementNumbers[o]={messages:[],measurements:[]}),s.messages.push(e.message),s.measurements.push(n)}))})),t}},{key:"validateTimepoint",value:function(e,t,r){var n=this,a=this.getEvaluators(e,t),i=[];return a.forEach((function(t){var a=t.getMaxTargets(!1),o=t.getMaxTargets(!0);a&&(n.maxTargets=a),o&&(n.maxNewTargets=o);var s=t.evaluate(r);s.length>0&&s.forEach((function(t){t.timepointType=e})),i=i.concat(s)})),i}},{key:"getEvaluators",value:function(e,t){var r=[];console.warn(wa);var n=t.id.toLowerCase(),a=wa[n];if(a){var i=a[e];i&&r.push(new ya(i))}return r}},{key:"getData",value:(t=Ze()(Ye.a.mark((function e(t){var r,n,a,i=this;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r={targets:[],nonTargets:[]},n=[],(a=function(e){i.measurementApi.fetch(e).forEach((function(a){var o=a.StudyInstanceUID,s=a.timepointId,u=s&&i.timepointApi.timepoints.find((function(e){return e.timepointId===s}));if(u&&("both"===t||u.timepointType===t)){var c=i.loadStudy(o);c.then((function(t){r[e].push({measurement:a,metadata:t.getFirstInstance(),timepoint:u})}),(function(e){throw new Error(e)})),n.push(c)}}))})("targets"),a("nonTargets"),e.next=7,Promise.all(n);case 7:return e.abrupt("return",r);case 8:case"end":return e.stop()}}),e)}))),function(e){return t.apply(this,arguments)})}],[{key:"setEvaluationDefinitions",value:function(e,t){wa[e]=t}}]),e}(),Pa=function(e){var t=tt.a.getEnabledElement(e).image.imageId,r=tt.a.metaData.get("instance",t),n=r.StudyInstanceUID,a=r.PatientID,i=r.SeriesInstanceUID,o=r.SOPInstanceUID,s=t.split("&frame"),u=void 0!==s[1]?Number(s[1]):0,c=[n,i,o,u].join("_");return{PatientID:a,StudyInstanceUID:n,SeriesInstanceUID:i,SOPInstanceUID:o,frameIndex:u,imagePath:c}};function Da(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Ea(e){var t=e.eventData,r=e.tool,n=Gn.Instance;n||h.warn("Measurement API is not initialized");var a=t.measurementData,i=t.toolType;if(n.tools[i]&&a&&!a.cancelled){h.info("CornerstoneToolsMeasurementAdded");var o=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Da(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Da(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},a,{},Pa(t.element),{lesionNamingNumber:a.lesionNamingNumber,userId:ne.getUserId(),toolType:i}),s=n.addMeasurement(i,o);Object.assign(a,s);var u=Fn(a);u&&(a.labels=[u]),tt.a.getEnabledElements().forEach((function(e){tt.a.updateImage(e.element)})),Gn.isToolIncluded(r)}}function Oa(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function xa(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Oa(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Oa(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var _a=function(e){var t=e.eventData,r=e.tool,n=(e.toolGroupId,e.toolGroup,Gn.Instance);n||h.warn("Measurement API is not initialized");var a=t.measurementData,i=n.tools[r.parentTool];if(i&&a&&!a.cancelled){h.info("CornerstoneToolsMeasurementAdded");var o=Pa(t.element),s=Object.assign(o,{userId:ne.getUserId()}),u=xa({},a,{},s),c=i.find((function(e){return e.toolType===r.parentTool&&e.PatientID===o.PatientID&&null===e[r.attribute]}));if(c){var l=r.attribute;u.createdAt=new Date,c[l]=u,c.childToolsCount=(c.childToolsCount||0)+1,n.updateMeasurement(r.parentTool,c),a._id=c._id,a.lesionNamingNumber=c.lesionNamingNumber}else{var f={toolType:r.parentTool,lesionNamingNumber:a.lesionNamingNumber,userId:ne.getUserId(),PatientID:o.PatientID,StudyInstanceUID:o.StudyInstanceUID};f[r.attribute]=xa({},a,{},s);var d=n.addMeasurement(r.parentTool,f);Object.assign(a,d)}var p=Fn(a);p&&(a.labels=[p]),tt.a.getEnabledElements().forEach((function(e){tt.a.updateImage(e.element)})),Gn.isToolIncluded(r)}},ka=function(e){var t=e.eventData,r=e.tool,n=(e.toolGroupId,e.toolGroup,Gn.Instance);n||h.warn("Measurement API is not initialized");var a=t.measurementData,i=t.toolType,o=n.tools[i];if(o){h.info("CornerstoneToolsMeasurementModified");var s=o.find((function(e){return e._id===a._id}));s&&((s=Object.assign(s,a)).viewport=tt.a.getViewport(t.element),n.updateMeasurement(i,s),Gn.isToolIncluded(r))}},ja=function(e){var t=e.eventData,r=e.tool,n=(e.toolGroupId,e.toolGroup,Gn.Instance);n||h.warn("Measurement API is not initialized");var a=t.measurementData,i=n.tools[r.parentTool];if(i){h.info("CornerstoneToolsMeasurementModified");var o=i.find((function(e){return e._id===a._id})),s=o&&o[r.attribute];s&&((s=Object.assign(s,a)).viewport=tt.a.getViewport(t.element),o[r.attribute]=s,n.updateMeasurement(r.parentTool,o),Gn.isToolIncluded(r))}};function Ta(e){var t=e.eventData,r=e.tool;e.toolGroupId,e.toolGroup;h.info("CornerstoneToolsMeasurementRemoved");var n=t.measurementData,a=t.toolType,i=t.persist,o=Gn.Instance;o||h.warn("Measurement API is not initialized");var s=o.tools[a];if(s){var u=o.toolsGroupsMap[a],c=s.find((function(e){return e._id===n._id}));c&&(o.deleteMeasurements(a,u,c,i),tt.a.getEnabledElements().forEach((function(e){tt.a.updateImage(e.element)})),Gn.isToolIncluded(r))}}var Ra=function(e){var t=e.eventData,r=e.tool;e.toolGroupId,e.toolGroup;h.info("CornerstoneToolsMeasurementRemoved");var n=t.measurementData,a=t.persist,i=Gn.Instance;i||h.warn("Measurement API is not initialized");var o=i.tools[r.parentTool];if(o){var s=o.findIndex((function(e){return e._id===n._id})),u=s>-1?o[s]:null;u&&(1===u.childToolsCount?(o.splice(s,1),i.onMeasurementRemoved(r.parentTool,u,a)):(u[r.attribute]=null,u.childToolsCount=(u.childToolsCount||0)-1,i.updateMeasurement(r.parentTool,u)),tt.a.getEnabledElements().forEach((function(e){tt.a.updateImage(e.element)})),Gn.isToolIncluded(r))}},Aa=function(e){var t=e.detail;return t.toolName&&(t.toolType=t.toolName),t},Ma={handleSingleMeasurementAdded:Ea,handleChildMeasurementAdded:_a,handleSingleMeasurementModified:ka,handleChildMeasurementModified:ja,handleSingleMeasurementRemoved:Ta,handleChildMeasurementRemoved:Ra,onAdded:function(e){var t=Aa(e),r=t.toolType,n=Gn.getToolConfiguration(r),a=n.toolGroupId,i=n.toolGroup,o=n.tool,s=Cn.getInstance().current();s&&(t.measurementData.timepointId=s.timepointId);var u={eventData:t,tool:o,toolGroupId:a,toolGroup:i};o&&(o.parentTool?_a(u):Ea(u))},onModified:function(e){var t=Aa(e),r=t.toolType,n=Gn.getToolConfiguration(r),a=n.toolGroupId,i=n.toolGroup,o=n.tool,s={eventData:t,tool:o,toolGroupId:a,toolGroup:i};o&&(o.parentTool?ja(s):ka(s))},onRemoved:function(e){var t=Aa(e),r=t.toolType,n=Gn.getToolConfiguration(r),a=n.toolGroupId,i=n.toolGroup,o=n.tool,s={eventData:t,tool:o,toolGroupId:a,toolGroup:i};o&&(o.parentTool?Ra(s):Ta(s))}},Ua=r(11),Na=r.n(Ua),Ca={id:"targets",name:"Targets",childTools:[gn,On,_n,xn],options:{caseProgress:{include:!0,evaluate:!0}}},Fa={id:"nonTargets",name:"Non-Targets",childTools:[Pn],options:{caseProgress:{include:!0,evaluate:!0}}};function La(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Va=Na()([Sn,bn]);Va.forEach((function(e){e.options=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?La(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):La(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},e.options,{caseProgress:{include:!1,evaluate:!1}})}));var qa={id:"temp",name:"Temporary",childTools:Va,options:{caseProgress:{include:!1,evaluate:!1}}},$a=Na()([Ca,Fa,qa]);$a.forEach((function(e){e.childTools.forEach((function(t){t.toolGroup=e.id}))}));var za={TimepointApi:Cn,MeasurementApi:Gn,ConformanceCriteria:Sa,MeasurementHandlers:Ma,ltTools:$a,tools:a,getLabel:Fn,getDescription:Ln,getImageAttributes:Pa,getImageIdForImagePath:Vn},Ga=function(e){return!!st.a.adapters.Cornerstone[e]},Ba=function(e){var t=ot.adapters.Cornerstone.MeasurementReport,r=za.getImageIdForImagePath,n={},a=[];return Object.keys(e).forEach((function(t){e[t].forEach((function(e){var t=e.toolType,i=e.imagePath;if(Ga(t)){var o=r(i);n[o]=n[o]||{},n[o][t]=n[o][t]||{data:[]},n[o][t].data.push(e)}else a.push(t)}))})),a.length>0&&h.warn("[DICOMSR] Tooltypes not supported: ".concat(a.join(", "))),{dataset:t.generateReport(n,tt.a.metaData).dataset}},Ha=function(e){var t=[];return e.forEach((function(e){e.getDisplaySets&&(t=t.concat(e.getDisplaySets()))})),t},Wa=function(){var e=Ze()(Ye.a.mark((function e(t,r,n){var a,i,o,s,u,c,l;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return a={url:n,headers:ae.getAuthorizationHeader()},i=new Ae.DICOMwebClient(a),o=t.getFirstInstance(),s={studyInstanceUID:o.getStudyInstanceUID(),seriesInstanceUID:o.getSeriesInstanceUID(),sopInstanceUID:o.getSOPInstanceUID()},e.next=6,i.retrieveInstance(s);case 6:return u=e.sent,c=Ha(r),l=vn(u,c),e.abrupt("return",l);case 10:case"end":return e.stop()}}),e)})));return function(t,r,n){return e.apply(this,arguments)}}(),Qa=function(){var e=Ze()(Ye.a.mark((function e(t,r){var n,a,i,o,s,u,c,l,f,d,p,h;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=Ba(t),a=n.dataset,i=ot.data,o=i.DicomMetaDictionary,s=i.DicomDict,u={FileMetaInformationVersion:a._meta.FileMetaInformationVersion.Value,MediaStorageSOPClassUID:a.SOPClassUID,MediaStorageSOPInstanceUID:a.SOPInstanceUID,TransferSyntaxUID:"1.2.840.10008.1.2.1",ImplementationClassUID:o.uid(),ImplementationVersionName:"dcmjs-0.0"},c=o.denaturalizeDataset(u),(l=new s(c)).dict=o.denaturalizeDataset(a),f=l.write(),d={url:r,headers:ae.getAuthorizationHeader()},p=new Ae.DICOMwebClient(d),h={datasets:[f]},e.next=12,p.storeInstances(h);case 12:case"end":return e.stop()}}),e)})));return function(t,r){return e.apply(this,arguments)}}(),Ka=function(e){var t=e.getFirstInstance().getData().metadata.SOPClassUID;return["1.2.840.10008.5.1.4.1.1.88.22","1.2.840.10008.5.1.4.1.1.11.1"].includes(t)},Ja=function(e,t){return e._data.SeriesDate>t._data.SeriesDate||e._data.SeriesDate===t._data.SeriesDate&&e._data.SeriesTime>t._data.SeriesTime},Ya=function(e){var t;return e.forEach((function(e){(e.getSeries?e.getSeries():[]).forEach((function(e){e.instances&&e.instances.length&&Ka(e)&&(t&&!Ja(e,t)||(t=e))}))})),t},Xa={retrieveMeasurements:function(e){if(h.info("[DICOMSR] retrieveMeasurements"),!e||"dicomWeb"!==e.type)return h.error("[DICOMSR] DicomWeb server is required!"),Promise.reject({});var t=e.wadoRoot,r=dn.studyMetadataManager.all(),n=Ya(r);return n?Wa(n,r,t):Promise.resolve({})},storeMeasurements:function(){var e=Ze()(Ye.a.mark((function e(t,r,n){var a,i,o,s;return Ye.a.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(h.info("[DICOMSR] storeMeasurements"),n&&"dicomWeb"===n.type){e.next=4;break}return h.error("[DICOMSR] DicomWeb server is required!"),e.abrupt("return",Promise.reject({}));case 4:return a=n.wadoRoot,i=Object.keys(t)[0],o=t[i][0],s=o&&o.StudyInstanceUID,e.prev=8,e.next=11,Qa(t,a);case 11:return s&&Ur.deleteStudyMetadataPromise(s),e.abrupt("return",{message:"Measurements saved successfully"});case 15:throw e.prev=15,e.t0=e.catch(8),h.error("[DICOMSR] Error while saving the measurements: ".concat(e.t0.message)),new Error("Error while saving the measurements.");case 19:case"end":return e.stop()}}),e,null,[[8,15]])})));return function(t,r,n){return e.apply(this,arguments)}}(),isToolSupported:Ga},Za={metadataProvider:Pt};function ei(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ti=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ei()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t,a,i){var o;return f()(this,n),(o=r.call(this,e,i)).init(t,a),o}return p()(n,[{key:"init",value:function(e,t){var r=this.getData();Object.defineProperties(this,{_sopInstanceUID:{configurable:!1,enumerable:!1,writable:!1,value:r.SOPInstanceUID},_study:{configurable:!1,enumerable:!1,writable:!1,value:t},_series:{configurable:!1,enumerable:!1,writable:!1,value:e},_instance:{configurable:!1,enumerable:!1,writable:!1,value:r},_cache:{configurable:!1,enumerable:!1,writable:!1,value:Object.create(null)}})}},{key:"getTagValue",value:function(e,t,r){if(e in this._cache&&!0!==r)return this._cache[e];var n,a=this._instance.metadata;return e in a?n=a[e]:e in this._series?n=this._series[e]:e in this._study&&(n=this._study[e]),void 0!==n?(this._cache[e]=n,n):t}},{key:"tagExists",value:function(e){return e in this._instance.metadata||e in this._series||e in this._study}},{key:"getImageId",value:function(e,t){return null===this._imageId&&(this._imageId=it(this.getData(),e,t)),this._imageId}}]),n}(me);function ri(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ni=function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ri()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t,a){var i;return f()(this,n),(i=r.call(this,e,a)).init(t),i}return p()(n,[{key:"init",value:function(e){var t=this,r=this.getData();Object.defineProperty(this,"_seriesInstanceUID",{configurable:!1,enumerable:!1,writable:!1,value:r.SeriesInstanceUID}),r.instances.forEach((function(n){t.addInstance(new ti(n,r,e))})),this.combinedId=r.SeriesInstanceUID+(r.SubSeriesIndex||"")}},{key:"isSubSeries",value:function(){return this._data.isSubSeries}},{key:"getSeriesDescription",value:function(){return this._data.SeriesDescription}},{key:"getSeriesNumber",value:function(){return this._data.SeriesNumber}},{key:"getCustomSeriesInstanceUID",value:function(){return this.combinedId}}]),n}(ye);function ai(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var ii={Metadata:pe,StudyMetadata:ze,SeriesMetadata:ye,InstanceMetadata:me,OHIFStudyMetadata:function(e){X()(n,e);var t,r=(t=n,function(){var e,r=re()(t);if(ai()){var n=re()(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return ee()(this,e)});function n(e,t){var a;return f()(this,n),(a=r.call(this,e,t)).init(),a}return p()(n,[{key:"init",value:function(){var e=this,t=this.getData();Object.defineProperty(this,"_studyInstanceUID",{configurable:!1,enumerable:!1,writable:!1,value:t.StudyInstanceUID}),t.series.forEach((function(r){sn(r).forEach((function(r){e.addSeries(new ni(r,t))}))}))}}]),n}(ze),OHIFSeriesMetadata:ni,OHIFInstanceMetadata:ti},oi=["1.2.840.10008.5.1.4.1.1.1","1.2.840.10008.5.1.4.1.1.1.1","1.2.840.10008.5.1.4.1.1.1.1.1","1.2.840.10008.5.1.4.1.1.1.2","1.2.840.10008.5.1.4.1.1.1.2.1","1.2.840.10008.5.1.4.1.1.1.3","1.2.840.10008.5.1.4.1.1.1.3.1","1.2.840.10008.5.1.4.1.1.2","1.2.840.10008.5.1.4.1.1.2.1","1.2.840.10008.5.1.4.1.1.2.2","1.2.840.10008.5.1.4.1.1.3.1","1.2.840.10008.5.1.4.1.1.4","1.2.840.10008.5.1.4.1.1.4.1","1.2.840.10008.5.1.4.1.1.4.3","1.2.840.10008.5.1.4.1.1.4.4","1.2.840.10008.5.1.4.1.1.6.1","1.2.840.10008.5.1.4.1.1.7","1.2.840.10008.5.1.4.1.1.7.1","1.2.840.10008.5.1.4.1.1.7.2","1.2.840.10008.5.1.4.1.1.7.3","1.2.840.10008.5.1.4.1.1.7.4","1.2.840.10008.5.1.4.1.1.12.1","1.2.840.10008.5.1.4.1.1.12.1.1","1.2.840.10008.5.1.4.1.1.12.2","1.2.840.10008.5.1.4.1.1.12.2.1","1.2.840.10008.5.1.4.1.1.13.1.1","1.2.840.10008.5.1.4.1.1.13.1.2","1.2.840.10008.5.1.4.1.1.13.1.3","1.2.840.10008.5.1.4.1.1.13.1.4","1.2.840.10008.5.1.4.1.1.13.1.5","1.2.840.10008.5.1.4.1.1.14.1","1.2.840.10008.5.1.4.1.1.14.2","1.2.840.10008.5.1.4.1.1.20","1.2.840.10008.5.1.4.1.1.77.1.1","1.2.840.10008.5.1.4.1.1.77.1.1.1","1.2.840.10008.5.1.4.1.1.77.1.2","1.2.840.10008.5.1.4.1.1.77.1.2.1","1.2.840.10008.5.1.4.1.1.77.1.3","1.2.840.10008.5.1.4.1.1.77.1.4","1.2.840.10008.5.1.4.1.1.77.1.4.1","1.2.840.10008.5.1.4.1.1.77.1.5.1","1.2.840.10008.5.1.4.1.1.77.1.5.2","1.2.840.10008.5.1.4.1.1.77.1.5.4","1.2.840.10008.5.1.4.1.1.77.1.6","1.2.840.10008.5.1.4.1.1.128","1.2.840.10008.5.1.4.1.1.130","1.2.840.10008.5.1.4.1.1.128.1","1.2.840.10008.5.1.4.1.1.481.1"],si=r(19),ui=r.n(si);ui.a.validators.equals=function(e,t,r,n){if(t&&e!==t.value)return"".concat(r,"must equal ").concat(t.value)},ui.a.validators.doesNotEqual=function(e,t,r){if(t&&e===t.value)return"".concat(r,"cannot equal ").concat(t.value)},ui.a.validators.contains=function(e,t,r){if(t&&e.indexOf&&-1===e.indexOf(t.value))return"".concat(r,"must contain ").concat(t.value)},ui.a.validators.doesNotContain=function(e,t,r){if(t&&e.indexOf&&-1!==e.indexOf(t.value))return"".concat(r,"cannot contain ").concat(t.value)},ui.a.validators.startsWith=function(e,t,r){if(t&&e.startsWith&&!e.startsWith(t.value))return"".concat(r,"must start with ").concat(t.value)},ui.a.validators.endsWith=function(e,t,r){if(t&&e.endsWith&&!e.endsWith(t.value))return"".concat(r,"must end with ").concat(t.value)};var ci={};var li=ii.InstanceMetadata,fi=function(e,t){if(!(e instanceof li))throw new ce("HPMatcher::match metadataInstance must be an instance of InstanceMetadata");var r={format:"grouped"},n={passed:[],failed:[]},a=!1,i=0;return t.forEach((function(t){var o=t.attribute;if(Object.prototype.hasOwnProperty.call(ci,o)){var s=ci[o];e.setCustomAttribute(o,s.callback(e))}var u,c=_()({},o,t.constraint),l=e.customAttributeExists(o)?e.getCustomAttribute(o):e.getTagValue(o),f=_()({},o,l);try{u=ui()(f,c,[r])}catch(e){u=["Something went wrong during validation.",e]}u?(t.required&&(a=!0),n.failed.push({rule:t,errorMessages:u})):(i+=parseInt(t.weight,10),n.passed.push({rule:t}))})),a&&(i=0),{score:i,details:n,requiredFailed:a}},di={};var pi=[{id:"equals",name:"= (Equals)",validator:"equals",validatorOption:"value",description:"The attribute must equal this value."},{id:"doesNotEqual",name:"!= (Does not equal)",validator:"doesNotEqual",validatorOption:"value",description:"The attribute must not equal this value."},{id:"contains",name:"Contains",validator:"contains",validatorOption:"value",description:"The attribute must contain this value."},{id:"doesNotContain",name:"Does not contain",validator:"doesNotContain",validatorOption:"value",description:"The attribute must not contain this value."},{id:"startsWith",name:"Starts with",validator:"startsWith",validatorOption:"value",description:"The attribute must start with this value."},{id:"endsWith",name:"Ends with",validator:"endsWith",validatorOption:"value",description:"The attribute must end with this value."},{id:"onlyInteger",name:"Only Integers",validator:"numericality",validatorOption:"onlyInteger",description:"Real numbers won't be allowed."},{id:"greaterThan",name:"> (Greater than)",validator:"numericality",validatorOption:"greaterThan",description:"The attribute has to be greater than this value."},{id:"greaterThanOrEqualTo",name:">= (Greater than or equal to)",validator:"numericality",validatorOption:"greaterThanOrEqualTo",description:"The attribute has to be at least this value."},{id:"lessThanOrEqualTo",name:"<= (Less than or equal to)",validator:"numericality",validatorOption:"lessThanOrEqualTo",description:"The attribute can be this value at the most."},{id:"lessThan",name:"< (Less than)",validator:"numericality",validatorOption:"lessThan",description:"The attribute has to be less than this value."},{id:"odd",name:"Odd",validator:"numericality",validatorOption:"odd",description:"The attribute has to be odd."},{id:"even",name:"Even",validator:"numericality",validatorOption:"even",description:"The attribute has to be even."}];Object.freeze(pi);var hi=/^equals$/,mi=function(){function e(t,r,n,a){f()(this,e),this.id=k(),this.weight=a||1,t&&(this.attribute=t),r&&(this.constraint=r),this.required=void 0!==n&&n,this._constraintInfo=void 0,this._validatorAndValue=void 0}return p()(e,[{key:"fromObject",value:function(e){this.id=e.id||k(),this.required=e.required,this.weight=e.weight,this.attribute=e.attribute,this.constraint=e.constraint}},{key:"getConstraintInfo",value:function(){var e=this._constraintInfo;if(void 0!==e)return e;var t=Object.keys(this.constraint)[0];return void 0!==t&&(e=pi.find((function(e){return t===e.id}))),this._constraintInfo=e,e}},{key:"isRuleForPrior",value:function(){return"abstractPriorValue"===this.attribute}},{key:"getNumberOfPriorsReferenced",value:function(){if(!this.isRuleForPrior())return-1;var e=this.getConstraintValidatorAndValue(),t=e.value,r=e.validator,n=parseInt(t,10)||0;return hi.test(r)?n<0?1:n:0}},{key:"getConstraintValidatorAndValue",value:function(){var e=this._validatorAndValue;if(void 0!==e)return e;var t=this.getConstraintInfo();if(void 0!==t){var r=t.validator,n=this.constraint[r];if(n)e={value:n[t.validatorOption],validator:t.id},this._validatorAndValue=e}return e}}]),e}();function vi(e){return function(){var t,r=re()(e);if(yi()){var n=re()(this).constructor;t=Reflect.construct(r,arguments,n)}else t=r.apply(this,arguments);return ee()(this,t)}}function yi(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(e){return!1}}var gi=function(e){X()(r,e);var t=vi(r);function r(){return f()(this,r),t.apply(this,arguments)}return r}(mi),bi=function(e){X()(r,e);var t=vi(r);function r(){return f()(this,r),t.apply(this,arguments)}return r}(mi),Ii=function(e){X()(r,e);var t=vi(r);function r(){return f()(this,r),t.apply(this,arguments)}return r}(mi),wi=function(e){X()(r,e);var t=vi(r);function r(){return f()(this,r),t.apply(this,arguments)}return r}(mi),Si=function(e,t){return!(!e||!e.length)&&(e.forEach((function(e,n){if(e===t)return r=n,!1})),!!r&&(e.splice(r,1),!0));var r},Pi=function(){function e(t,r){f()(this,e),this.type=t,this.properties=r}return p()(e,[{key:"fromObject",value:function(e){this.type=e.type,this.properties=e.properties}},{key:"getLayoutTemplateName",value:function(){switch(this.type){case"grid":return"gridLayout"}}},{key:"getNumViewports",value:function(){switch(this.type){case"grid":return this.properties.Rows*this.properties.Columns}}}]),e}(),Di=function(){function e(){f()(this,e),this.viewportSettings={},this.imageMatchingRules=[],this.seriesMatchingRules=[],this.studyMatchingRules=[]}return p()(e,[{key:"fromObject",value:function(e){var t=this;e.imageMatchingRules&&e.imageMatchingRules.forEach((function(e){var r=new wi;r.fromObject(e),t.imageMatchingRules.push(r)})),e.seriesMatchingRules&&e.seriesMatchingRules.forEach((function(e){var r=new Ii;r.fromObject(e),t.seriesMatchingRules.push(r)})),e.studyMatchingRules&&e.studyMatchingRules.forEach((function(e){var r=new bi;r.fromObject(e),t.studyMatchingRules.push(r)})),e.viewportSettings&&(this.viewportSettings=e.viewportSettings)}},{key:"removeRule",value:function(e){var t;e instanceof bi?t=this.studyMatchingRules:e instanceof Ii?t=this.seriesMatchingRules:e instanceof wi&&(t=this.imageMatchingRules),Si(t,e)}}]),e}();function Ei(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Oi=function(){function e(t,r){f()(this,e),this.id=k(),this.name=r,this.viewportStructure=t,this.viewports=[],this.createdDate=new Date}return p()(e,[{key:"createClone",value:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Ei(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Ei(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},this),n=new e;return r.id=n.id,n.fromObject(r),t&&(n.name=t),n}},{key:"fromObject",value:function(e){var t=this;this.id=e.id||k(),this.name=e.name,this.viewportStructure=new Pi,this.viewportStructure.fromObject(e.viewportStructure),e.viewports&&e.viewports.forEach((function(e){var r=new Di;r.fromObject(e),t.viewports.push(r)}))}}]),e}();function xi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var _i=function(){function e(t){f()(this,e),this.id=k(),this.locked=!1,this.hasUpdatedPriorsInformation=!1,this.name=t,this.createdDate=new Date,this.modifiedDate=new Date,ne.userLoggedIn&&ne.userLoggedIn()&&(this.createdBy=ne.getUserId(),this.modifiedBy=ne.getUserId()),this.availableTo=new Set,this.editableBy=new Set,this.protocolMatchingRules=[],this.stages=[],this.numberOfPriorsReferenced=-1}return p()(e,[{key:"getNumberOfPriorsReferenced",value:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],t=!0!==e?this.numberOfPriorsReferenced:-1;return t>-1||(t=0,this.stages.forEach((function(e){e.viewports&&e.viewports.forEach((function(e){e.studyMatchingRules&&e.studyMatchingRules.forEach((function(e){var r=e.getNumberOfPriorsReferenced();r>t&&(t=r)}))}))})),this.numberOfPriorsReferenced=t),t}},{key:"updateNumberOfPriorsReferenced",value:function(){this.getNumberOfPriorsReferenced(!0)}},{key:"protocolWasModified",value:function(){ne.userLoggedIn&&ne.userLoggedIn()&&(this.modifiedBy=ne.getUserId()),this.hasUpdatedPriorsInformation=!1,this.updateNumberOfPriorsReferenced(),this.modifiedDate=new Date}},{key:"fromObject",value:function(e){var t=this;this.id=e.id||k(),this.name=e.name,this.locked=!!e.locked,e.protocolMatchingRules&&e.protocolMatchingRules.forEach((function(e){var r=new gi;r.fromObject(e),t.protocolMatchingRules.push(r)})),e.stages&&e.stages.forEach((function(e){var r=new Oi;r.fromObject(e),t.stages.push(r)}))}},{key:"createClone",value:function(t){var r=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?xi(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):xi(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({},this),n=new e;return r.id=n.id,n.fromObject(r),t&&(n.name=t),n.locked=!1,n}},{key:"addStage",value:function(e){this.stages.push(e),this.protocolWasModified()}},{key:"addProtocolMatchingRule",value:function(e){this.protocolMatchingRules.push(e),this.protocolWasModified()}},{key:"removeProtocolMatchingRule",value:function(e){Si(this.protocolMatchingRules,e)&&this.protocolWasModified()}}]),e}();function ki(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var ji=ii.StudyMetadata,Ti=ii.InstanceMetadata,Ri=function(){function e(t,r,n,a){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};if(f()(this,e),this.matchedProtocols=new Map,this.matchedProtocolScores={},!(a instanceof Bt))throw new ce("ProtocolEngine::constructor studyMetadataSource is not an instance of StudyMetadataSource");if(!(r instanceof Array||r.every((function(e){return e instanceof ji}))))throw new ce("ProtocolEngine::constructor studies is not an array or it's items are not instances of StudyMetadata");this.protocolStore=t,this.studies=r,this.priorStudies=n instanceof Map?n:new Map,this.studyMetadataSource=a,this.options=i,this.reset(),this.newStageIds=[]}return p()(e,[{key:"reset",value:function(){var e=this.getBestProtocolMatch();this.setHangingProtocol(e)}},{key:"getCurrentStageModel",value:function(){return this.protocol.stages[this.stage]}},{key:"findMatchByStudy",value:function(e){h.trace("ProtocolEngine::findMatchByStudy");var t=[],r=e.getFirstInstance(),n=this.getNumberOfAvailablePriors(e.getObjectID());return this.protocolStore.getProtocol().forEach((function(e){var a=e.protocolMatchingRules.slice();if(a&&!(e.getNumberOfPriorsReferenced()>n)){var i=fi(r,a).score;i>0&&t.push({score:i,protocol:e})}})),t.length?(t.sort((function(e,t){return t.score-e.score})),h.trace("ProtocolEngine::findMatchByStudy matched",t),t):[{score:1,protocol:this.protocolStore.getProtocol("defaultProtocol")}]}},{key:"_clearMatchedProtocols",value:function(){this.matchedProtocols.clear(),this.matchedProtocolScores={}}},{key:"updateProtocolMatches",value:function(){var e=this;h.trace("ProtocolEngine::updateProtocolMatches"),this._clearMatchedProtocols(),this.studies.forEach((function(t){e.findMatchByStudy(t).forEach((function(t){var r=t.protocol;r&&(e.matchedProtocols.has(r.id)||(h.trace("ProtocolEngine::updateProtocolMatches inserting protocol match",t),e.matchedProtocols.set(r.id,r),e.matchedProtocolScores[r.id]=t.score))}))}))}},{key:"_largestKeyByValue",value:function(e){return Object.keys(e).reduce((function(t,r){return e[t]>e[r]?t:r}))}},{key:"_getHighestScoringProtocol",value:function(){if(!Object.keys(this.matchedProtocolScores).length)return this.protocolStore.getProtocol("defaultProtocol");var e=this._largestKeyByValue(this.matchedProtocolScores);return this.matchedProtocols.get(e)}},{key:"getBestProtocolMatch",value:function(){this.updateProtocolMatches();var e=this._getHighestScoringProtocol();return h.trace("ProtocolEngine::getBestProtocolMatch bestMatch",e),e}},{key:"getNumberOfAvailablePriors",value:function(e){return this.getAvailableStudyPriors(e).length}},{key:"getAvailableStudyPriors",value:function(e){var t=this.priorStudies.get(e);return t instanceof Array?t:[]}},{key:"matchImages",value:function(e,t){var r=this;h.trace("ProtocolEngine::matchImages");var n,a=e.studyMatchingRules,i=e.seriesMatchingRules,o=e.imageMatchingRules,s=[],u=this.studies[0],c=u.getFirstInstance(),l=0,f=0;u.setCustomAttribute("abstractPriorValue",0),c instanceof Ti&&c.setCustomAttribute("abstractPriorValue",0),a.forEach((function(e){if("abstractPriorValue"===e.attribute){var a,i=Object.keys(e.constraint)[0],o=Object.keys(e.constraint[i])[0],s=e.constraint[i][o];if(s=parseInt(s,10),n||(n=r.getAvailableStudyPriors(u.getObjectID())),-1===s)a=n[n.length-1];else{var c=Math.max(s-1,0);a=n[c]}if(!(a instanceof ji))return;var l=a.getObjectID();if(r.studies.find((function(e){return e.getObjectID()===l})))return;r.studyMetadataSource.loadStudy(a).then((function(e){e.setCustomAttribute("abstractPriorValue",s);var n=e.getFirstInstance();n instanceof Ti&&n.setCustomAttribute("abstractPriorValue",s),r.studies.push(e),r.updateViewports(t)}),(function(e){throw h.warn(e),new ce("ProtocolEngine::matchImages could not get study metadata for the Study with the following ObjectID: ".concat(l))}))}})),this.studies.forEach((function(e){var t=fi(e.getFirstInstance(),a);!0===t.requiredFailed||t.score<l||(l=t.score,e.forEachSeries((function(r){var n=fi(r.getFirstInstance(),i);!0===n.requiredFailed||n.score<f||(f=n.score,r.forEachInstance((function(a,i){if((u=a.getTagValue("SOPClassUID"))&&-1!==oi.indexOf(u)||a.getTagValue("Rows")){var u,c=fi(a,o);if(!0!==c.requiredFailed){var l={passed:[],failed:[]};l.passed=l.passed.concat(c.details.passed),l.passed=l.passed.concat(n.details.passed),l.passed=l.passed.concat(t.details.passed),l.failed=l.failed.concat(c.details.failed),l.failed=l.failed.concat(n.details.failed),l.failed=l.failed.concat(t.details.failed);var f=c.score+n.score+t.score,d=a.getSOPInstanceUID(),p={StudyInstanceUID:e.getStudyInstanceUID(),SeriesInstanceUID:r.getSeriesInstanceUID(),SOPInstanceUID:d,currentImageIdIndex:i,matchingScore:f,matchDetails:l,sortingInfo:{score:f,study:a.getTagValue("StudyDate")+a.getTagValue("StudyTime"),series:parseInt(a.getTagValue("SeriesNumber")),instance:parseInt(a.getTagValue("InstanceNumber"))}},h=e.findDisplaySet((function(e){return e.images.find((function(e){return e.getSOPInstanceUID()===d}))}));h&&(p.displaySetInstanceUID=h.getUID(),p.imageId=a.getImageId()),s.push(p)}}})))})))}));var d=en({name:"score",reverse:!0},{name:"study",reverse:!0},{name:"instance"},{name:"series"});s.sort((function(e,t){return d(e.sortingInfo,t.sortingInfo)}));var p=s[0];return h.trace("ProtocolEngine::matchImages bestMatch",p),{bestMatch:p,matchingScores:s}}},{key:"setLayout",value:function(e,t){if(e<1&&t<1)h.error("Invalid layout ".concat(e," x ").concat(t));else if("function"==typeof this.options.setLayout){for(var r=[],n=e*t,a=0;a<n;a++)r.push({});this.options.setLayout({numRows:e,numColumns:t,viewports:r})}else h.error("Hanging Protocol Engine setLayout callback is not defined")}},{key:"updateViewports",value:function(e){var t=this;if(h.trace("ProtocolEngine::updateViewports viewportIndex: ".concat(e)),this.getNumProtocolStages()){var r=this.getCurrentStageModel();if(r&&r.viewportStructure&&r.viewports&&r.viewports.length)if(r.viewportStructure.getLayoutTemplateName()){var n=r.viewportStructure.properties;if(n){var a=[];this.matchDetails=[],r.viewports.forEach((function(e,r){var i=t.matchImages(e,r);t.matchDetails[r]=i;var o={},s=Object.keys(e.viewportSettings);s.forEach((function(t){var r=e.viewportSettings[t];"YES"===r?r=!0:"NO"===r&&(r=!1),o[t]=r}));var u=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ki(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ki(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}({viewportIndex:r,viewport:o},n),c=[];s.forEach((function(t){di[t]&&c.push({id:t,value:e.viewportSettings[t]})})),u.renderedCallback=function(e){c.forEach((function(t){h.trace("ProtocolEngine::currentViewportData.renderedCallback Applying custom setting: ".concat(t.id)),h.trace("ProtocolEngine::currentViewportData.renderedCallback with value: ".concat(t.value)),di[t.id].callback(e,t.value)}))};for(var l=i.bestMatch,f=1,d=i.matchingScores.length;f<d&&a.find((function(e){return e.imageId===l.imageId}));)l=i.matchingScores[f],f++;l&&l.imageId&&(u.StudyInstanceUID=l.StudyInstanceUID,u.SeriesInstanceUID=l.SeriesInstanceUID,u.SOPInstanceUID=l.SOPInstanceUID,u.currentImageIdIndex=l.currentImageIdIndex,u.displaySetInstanceUID=l.displaySetInstanceUID,u.imageId=l.imageId),a.push(u)})),this.setLayout(n.Rows,n.Columns),"function"==typeof this.options.setViewportSpecificData?void 0!==e&&a[e]?this.options.setViewportSpecificData(e,a[e]):a.forEach((function(e){t.options.setViewportSpecificData(e.viewportIndex,e)})):h.error("Hanging Protocol Engine setViewportSpecificData callback is not defined")}}}}},{key:"setHangingProtocol",value:function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];h.trace("ProtocolEngine::setHangingProtocol newProtocol",e),h.trace("ProtocolEngine::setHangingProtocol updateViewports = ".concat(t)),this.newStageIds=[],Object.prototype.isPrototypeOf.call(e,_i)?this.protocol=e:(this.protocol=new _i,this.protocol.fromObject(e)),this.stage=0,t&&this.updateViewports()}},{key:"isNextStageAvailable",value:function(){var e=this.getNumProtocolStages();return this.stage+1<e}},{key:"isPreviousStageAvailable",value:function(){return this.stage-1>=0}},{key:"setCurrentProtocolStage",value:function(e){return!(-1===e&&!this.isPreviousStageAvailable())&&(!(1===e&&!this.isNextStageAvailable())&&(this.stage+=e,h.trace("ProtocolEngine::setCurrentProtocolStage stage = ".concat(this.stage)),this.updateViewports(),!0))}},{key:"getNumProtocolStages",value:function(){if(this.protocol&&this.protocol.stages&&this.protocol.stages.length)return this.protocol.stages.length}},{key:"nextProtocolStage",value:function(){h.trace("ProtocolEngine::nextProtocolStage"),this.setCurrentProtocolStage(1)||h.trace("ProtocolEngine::nextProtocolStage failed")}},{key:"previousProtocolStage",value:function(){h.trace("ProtocolEngine::previousProtocolStage"),this.setCurrentProtocolStage(-1)||h.trace("ProtocolEngine::previousProtocolStage failed")}}]),e}(),Ai=function(){function e(t){f()(this,e),this.strategy=t}return p()(e,[{key:"onReady",value:function(e){this.strategy.onReady(e)}},{key:"getProtocol",value:function(t){var r=this.strategy.getProtocol(t);return e.getProtocolInstance(r)}},{key:"addProtocol",value:function(e){this.strategy.addProtocol(e)}},{key:"updateProtocol",value:function(e,t){this.strategy.updateProtocol(e,t)}},{key:"removeProtocol",value:function(e){this.strategy.removeProtocol(e)}}],[{key:"getProtocolInstance",value:function(e){var t=e;if(t instanceof Array)t.forEach((function(e,r){if(!(e instanceof _i)){var n=new _i;n.fromObject(e),t[r]=n}}));else if(void 0!==t&&!(t instanceof _i)){var r=new _i;r.fromObject(t),t=r}return t}}]),e}();var Mi=function(){var e=new _i("Default");e.id="defaultProtocol",e.locked=!0;var t=new Pi("grid",{Rows:1,Columns:1}),r=new Di,n=new Oi(t,"oneByOne");return n.viewports.push(r),e.stages.push(n),e}(),Ui={ProtocolEngine:Ri,ProtocolStore:Ai,ProtocolStrategy:function(){function e(){f()(this,e),this.hangingProtocols=new Map,this.defaultsAdded=!1}return p()(e,[{key:"onReady",value:function(e){this.defaultsAdded||(h.info("Inserting the default hanging protocol..."),this.addProtocol(Mi),this.defaultsAdded=!0),e()}},{key:"getProtocol",value:function(e){return e?this.hangingProtocols.get(e):Array.from(this.hangingProtocols.values())}},{key:"addProtocol",value:function(e){this.hangingProtocols.set(e.id,e)}},{key:"updateProtocol",value:function(e,t){this.hangingProtocols.has(e)&&this.hangingProtocols.set(e,t)}},{key:"removeProtocol",value:function(e){this.hangingProtocols.has(e)&&this.hangingProtocols.delete(e)}}]),e}(),addCustomAttribute:function(e,t,r){ci[e]={name:t,callback:r}},addCustomViewportSetting:function(e,t,r,n){di[e]={id:e,text:t,options:r,callback:n}}},Ni={};var Ci={getNestedObject:function(e){var t={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r))for(var n=e[r],a=r.split("."),i=t;a.length;){var o=a.shift();a.length?(i[o]||(i[o]={}),i=i[o]):i[o]=n}return t},getShallowObject:function(e){var t={};return function e(t,r,n){for(var a in r)if(Object.prototype.hasOwnProperty.call(r,a)){var i=t?"".concat(t,".").concat(a):a,o=r[a];"object"===L()(o)?(o instanceof Array&&(i+="[]"),e(i,o,n)):n[i]=o}}("",e,t),t}},Fi={setViewportActive:function(e){return{type:"VIEWPORT::SET_ACTIVE",viewportIndex:e}},setViewportSpecificData:function(e,t){return{type:"VIEWPORT::SET",viewportIndex:e,viewportSpecificData:t}},setViewportLayoutAndData:function(e,t){return{type:"VIEWPORT::SET_VIEWPORT_LAYOUT_AND_DATA",numRows:e.numRows,numColumns:e.numColumns,viewports:e.viewports,viewportSpecificData:t}},setLayout:function(e){return{type:"VIEWPORT::SET_LAYOUT",numRows:e.numRows,numColumns:e.numColumns,viewports:e.viewports}},clearViewportSpecificData:function(e){return{type:"VIEWPORT::CLEAR",viewportIndex:e}},setActiveViewportSpecificData:function(e){return{type:"VIEWPORT::SET_ACTIVE_SPECIFIC_DATA",viewportSpecificData:e}},setEnlargeViewport:function(e){return{type:"VIEWPORT::SET_ENLARGE_VIEWPORT",viewportIndex:e}},clearEnlargeViewport:function(e){return{type:"VIEWPORT::CLEAR_ENLARGE_VIEWPORT",viewportIndex:e}},setStudyLoadingProgress:function(e,t){return{type:"SET_STUDY_LOADING_PROGRESS",progressId:e,progressData:t}},clearStudyLoadingProgress:function(e){return{type:"CLEAR_STUDY_LOADING_PROGRESS",progressId:e}},setUserPreferences:function(e){return{type:"SET_USER_PREFERENCES",state:e}},setExtensionData:function(e,t){return{type:"SET_EXTENSION_DATA",extension:e,data:t}},setTimepoints:function(e){return{type:"SET_TIMEPOINTS",state:e}},setMeasurements:function(e){return{type:"SET_MEASUREMENTS",state:e}},setStudyData:function(e,t){return{type:"SET_STUDY_DATA",StudyInstanceUID:e,data:t}},setServers:function(e){return{type:"SET_SERVERS",servers:e}}};function Li(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Vi(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Li(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Li(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var qi={},$i=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:qi,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_EXTENSION_DATA":var r=t.extension,n=e[r]||{},a=t.data,i=_()({},r,Vi({},n,{},a));return Vi({},e,{},i);default:return e}};function zi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Gi(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?zi(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):zi(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Bi={progress:{},lastUpdated:null},Hi=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Bi,r=arguments.length>1?arguments[1]:void 0;switch(r.type){case"SET_STUDY_LOADING_PROGRESS":return(e=Na()(t).progress)[r.progressId]=r.progressData,Gi({},t,{progress:e,lastUpdated:(new Date).getTime()});case"CLEAR_STUDY_LOADING_PROGRESS":return delete(e=Na()(t).progress)[r.progressId],Gi({},t,{progress:e,lastUpdated:(new Date).getTime()});default:return t}};function Wi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Qi(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Wi(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Wi(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var Ki={windowLevelData:{1:{description:"Soft tissue",window:"550",level:"40"},2:{description:"Lung",window:"150",level:"-600"},3:{description:"Liver",window:"150",level:"90"},4:{description:"Bone",window:"2500",level:"480"},5:{description:"Brain",window:"80",level:"40"},6:{description:"Trest",window:"1",level:"1"},7:{description:"",window:"",level:""},8:{description:"",window:"",level:""},9:{description:"",window:"",level:""},10:{description:"",window:"",level:""}},generalPreferences:{}},Ji=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Ki,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_USER_PREFERENCES":return Qi({},e,{},t.state);default:return e}},Yi=r(67),Xi=r.n(Yi);function Zi(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function eo(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Zi(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Zi(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var to={servers:[]},ro=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:to,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"ADD_SERVER":var r=Xi()([].concat($()(e.servers),[t.server]),"id");return r.forEach((function(e){return e.active=!0})),eo({},e,{servers:r});case"ACTIVATE_SERVER":var n=eo({},t.server,{active:!0}),a=e.servers;return a.forEach((function(e){return e.active=!1})),eo({},e,{servers:Xi()([].concat($()(a),[n]),"wadoRoot")});case"SET_SERVERS":return eo({},e,{servers:t.servers});default:return e}};function no(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function ao(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?no(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):no(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var io={studyData:{}},oo=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:io,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_STUDY_DATA":var r=Na()(e).studyData;return r[t.StudyInstanceUID]=t.data,ao({},e,{studyData:r});default:return e}};function so(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function uo(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?so(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):so(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var co={timepoints:[],measurements:[]},lo=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:co,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case"SET_TIMEPOINTS":return uo({},e,{timepoints:t.state});case"SET_MEASUREMENTS":return uo({},e,{measurements:t.state});default:return e}},fo=r(110),po=r.n(fo);function ho(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function mo(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ho(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ho(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var vo={numRows:1,numColumns:1,activeViewportIndex:0,layout:{viewports:[{}]},viewportSpecificData:{}},yo=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=e*t,a=Na()(r);return n<Object.keys(a).length&&Object.keys(a).forEach((function(e){e>n-1&&delete a[e]})),a},go=function(e,t,r){return r>e*t-1?vo.activeViewportIndex:r},bo={reducers:{extensions:$i,loading:Hi,preferences:Ji,servers:ro,studies:oo,timepointManager:lo,viewports:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:vo,t=arguments.length>1?arguments[1]:void 0,r=!1;switch(t.type){case"VIEWPORT::SET_ACTIVE":var n=go(e.numRows,e.numColumns,t.viewportIndex);return mo({},e,{activeViewportIndex:n});case"VIEWPORT::SET_LAYOUT":var a=t.numRows,i=t.numColumns,o=yo(a,i,e.viewportSpecificData),s=go(a,i,e.activeViewportIndex);return mo({},e,{numRows:t.numRows,numColumns:t.numColumns,layout:{viewports:$()(t.viewports)},viewportSpecificData:o,activeViewportIndex:s});case"VIEWPORT::SET_VIEWPORT_LAYOUT_AND_DATA":var u=t.numRows,c=t.numColumns,l=yo(u,c,t.viewportSpecificData),f=go(u,c,e.activeViewportIndex);return mo({},e,{numRows:t.numRows,numColumns:t.numColumns,layout:{viewports:$()(t.viewports)},viewportSpecificData:l,activeViewportIndex:f});case"VIEWPORT::SET":var d=Na()(e.layout),p=Na()(e.viewportSpecificData);return p[t.viewportIndex]=po()({},p[t.viewportIndex],t.viewportSpecificData),t.viewportSpecificData&&t.viewportSpecificData.plugin&&!d.viewports[t.viewportIndex].plugin&&(d.viewports[t.viewportIndex].plugin=t.viewportSpecificData.plugin),mo({},e,{layout:d,viewportSpecificData:p});case"VIEWPORT::SET_ENLARGE_VIEWPORT":var h=t.viewportIndex,m=Na()(e.viewportSpecificData);return m[h].enlarging=!0,mo({},e,{viewportSpecificData:m});case"VIEWPORT::CLEAR_ENLARGE_VIEWPORT":var v=t.viewportIndex,y=Na()(e.viewportSpecificData);return y[v].enlarging=!1,mo({},e,{viewportSpecificData:y});case"VIEWPORT::SET_ACTIVE_SPECIFIC_DATA":r=!0;case"VIEWPORT::SET_SPECIFIC_DATA":var g=Na()(e.layout),b=r?e.activeViewportIndex:t.viewportIndex,I=Na()(e.viewportSpecificData);return I[b]=mo({},t.viewportSpecificData),t.viewportSpecificData&&t.viewportSpecificData.plugin&&(g.viewports[b].plugin=t.viewportSpecificData.plugin),mo({},e,{layout:g,viewportSpecificData:I});case"VIEWPORT::CLEAR":var w=Na()(e.viewportSpecificData);return t.viewportIndex?(w[t.viewportIndex]={},mo({},e,{viewportSpecificData:w})):vo;default:return e}}},actions:Fi};function Io(e){return e instanceof Object||"object"===L()(e)&&null!==e}function wo(e){return"string"==typeof e}var So={search:function e(t,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],i=new RegExp(r.trim(),"i");return Object.keys(t).forEach((function(o){var s=t[o];if(s){var u=wo(n)?s[n]:s;wo(u)&&i.test(u)&&a.push(s),Io(s)&&e(s,r,n,a)}})),a},encodeId:function(e){var t=e&&e.toString?e.toString():e;return""===t||"string"!=typeof t?"_":t.replace(/[^a-zA-Z0-9-]/g,(function(e){return"_".concat(e[0].charCodeAt(0).toString(16),"_")}))}};function Po(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}var Do={getScrollbarSize:function(){var e=document.createElement("p");e.style.width="100%",e.style.height="100%";var t=document.createElement("div");t.style.position="absolute",t.style.top="0px",t.style.left="0px",t.style.visibility="hidden",t.style.width="100px",t.style.height="100px",t.style.overflow="hidden",t.appendChild(e),document.body.appendChild(t);var r=e.offsetWidth,n=e.offsetHeight;t.style.overflow="scroll";var a=e.offsetWidth,i=e.offsetHeight;return r===a&&(a=t.clientWidth),n===i&&(i=t.clientHeight),document.body.removeChild(t),[r-a,n-i]},getOffset:function(e){var t=0,r=0;if(e.offsetParent)do{r+=e.offsetLeft,t+=e.offsetTop}while(e=e.offsetParent);return{left:r,top:t}},isCharacterKeyPress:function(e){return void 0===e.which||"number"==typeof e.which&&e.which>0&&(!e.ctrlKey&&!e.metaKey&&!e.altKey&&8!==e.which)},handleError:function(e){var t=e.title,r=e.message;t||e instanceof Error&&(t=e.name),r||e instanceof Error&&(r=e.message),function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?Po(Object(r),!0).forEach((function(t){_()(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):Po(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}}({title:t,message:r,class:"themed",hideConfirm:!0,cancelLabel:"Dismiss",cancelClass:"btn-secondary"},e||{}),h.error(e)}},Eo={MODULE_TYPES:s,CommandsManager:V,ExtensionManager:m,HotkeysManager:Q,ServicesManager:v,utils:dn,hotkeys:B,studies:Ur,redux:bo,classes:xr,metadata:ii,header:Ni,cornerstone:Za,string:So,ui:Do,user:ne,object:Ci,log:h,DICOMWeb:ae,DICOMSR:Xa,viewer:{},measurements:za,hangingProtocols:Ui,UINotificationService:I,UIModalService:P,UIDialogService:O,MeasurementService:C};t.default=Eo},,,,,,,function(e,t){e.exports=i}])}));
//# sourceMappingURL=index.umd.js.map