(function(){/*

 Copyright The Closure Library Authors.
 SPDX-License-Identifier: Apache-2.0
*/
var aa="function"==typeof Object.defineProperties?Object.defineProperty:function(a,b,c){if(a==Array.prototype||a==Object.prototype)return a;a[b]=c.value;return a};function ba(a){a=["object"==typeof globalThis&&globalThis,a,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var b=0;b<a.length;++b){var c=a[b];if(c&&c.Math==Math)return c}throw Error("Cannot find global object");}var ca=ba(this);
function l(a,b){if(b)a:{var c=ca;a=a.split(".");for(var d=0;d<a.length-1;d++){var e=a[d];if(!(e in c))break a;c=c[e]}a=a[a.length-1];d=c[a];b=b(d);b!=d&&null!=b&&aa(c,a,{configurable:!0,writable:!0,value:b})}}l("globalThis",function(a){return a||ca});function da(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[Symbol.iterator]=function(){return e};return e}
l("Array.prototype.values",function(a){return a?a:function(){return da(this,function(b,c){return c})}});l("Object.entries",function(a){return a?a:function(b){var c=[],d;for(d in b)Object.prototype.hasOwnProperty.call(b,d)&&c.push([d,b[d]]);return c}});
l("Object.fromEntries",function(a){return a?a:function(b){var c={};if(!(Symbol.iterator in b))throw new TypeError(""+b+" is not iterable");b=b[Symbol.iterator].call(b);for(var d=b.next();!d.done;d=b.next()){d=d.value;if(Object(d)!==d)throw new TypeError("iterable for fromEntries should yield objects");c[d[0]]=d[1]}return c}});var m=this||self;
function ea(a,b){a=a.split(".");var c=m;a[0]in c||"undefined"==typeof c.execScript||c.execScript("var "+a[0]);for(var d;a.length&&(d=a.shift());)a.length||void 0===b?c=c[d]&&c[d]!==Object.prototype[d]?c[d]:c[d]={}:c[d]=b}function fa(a){var b=typeof a;b="object"!=b?b:a?Array.isArray(a)?"array":b:"null";return"array"==b||"object"==b&&"number"==typeof a.length}function ha(a){var b=typeof a;return"object"==b&&null!=a||"function"==b}var ia="closure_uid_"+(1E9*Math.random()>>>0),ja=0;
function ka(a,b,c){return a.call.apply(a.bind,arguments)}function la(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}}function ma(a,b,c){ma=Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?ka:la;return ma.apply(null,arguments)}
function na(a,b){function c(){}c.prototype=b.prototype;a.ce=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.Yd=function(d,e,f){for(var g=Array(arguments.length-2),h=2;h<arguments.length;h++)g[h-2]=arguments[h];return b.prototype[e].apply(d,g)}};function oa(a){if(m.Mc)return m.Mc(a);try{const b=new XMLHttpRequest;b.open("get",a,!1);b.send();return 0==b.status||200==b.status?b.responseText:null}catch(b){return null}}function pa(a){return a&&a.includes("file:///")?a.substr(8):a}m.Lc||(m.Lc=function(a,b){a=pa(a);b?eval(b):(b=oa(a),eval(b));return!0});function p(a,b){if(Error.captureStackTrace)Error.captureStackTrace(this,p);else{const c=Error().stack;c&&(this.stack=c)}a&&(this.message=String(a));void 0!==b&&(this.cause=b)}na(p,Error);p.prototype.name="CustomError";function qa(a,b){a=a.split("%s");let c="";const d=a.length-1;for(let e=0;e<d;e++)c+=a[e]+(e<b.length?b[e]:"%s");p.call(this,c+a[d])}na(qa,p);qa.prototype.name="AssertionError";function ra(a){throw a;}function sa(a,b){ra(new qa("Failure"+(a?": "+a:""),Array.prototype.slice.call(arguments,1)))};function q(a){for(var b=[],c=0;c<a.length;c+=2)b.push(parseInt(a.substring(c,c+2),16));return b}function ta(a,b){for(var c=[],d=0;d<a.length;d++)c.push(a[d]^b[d]);return c};function t(a){this.Ma=a;this.J=this.Ma.length/4;this.ja=this.J+6;this.O=[[],[],[],[]];this.ya=[[],[],[],[]];this.H=Array(u*(this.ja+1));for(a=0;a<this.J;a++)this.H[a]=[this.Ma[4*a],this.Ma[4*a+1],this.Ma[4*a+2],this.Ma[4*a+3]];var b=Array(4);for(a=this.J;a<u*(this.ja+1);a++){b[0]=this.H[a-1][0];b[1]=this.H[a-1][1];b[2]=this.H[a-1][2];b[3]=this.H[a-1][3];if(0==a%this.J){var c=b,d=c[0];c[0]=c[1];c[1]=c[2];c[2]=c[3];c[3]=d;ua(b);b[0]^=v[a/this.J][0];b[1]^=v[a/this.J][1];b[2]^=v[a/this.J][2];b[3]^=v[a/
this.J][3]}else 6<this.J&&4==a%this.J&&ua(b);this.H[a]=Array(4);this.H[a][0]=this.H[a-this.J][0]^b[0];this.H[a][1]=this.H[a-this.J][1]^b[1];this.H[a][2]=this.H[a-this.J][2]^b[2];this.H[a][3]=this.H[a-this.J][3]^b[3]}}t.prototype.za=16;var u=t.prototype.za/4;
t.prototype.encrypt=function(a){va(this,a);w(this,0);for(a=1;a<this.ja;++a){x(this,y);wa(this);for(var b=this.O,c=this.ya[0],d=0;4>d;d++)c[0]=b[0][d],c[1]=b[1][d],c[2]=b[2][d],c[3]=b[3][d],b[0][d]=z[c[0]]^xa[c[1]]^c[2]^c[3],b[1][d]=c[0]^z[c[1]]^xa[c[2]]^c[3],b[2][d]=c[0]^c[1]^z[c[2]]^xa[c[3]],b[3][d]=xa[c[0]]^c[1]^c[2]^z[c[3]];w(this,a)}x(this,y);wa(this);w(this,this.ja);return ya(this)};
t.prototype.decrypt=function(a){va(this,a);w(this,this.ja);for(a=1;a<this.ja;++a){za(this);x(this,Aa);w(this,this.ja-a);for(var b=this.O,c=this.ya[0],d=0;4>d;d++)c[0]=b[0][d],c[1]=b[1][d],c[2]=b[2][d],c[3]=b[3][d],b[0][d]=Ba[c[0]]^Ca[c[1]]^Da[c[2]]^Ea[c[3]],b[1][d]=Ea[c[0]]^Ba[c[1]]^Ca[c[2]]^Da[c[3]],b[2][d]=Da[c[0]]^Ea[c[1]]^Ba[c[2]]^Ca[c[3]],b[3][d]=Ca[c[0]]^Da[c[1]]^Ea[c[2]]^Ba[c[3]]}za(this);x(this,Aa);w(this,0);return ya(this)};
function va(a,b){for(var c,d=0;d<u;d++)for(var e=0;4>e;e++)c=4*e+d,c=b[c],a.O[d][e]=c}function ya(a){for(var b=[],c=0;c<u;c++)for(var d=0;4>d;d++)b[4*d+c]=a.O[c][d];return b}function w(a,b){for(var c=0;4>c;c++)for(var d=0;4>d;d++)a.O[c][d]^=a.H[4*b+d][c]}function x(a,b){for(var c=0;4>c;c++)for(var d=0;4>d;d++)a.O[c][d]=b[a.O[c][d]]}function wa(a){for(var b=1;4>b;b++)for(var c=0;4>c;c++)a.ya[b][c]=a.O[b][c];for(b=1;4>b;b++)for(c=0;4>c;c++)a.O[b][c]=a.ya[b][(c+b)%u]}
function za(a){for(var b=1;4>b;b++)for(var c=0;4>c;c++)a.ya[b][(c+b)%u]=a.O[b][c];for(b=1;4>b;b++)for(c=0;4>c;c++)a.O[b][c]=a.ya[b][c]}function ua(a){a[0]=y[a[0]];a[1]=y[a[1]];a[2]=y[a[2]];a[3]=y[a[3]]}
var y=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,
61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],Aa=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,
255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,
26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],v=[[0,0,0,0],[1,0,0,0],[2,0,0,0],[4,0,0,0],[8,0,0,0],[16,0,0,0],[32,0,0,0],[64,0,0,0],[128,0,0,0],[27,0,0,0],[54,0,0,0]],z=[0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,
34,36,38,40,42,44,46,48,50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,160,162,164,166,168,170,172,174,176,178,180,182,184,186,188,190,192,194,196,198,200,202,204,206,208,210,212,214,216,218,220,222,224,226,228,230,232,234,236,238,240,242,244,246,248,250,252,254,27,25,31,29,19,17,23,21,11,9,15,13,3,1,7,5,59,57,63,61,51,49,55,53,43,41,47,45,35,33,39,37,
91,89,95,93,83,81,87,85,75,73,79,77,67,65,71,69,123,121,127,125,115,113,119,117,107,105,111,109,99,97,103,101,155,153,159,157,147,145,151,149,139,137,143,141,131,129,135,133,187,185,191,189,179,177,183,181,171,169,175,173,163,161,167,165,219,217,223,221,211,209,215,213,203,201,207,205,195,193,199,197,251,249,255,253,243,241,247,245,235,233,239,237,227,225,231,229],xa=[0,3,6,5,12,15,10,9,24,27,30,29,20,23,18,17,48,51,54,53,60,63,58,57,40,43,46,45,36,39,34,33,96,99,102,101,108,111,106,105,120,123,126,
125,116,119,114,113,80,83,86,85,92,95,90,89,72,75,78,77,68,71,66,65,192,195,198,197,204,207,202,201,216,219,222,221,212,215,210,209,240,243,246,245,252,255,250,249,232,235,238,237,228,231,226,225,160,163,166,165,172,175,170,169,184,187,190,189,180,183,178,177,144,147,150,149,156,159,154,153,136,139,142,141,132,135,130,129,155,152,157,158,151,148,145,146,131,128,133,134,143,140,137,138,171,168,173,174,167,164,161,162,179,176,181,182,191,188,185,186,251,248,253,254,247,244,241,242,227,224,229,230,239,
236,233,234,203,200,205,206,199,196,193,194,211,208,213,214,223,220,217,218,91,88,93,94,87,84,81,82,67,64,69,70,79,76,73,74,107,104,109,110,103,100,97,98,115,112,117,118,127,124,121,122,59,56,61,62,55,52,49,50,35,32,37,38,47,44,41,42,11,8,13,14,7,4,1,2,19,16,21,22,31,28,25,26],Ea=[0,9,18,27,36,45,54,63,72,65,90,83,108,101,126,119,144,153,130,139,180,189,166,175,216,209,202,195,252,245,238,231,59,50,41,32,31,22,13,4,115,122,97,104,87,94,69,76,171,162,185,176,143,134,157,148,227,234,241,248,199,206,
213,220,118,127,100,109,82,91,64,73,62,55,44,37,26,19,8,1,230,239,244,253,194,203,208,217,174,167,188,181,138,131,152,145,77,68,95,86,105,96,123,114,5,12,23,30,33,40,51,58,221,212,207,198,249,240,235,226,149,156,135,142,177,184,163,170,236,229,254,247,200,193,218,211,164,173,182,191,128,137,146,155,124,117,110,103,88,81,74,67,52,61,38,47,16,25,2,11,215,222,197,204,243,250,225,232,159,150,141,132,187,178,169,160,71,78,85,92,99,106,113,120,15,6,29,20,43,34,57,48,154,147,136,129,190,183,172,165,210,
219,192,201,246,255,228,237,10,3,24,17,46,39,60,53,66,75,80,89,102,111,116,125,161,168,179,186,133,140,151,158,233,224,251,242,205,196,223,214,49,56,35,42,21,28,7,14,121,112,107,98,93,84,79,70],Ca=[0,11,22,29,44,39,58,49,88,83,78,69,116,127,98,105,176,187,166,173,156,151,138,129,232,227,254,245,196,207,210,217,123,112,109,102,87,92,65,74,35,40,53,62,15,4,25,18,203,192,221,214,231,236,241,250,147,152,133,142,191,180,169,162,246,253,224,235,218,209,204,199,174,165,184,179,130,137,148,159,70,77,80,91,
106,97,124,119,30,21,8,3,50,57,36,47,141,134,155,144,161,170,183,188,213,222,195,200,249,242,239,228,61,54,43,32,17,26,7,12,101,110,115,120,73,66,95,84,247,252,225,234,219,208,205,198,175,164,185,178,131,136,149,158,71,76,81,90,107,96,125,118,31,20,9,2,51,56,37,46,140,135,154,145,160,171,182,189,212,223,194,201,248,243,238,229,60,55,42,33,16,27,6,13,100,111,114,121,72,67,94,85,1,10,23,28,45,38,59,48,89,82,79,68,117,126,99,104,177,186,167,172,157,150,139,128,233,226,255,244,197,206,211,216,122,113,
108,103,86,93,64,75,34,41,52,63,14,5,24,19,202,193,220,215,230,237,240,251,146,153,132,143,190,181,168,163],Da=[0,13,26,23,52,57,46,35,104,101,114,127,92,81,70,75,208,221,202,199,228,233,254,243,184,181,162,175,140,129,150,155,187,182,161,172,143,130,149,152,211,222,201,196,231,234,253,240,107,102,113,124,95,82,69,72,3,14,25,20,55,58,45,32,109,96,119,122,89,84,67,78,5,8,31,18,49,60,43,38,189,176,167,170,137,132,147,158,213,216,207,194,225,236,251,246,214,219,204,193,226,239,248,245,190,179,164,169,
138,135,144,157,6,11,28,17,50,63,40,37,110,99,116,121,90,87,64,77,218,215,192,205,238,227,244,249,178,191,168,165,134,139,156,145,10,7,16,29,62,51,36,41,98,111,120,117,86,91,76,65,97,108,123,118,85,88,79,66,9,4,19,30,61,48,39,42,177,188,171,166,133,136,159,146,217,212,195,206,237,224,247,250,183,186,173,160,131,142,153,148,223,210,197,200,235,230,241,252,103,106,125,112,83,94,73,68,15,2,21,24,59,54,33,44,12,1,22,27,56,53,34,47,100,105,126,115,80,93,74,71,220,209,198,203,232,229,242,255,180,185,174,
163,128,141,154,151],Ba=[0,14,28,18,56,54,36,42,112,126,108,98,72,70,84,90,224,238,252,242,216,214,196,202,144,158,140,130,168,166,180,186,219,213,199,201,227,237,255,241,171,165,183,185,147,157,143,129,59,53,39,41,3,13,31,17,75,69,87,89,115,125,111,97,173,163,177,191,149,155,137,135,221,211,193,207,229,235,249,247,77,67,81,95,117,123,105,103,61,51,33,47,5,11,25,23,118,120,106,100,78,64,82,92,6,8,26,20,62,48,34,44,150,152,138,132,174,160,178,188,230,232,250,244,222,208,194,204,65,79,93,83,121,119,
101,107,49,63,45,35,9,7,21,27,161,175,189,179,153,151,133,139,209,223,205,195,233,231,245,251,154,148,134,136,162,172,190,176,234,228,246,248,210,220,206,192,122,116,102,104,66,76,94,80,10,4,22,24,50,60,46,32,236,226,240,254,212,218,200,198,156,146,128,142,164,170,184,182,12,2,16,30,52,58,40,38,124,114,96,110,68,74,88,86,55,57,43,37,15,1,19,29,71,73,91,85,127,113,99,109,215,217,203,197,239,225,243,253,167,169,187,181,159,145,131,141];const Fa=Array.prototype.indexOf?function(a,b){return Array.prototype.indexOf.call(a,b,void 0)}:function(a,b){if("string"===typeof a)return"string"!==typeof b||1!=b.length?-1:a.indexOf(b,0);for(let c=0;c<a.length;c++)if(c in a&&a[c]===b)return c;return-1},Ga=Array.prototype.forEach?function(a,b){Array.prototype.forEach.call(a,b,void 0)}:function(a,b){const c=a.length,d="string"===typeof a?a.split(""):a;for(let e=0;e<c;e++)e in d&&b.call(void 0,d[e],e,a)};
function Ha(a){const b=a.length;if(0<b){const c=Array(b);for(let d=0;d<b;d++)c[d]=a[d];return c}return[]}function Ia(a,b){for(let c=1;c<arguments.length;c++){const d=arguments[c];if(fa(d)){const e=a.length||0,f=d.length||0;a.length=e+f;for(let g=0;g<f;g++)a[e+g]=d[g]}else a.push(d)}};function Ja(a){this.ta=a}Ja.prototype.encrypt=function(a,b){var c=[],d=b;for(b=0;b<a.length;b+=this.ta.za)d=ta(Array.prototype.slice.call(a,b,b+this.ta.za),d),d=this.ta.encrypt(d),Ia(c,d);return c};Ja.prototype.decrypt=function(a,b){for(var c=[],d=0,e=b;d<a.length;){b=Array.prototype.slice.call(a,d,d+this.ta.za);var f=this.ta.decrypt(b);e=ta(e,f);Ia(c,e);e=b;d+=this.ta.za}return c};var Ka=q("343ebcf014a7e244ba703229647cf607"),La=q("429ab6bc5b161fb66503db4b4b7e310b"),Ma=q("410f951a7436c2bcae986399fe12d772"),Na=q("b3ee0a61544dc2e8b07cfc41277893ac");function Oa(a,b,c){const [d,e]=a.split(":");var f=q(e);a=parseInt(d,10);b=new t(b);c=(new Ja(b)).decrypt(f,c);c=a?c.slice(0,-a):c;for(b=a=0;a<c.length;)f=c[a++],128>f||(191<f&&224>f?a++:239<f&&365>f?(a++,a++,a++,b++):(a++,a++)),b++};function A(a,b,c){if(void 0!==c&&("object"!==typeof c||null===c))throw Error("Export target must be an object");c=c||globalThis;a=a.split(".");for(let d=0;d<a.length-1;d++){const e=a[d];if(["__proto__","constructor","prototype"].includes(e))throw Error(`Property name "${e}" is not allowed`);c[e]&&"object"===typeof c[e]||(c[e]={});c=c[e]}c[a[a.length-1]]=b};var Pa=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Qa=/&/g,Ra=/</g,Sa=/>/g,Ta=/"/g,Ua=/'/g,Va=/\x00/g,Wa=/[\x00&<>"']/;function Xa(){var a=m.navigator;return a&&(a=a.userAgent)?a:""}function B(a){return-1!=Xa().indexOf(a)};var Ya=B("Opera"),Za=B("Gecko")&&!(-1!=Xa().toLowerCase().indexOf("webkit")&&!B("Edge"))&&!(B("Trident")||B("MSIE"))&&!B("Edge"),$a=-1!=Xa().toLowerCase().indexOf("webkit")&&!B("Edge");var ab=B("Firefox")||B("FxiOS");let bb=()=>!1;function cb(a){a&&("function"===typeof a.Jc&&a.Jc(),a.disposed=!0)}function db(a,b){bb()&&(b?m.console.error(a):m.console.warn(a))}function eb(a,b){const c=a.stack||a.toString();0>String(c).indexOf(a.message)&&db(a.message,b);db(c,b)}window.onerror=function(...a){const [b,,,,c]=a;c?eb(c,!0):db(b,!0);return!0};ra=a=>{try{throw Error(a.message);}catch(b){eb(b,!1)}};
m.console||(window._log="",m.console={log:function(a){window._log+="\n"+a},warn:function(a){window._log+="\nwarn: "+a},error:function(a){window._log+="\nerror: "+a}});function fb(a,b){for(const c in a)b.call(void 0,a[c],c,a)}function hb(a,b){const c={};for(const d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function ib(a,b){for(const c in a)if(b.call(void 0,a[c],c,a))return c}function C(a,b,c){return null!==a&&b in a?a[b]:c};function D(){var a=window.location.search.substr(1);if(a){var b={};a=a.split("&");for(let e=0;e<a.length;++e){const f=a[e].split("=");if(2==f.length){try{var c=decodeURIComponent(f[0].replace(/\+/g," "))}catch(g){c=f[0]}try{var d=decodeURIComponent(f[1].replace(/\+/g," "))}catch(g){d=f[1]}c=c.toLowerCase();b[c]=d}}}else b={};return b};(function(){function a(b){try{return b.ISPlayer&&(window.ISPlayer=b.ISPlayer),b.ISPVideoPlayer&&(window.ISPVideoPlayer=b.ISPVideoPlayer),b.ISPQuizPlayer&&(window.ISPQuizPlayer=b.ISPQuizPlayer),b.ISPInteractionPlayerCore&&(window.ISPInteractionPlayerCore=b.ISPInteractionPlayerCore),b.ISPBookPlayer&&(window.ISPBookPlayer=b.ISPBookPlayer),b.ISPScenarioPlayer&&(window.ISPScenarioPlayer=b.ISPScenarioPlayer),b.ISPFlipPlayer&&(window.ISPFlipPlayer=b.ISPFlipPlayer),!0}catch(c){return!1}}if(function(){let b;
try{b=window.frameElement}catch(c){}return null!=b}()){let b=window,c=7;for(;b&&b.parent!=b&&0!=c--&&!a(b.parent);)b=b.parent}})();var E;const jb=D().user_agent;E=jb?jb:Xa()||"";D();D();const kb=-1!=E.toLowerCase().indexOf("chrome"),lb=-1==E.toLowerCase().indexOf("windows phone")&&-1!=E.toLowerCase().indexOf("android")&&!kb&&!ab&&!Ya,mb=-1!=E.indexOf("ismobile");D();D();const nb=document.createElement("audio"),ob=nb.play&&nb.play();ob&&ob.then(()=>{nb.pause()},()=>{});
function pb(){return 1==window._ispringDebug||"1"==D().isdebug}setTimeout(()=>{bb=pb},0);class qb{constructor(a){this.Cb=a}xd(a,b,c){c=this.Cb.hasOwnProperty(a)?this.Cb[a]:c;if(void 0!==c){if(void 0!==b){a=this.Rc;for(let d in b)if(b.hasOwnProperty(d)){const e=b[d];a&&(d=a(d));c=c.replace(new RegExp(d,"g"),e)}}return c}sa("unknown message id: "+a,...[]);return a}messages(){return this.Cb}Rc(a){return"%"+a.toUpperCase()+"%"}}qb.prototype.getMessage=qb.prototype.xd;class rb{constructor(a=null){this.vc=a}};class sb{constructor(a,b,c,d){this.Kb=b;this.Uc=new qb(c);this.T=d}i18n(){return this.Uc}};var tb="closure_listenable_"+(1E6*Math.random()|0);function ub(a){a.Hd=!0;a.listener=null;a.proxy=null;a.src=null;a.ae=null};var vb={},wb=0;function xb(a){if("number"===typeof a||!a||a.Hd)return!1;var b=a.src;if(b&&b[tb]){b=b.Zd;var c=a.type;if(c in b.Ub){var d=b.Ub[c],e=Fa(d,a),f;(f=0<=e)&&Array.prototype.splice.call(d,e,1);f&&(ub(a),0==b.Ub[c].length&&(delete b.Ub[c],b.de--));a=f}else a=!1;return a}c=a.type;d=a.proxy;b.removeEventListener?b.removeEventListener(c,d,a.capture):b.detachEvent?b.detachEvent(c in vb?vb[c]:vb[c]="on"+c,d):b.addListener&&b.removeListener&&b.removeListener(d);wb--;ub(a);return!0};function yb(a,b){a&&(b=a.indexOf(b),-1<b&&a.splice(b,1))}function zb(a,...b){b.forEach(c=>{Array.isArray(c)?a.push(...c):a.push(c)})}function Ab(a,b){let c=!1;for(let d=0;d<a.length;d++)if(a[d]===b){c=!0;break}c||a.push(b)};let Bb=0;function Cb(a,b){if(a.N&&a.N[b]){var {Rb:c,ua:d,context:e,priority:f}=a.N[b];c.removeHandler(d,e,f);delete a.N[b]}else sa("unknown handler key",...[])}function Db(a,b){if(Array.isArray(b)){let c=!1;for(const d of b)c=Db(a,d)||c;return c}yb(a.na,b);return xb(b)}function F(a,b,c,d){a.N=a.N||{};b.addHandler(c,d,void 0);const e=++Bb;a.N[e]={Rb:b,ua:c,context:d,priority:void 0};return e}
function Eb(a,b,c,d){const e=ib(a.N,f=>{a:{var g={Rb:b,ua:c,context:d,priority:void 0};for(const h in f)if(!(h in g)||f[h]!==g[h]){f=!1;break a}for(const h in g)if(!(h in f)){f=!1;break a}f=!0}return f});e&&Cb(a,e)}function Fb(a,b,c){const d=(...e)=>{c.apply(void 0,e);Eb(a,b,d)};F(a,b,d)}function Gb(a){return void 0!==a.displayObject?a.displayObject():a}
function Hb(a,b){if(b){if(a.N){var c=hb(a.N,d=>d.Rb.wc==b);for(const d of Object.keys(c))Cb(a,d)}if(a.na){const d=Gb(b);c=a.na.filter(e=>e.src==d);for(const e of c)Db(a,e)}}}function Ib(a,b){a.W=a.W||[];a.W.push(b)}function Jb(a,...b){if(a.W)for(const c of b)c&&(Hb(a,c),b=a.W.indexOf(c),0<=b&&(a.W.splice(b,1),cb(c)))}
class Kb{constructor(){this.W=this.N=this.na=null}Jc(){this.Da();if(this.W)for(const a of this.W)cb(a);if(this.na){for(const a of this.na)if(Array.isArray(a))for(const b of a)xb(b);else xb(a);this.na=null}if(this.N)for(const a of Object.keys(this.N))Cb(this,a)}Da(){}};function G(a,b){return 0==b?a.sa:a.ha[b]}function Lb(a,b){return 0==b?a.sa||[]:b in a.ha?G(a,b):[]}function Mb(a){if(!a.ha)return a.sa?a.sa.slice():[];const b=[],c=a.Wa;for(let d=0;d<c.length;++d){const e=G(a,c[d]);e&&zb(b,e)}return b}
class Nb{constructor(){this.sa=this.ha=this.Wa=null}push(a,b){if(0==b)this.sa=this.sa||[];else if(this.Wa=this.Wa||[0],this.ha=this.ha||{},!(b in this.ha)){this.ha[b]=[];var c=this.Wa;let e=0,f=c.length,g=!1,h=0;for(;e<f;){const k=Math.floor((e+f)/2);var d=c[k];d=b<d?-1:b>d?1:0;if(0===d){g=!0;h=k;break}else 0>d?f=k:e=k+1}g||c.splice(g?h:e,0,b)}G(this,b).push(a)}remove(a,b){(b=G(this,b))&&yb(b,a)}};class H extends Kb{constructor(a=null){super();this.xc=this.R=null;this.wc=a}wd(){return this.wc}addHandler(a,b,c){this.R=this.R||new Nb;this.R.push({ua:a,context:b},c||0)}removeHandler(a,b,c){c=c||0;if(this.R){var d=Lb(this.R,c),e=d.length;for(var f=0;f<e;++f){const g=d[f];if(g.ua==a&&g.context==b){(a=G(this.R,c))&&Array.isArray(a)&&(f=parseInt(f,10),isNaN(f)&&(f=0),0>f&&(f=a.length+f),0>f||f>=a.length||a.splice(f,1));break}}}else sa("EventDispatcher has no handlers!",...[])}Ad(a,b,c){if(!this.R)return!1;
c=Lb(this.R,c||0);const d=c.length;for(let e=0;e<d;++e){const f=c[e];if(f.ua==a&&f.context==b)return!0}return!1}o(...a){if(this.R){const b=Mb(this.R),c=b.length;for(let d=0;d<c;++d){const e=b[d];if(-1!=Mb(this.R).indexOf(e))try{e.ua.apply(e.context,arguments)}catch(f){eb(f,!0)}}}this.xc&&this.xc.forEach(b=>{b.o(...a)})}Da(){super.Da()}}H.prototype.dispatch=H.prototype.o;H.prototype.hasHandler=H.prototype.Ad;H.prototype.removeHandler=H.prototype.removeHandler;H.prototype.addHandler=H.prototype.addHandler;
H.prototype.eventOwner=H.prototype.wd;class Ob{constructor(){this.pd=new H}};function Pb(a,b){a.I=b}function Qb(a,b){a.P=b}class Rb{constructor(a){this.la=this.$=this.Pb=this.P=null;this.zc=0;this.Ja="unanticipated";this.F=this.I=null;this.Z="";this.Ha=a}id(){return this.Ha}type(){return this.A}description(){return this.Z}$b(){return this.F}result(){return this.Ja}score(){return this.zc}xa(a){this.zc=a}awardedScore(){return this.la}duration(){return this.$}hb(a){this.$=a}ac(){return this.Pb}details(){return this.P}};function I(a){a=Pa(a);return a=a.replace(/[^\w-]/g,"_")}function J(a,b){return"0123456789abcdefghijklmnopqrstuvwxyz"[((null!=b?b:1)?a:35-a)%36]};function K(a,b,c){return b.textWithEquations(a.v||!c?"Equation":"")}function L(a,b){return b.join(a.v?",":"[,]")}function M(a,b,c){return a.v?J(b):I(`${b}_${c}`)}
class N{constructor({Id:a,Nd:b,slideIndex:c}){this.v=a;this.Gc=b;this.D=!1;this.Bc=c}create(a){if(!a.submitted())return null;var b=(void 0!==this.Bc?"Slide"+this.Bc+"_":"")+"Q_"+a.slide().id();b=new Rb(I(b));this.g(b,a);return b}g(a,b){var c=b.slide();c=K(this,c.description(),!0);a.Z=c;b.hasBeenVisited()&&(a.hb(b.visitDuration()),c=b.firstVisitTime(),a.Pb=c);if(c=b.slide().settings().evaluation()){if(a.xa(b.maxScore()),b=b.review()){var d=Math.max(0,b.awardedScore());a.la=d;d="unanticipated";switch(b.status()){case "correct":d=
"correct";break;case "incorrect":case "partially":d="incorrect"}a.Ja=d}}else a.Ja="neutral";this.D=!!c}};class O{constructor(a,b){this.Ha=a;this.Z=b}id(){return this.Ha}description(){return this.Z}};function P(a,b){a.Ba.push(b)}class Sb{constructor(){this.Ba=[]}count(){return this.Ba.length}getChoice(a){if(0>a||a>=this.count())throw Error("Index out of bounds");return this.Ba[a]}};class Tb{constructor(){this.od=new Sb;this.La=new Sb}sources(){return this.od}};class Ub extends N{g(a,b){super.g(a,b);a.A="matching";var c=b.contentState();b=b.slide().content();const {details:d,premises:e,responses:f,Dd:g}=this.Hb(b);c=this.ub(c.chainsStates(),e,f,g);a.F=c;this.D&&(c=[this.D?this.vb(b.chains(),e,f,g):c],a.I=c);a.P=d}Hb(a){const b=new Tb,c=[],d=[];a=a.chains();for(var e of a){var f=e.object().slideObject();a=e.destination().slideObject();if(f&&0>c.indexOf(f)){c.push(f);const g=f.name();P(b.sources(),new O(I(c.indexOf(f)+"_"+g),g))}a&&0>d.indexOf(a)&&(d.push(a),
f=a.name(),P(b.La,new O(I(d.indexOf(a)+"_"+f),f)))}e=this.v?J(d.length,!1):`${d.length}_${"None"}`;P(b.La,new O(e,"None"));return{details:b,premises:c,responses:d,Dd:e}}ub(a,b,c,d){const e=[];var f=b.slice();for(const h of a){a=h.objectState().slideObject();var g=h.destinationState().slideObject();g=this.ma(a,g,b,c,d);e.push(g);f.splice(f.indexOf(a),1)}for(const h of f)f=this.ma(h,null,b,c,d),e.push(f);return this.Ea(e)}vb(a,b,c,d){const e=[];for(const f of a){a=f.object().slideObject();const g=f.destination().slideObject();
a&&(a=this.ma(a,g,b,c,d),e.push(a))}return this.Ea(e)}Ga(a,b,c){this.v?b=J(b,c):(a=a.name(),a=I(a),b=`${b}_${a}`);return b}ma(a,b,c,d,e){a=this.Ga(a,c.indexOf(a),!0);b=b?this.Ga(b,d.indexOf(b),!1):e;d=this.v?".":"[.]";return I(a)+d+I(b)}Ea(a){return a.join(this.v?",":"[,]")}};class Vb extends N{g(a,b){super.g(a,b);a.A="long-fill-in";b=b.contentState().response();a.F=b}};class Wb extends N{g(a,b){super.g(a,b);a.A=this.v?"other":"fill-in";var c=b.contentState();b=[];const d=[];for(var e of c.placeholders())b.push(e.response()),(c=e.correctAnswers())&&(this.Gc?d.push(c[0]):d.push(c.join("[,]")));a.F=b.join("[,]");if(this.D){e=d;if(this.v||this.Gc)e=[e.join(this.v?"[.]":"[,]")];a.I=e}}};class Q{constructor(){this.Ba=new Sb}choices(){return this.Ba}};class Xb extends N{g(a,b){super.g(a,b);a.A="choice";const c=[],d=[],e=new Q;this.sb(b.contentState(),e,d,c);a.F=L(this,c);this.D&&(a.I=[L(this,d)]);a.P=e}sb(a,b,c,d){a.areas().forEach((f,g)=>{const h=f.area(),k=h.label().text();g=M(this,g,k);h.correct()&&c.push(g);a.areaSelected(f)&&d.push(g);P(b.choices(),new O(g,k))});const e=a.areas().length;for(let f=e;f<e+a.freePointsCount();++f){const g=M(this,f,"Untitled_Spot");d.push(g)}}};class Yb extends N{g(a,b){super.g(a,b);a.A="choice";const c=[],d=new Q;b.contentState().statementsStates().forEach((e,f)=>{var g=e.statement().text();P(d.choices(),new O(M(this,f,g),g));if(g=e.selectedScale())e=c.push,f=f+"_"+g.text(),f=I(f),e.call(c,f)});a.F=L(this,c);a.P=d}};class Zb extends N{g(a,b){super.g(a,b);a.A="matching";var c=b.contentState();b=b.slide().content();const {details:d,premises:e,responses:f}=this.Hb(b);c=this.ub(c.matches(),e,f,this.v);a.F=c;this.D&&(c=[this.vb(b.matches(),this.v)],a.I=c);a.P=d}Hb(a){const b=new Tb,c=[],d=[];var e=a.matches();for(var f=0;f<e.count();++f){var g=e.getChoice(f);c.push(g.premise());d.push(g.response());const h=K(this,g.premise().textRange(),!1);g=K(this,g.response().textRange(),!1);P(b.sources(),new O(I(f+"_"+h),h));
P(b.La,new O(I(f+"_"+g),g))}a=a.distractors();for(e=0;e<a.count();++e)f=a.getChoice(e),d.push(f),f=K(this,f.textRange(),!1),P(b.La,new O(I(e+"_"+f),f));return{details:b,premises:c,responses:d}}ub(a,b,c,d){const e=[];for(const f of a){a=f.premise();const g=f.response();a=this.ma(a,b.indexOf(a),g,c.indexOf(g),d);e.push(a)}return this.Ea(e,d)}vb(a,b){const c=[];for(let e=0;e<a.count();++e){var d=a.getChoice(e);d=this.ma(d.premise(),e,d.response(),e,b);c.push(d)}return this.Ea(c,b)}Ga(a,b,c,d){return c?
J(b,d):`${b}_${K(this,a.textRange(),!1)}`}ma(a,b,c,d,e){a=this.Ga(a,b,e,!0);c=this.Ga(c,d,e,!1);e=e?".":"[.]";return I(a)+e+I(c)}Ea(a,b){return a.join(b?",":"[,]")}};class $b extends Q{constructor(){super();this.dc=[]}};class ac extends N{g(a,b){super.g(a,b);a.A="choice";var c=b.slide();b=b.contentState();const d=c.content();c=this.xb(c.content(),b);a.F=c;if(this.D){a:{for(c=0;c<d.count();++c){const e=d.getChoice(c);if(e.correct()){c=M(this,c,K(this,e.textRange(),!1));break a}}c=""}a.I=[c]}b=this.Fa(d,b);a.P=b}Fa(a,b){let c=new Q;if(this.kc()){c=new $b;for(var d=0;d<b.count();++d){var e=b.getChoiceState(d);const f=e.choice(),g=a.getChoiceIndex(f);f.typeIn()&&(e=e.customAnswer(),c.dc[g]=e)}}for(b=0;b<a.count();++b)d=
a.getChoice(b),d=K(this,d.textRange(),!1),P(c.choices(),new O(I(`${b}_${d}`),d));return c}kc(){return!this.D}xb(a,b){for(let c=0;c<b.count();++c){const d=b.getChoiceState(c);if(d.selected())return a=a.getChoiceIndex(d.choice()),M(this,a,K(this,d.choice().textRange(),!1))}return""}};function bc(a){const b=new Tb;let c=0;a.placeholders().forEach((d,e)=>{e+="";P(b.sources(),new O(e,e));d.values.forEach(f=>{f=f.text();var g=`${c++}_${f}`;g=I(g);P(b.La,new O(g,f))})});return b}
class cc extends N{g(a,b){super.g(a,b);a.A=this.v?"other":"matching";const c=[],d=[],e=new Q;b.contentState().placeholders().forEach((f,g)=>{const h=f.response(),k=f.correctAnswer();f.answers().forEach(n=>{var r=e.choices().count();r=`${g}[.]${I(r+"_"+n)}`;n==k&&d.push(r);n==h&&c.push(r);P(e.choices(),new O(r,n))})});a.F=c.join("[,]");this.D&&Pb(a,[d.join("[,]")]);Qb(a,bc(b.slide().content()))}};class dc extends N{g(a,b){super.g(a,b);a.A="choice";const c=b.slide().content();var d=this.xb(c,b.contentState());a.F=d;this.D&&(d=[this.tb(c)],a.I=d);b=this.Fa(c,b.contentState());a.P=b}Fa(a,b){let c=new Q;if(!this.D){c=new $b;for(var d=0;d<b.count();++d){var e=b.getChoiceState(d);const f=e.choice(),g=a.getChoiceIndex(f);f.typeIn()&&(e=e.customAnswer(),c.dc[g]=e)}}for(b=0;b<a.count();++b)d=a.getChoice(b),d=K(this,d.textRange(),!1),P(c.choices(),new O(I(b+"_"+d),d));return c}xb(a,b){const c=[];for(let f=
0;f<b.count();++f){var d=b.getChoiceState(f);const g=d.choice();var e=K(this,g.textRange(),!1);d.selected()&&(d=a.getChoiceIndex(g),e=M(this,d,e),c.push(e))}return L(this,c)}tb(a){const b=[];for(let d=0;d<a.count();++d){var c=a.getChoice(d);c.correct()&&(c=M(this,d,K(this,c.textRange(),!1)),b.push(c))}return L(this,b)}};class ec extends N{g(a,b){super.g(a,b);var c=b.slide();b=b.contentState().response();c=c.content();var d;a:{for(d=0;d<c.count();++d)if("notEqual"==c.getAnswer(d).comparisonOperation()){d=!0;break a}d=!1}a.A=this.v||d?"fill-in":"numeric";a.F=b;if(this.D){d=(b=this.v||d)?"[,]":"[.]";const h=[];for(let k=0;k<c.count();++k){var e="",f=c.getAnswer(k),g=f.comparisonOperation();if("between"==g)g=f,e=g.leftOperand(),g=g.rightOperand(),e=b?"between "+e+" and "+g:e+"[:]"+g;else switch(f=f.operand(),g){case "notEqual":b&&
(e="not equal to "+f);break;case "equal":e=b?"equal to "+f:f+"[:]"+f;break;case "greaterThan":e=b?"greater than "+f:f+"[:]";break;case "greaterThanOrEqual":e=b?"greater than or equal to "+f:f+"[:]";break;case "lessThan":e=b?"less than "+f:"[:]"+f;break;case "lessThanOrEqual":e=b?"less than or equal to "+f:"[:]"+f}h.push(e)}a.I=[h.join(d)]}}};function fc(a,b,c,d){const e=d?",":"[,]",f=[];c.forEach(g=>{const h=K(a,g.textRange(),!1);g=b.getChoiceIndex(g);f.push(I(d?J(g,!0):g+"_"+h))});return f.join(e)}class gc extends N{g(a,b){super.g(a,b);a.A="sequencing";var c=b.slide().content();b=fc(this,c,b.contentState().studentResponse(),this.v);a.F=b;this.D&&(b=[fc(this,c,c,this.v)],a.I=b);c=this.Fa(c);a.P=c}Fa(a){const b=new Q;for(let c=0;c<a.count();++c){const d=a.getChoice(c).textRange().text();P(b.choices(),new O(I(c+"_"+d),d))}return b}};class hc extends ac{g(a,b){super.g(a,b);if(this.v&&this.D){a.A="true-false";var c=b.slide().content();b=b.contentState();const d=c.getChoice(0).correct()?"t":"f",e="t"==d?"f":"t";c=c.getChoice(0).correct()?c.getChoice(0).id():c.getChoice(1).id();let f=null;for(let g=0;2>g;++g){const h=b.getChoiceState(g);if(h.selected()){f=h.choice().id()==c?d:e;break}}a.F=f;a.I=[d]}}kc(){return!1}};class ic extends N{g(a,b){super.g(a,b);a.A="fill-in";var c=b.slide();b=b.contentState().response().text();a.F=b;this.D&&(c=this.tb(c.content()),a.I=c)}tb(a){const b=[];for(let c=0;c<a.count();++c){const d=a.getChoice(c);b.push(d.textRange().text())}return b}};class jc{constructor(a,b){this.length=b;this.Ab=[];for(let c=0;c<b;++c)this.Ab[c]=a(c)}get(a){return this.Ab[a]}};function kc(a,b,c){for(const d of a){const e=d.response();null!=e&&(a=[...(new jc(f=>b.choices().getChoice(f),b.choices().count())).Ab].find(f=>Pa(f.description())==e),c.push(a.id()))}}
class lc extends N{g(a,b){super.g(a,b);a.A=this.v?"other":"choice";var c=b.slide().content();const d=[],e=new Q;c=c.extraWords();for(var f of c){c=f.text();var g=e.choices().count();g=I(`${g}_${c}`);P(e.choices(),new O(g,c))}b=b.contentState().placeholders();this.D&&(f=[],this.sb(b,e,f),a.I=[f.join("[,]")]);kc(b,e,d);a.F=d.join("[,]");a.P=e}sb(a,b,c){for(const e of a){a=e.placeholder().value||"";var d=b.choices().count();d=I(`${d}_${a}`);c.push(d);P(b.choices(),new O(d,a))}}};const mc={FillInTheBlank:Wb,WordBank:lc,TypeIn:ic,Numeric:ec,MultipleChoice:ac,MultipleResponse:dc,MultipleChoiceText:cc,Sequence:gc,Matching:Zb,TrueFalse:hc,Essay:Vb,Hotspot:Xb,LikertScale:Yb,DND:Ub};class nc{constructor(a,b){this.Ha=a;this.Yc=b;this.Qc=""}id(){return this.Ha}name(){return this.Yc}email(){return this.Qc}};class oc{constructor(a,b){this.G=a;this.M=b}};function pc(a,b){fb(b,function(c,d){c&&"object"==typeof c&&c.be&&(c=c.$d());"style"==d?a.style.cssText=c:"class"==d?a.className=c:"for"==d?a.htmlFor=c:qc.hasOwnProperty(d)?a.setAttribute(qc[d],c):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,c):a[d]=c})}
var qc={cellpadding:"cellPadding",cellspacing:"cellSpacing",colspan:"colSpan",frameborder:"frameBorder",height:"height",maxlength:"maxLength",nonce:"nonce",role:"role",rowspan:"rowSpan",type:"type",usemap:"useMap",valign:"vAlign",width:"width"};function rc(a,b,c){var d=arguments,e=document,f=d[1],g=sc(e,String(d[0]));f&&("string"===typeof f?g.className=f:Array.isArray(f)?g.className=f.join(" "):pc(g,f));2<d.length&&tc(e,g,d);return g}
function tc(a,b,c){function d(h){h&&b.appendChild("string"===typeof h?a.createTextNode(h):h)}for(var e=2;e<c.length;e++){var f=c[e];if(!fa(f)||ha(f)&&0<f.nodeType)d(f);else{a:{if(f&&"number"==typeof f.length){if(ha(f)){var g="function"==typeof f.item||"string"==typeof f.item;break a}if("function"===typeof f){g="function"==typeof f.item;break a}}g=!1}Ga(g?Ha(f):f,d)}}}function sc(a,b){b=String(b);"application/xhtml+xml"===a.contentType&&(b=b.toLowerCase());return a.createElement(b)}
var uc={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},vc={IMG:" ",BR:"\n"};function wc(a){var b=[];xc(a,b,!0);a=b.join("");a=a.replace(/ \xAD /g," ").replace(/\xAD/g,"");a=a.replace(/\u200B/g,"");a=a.replace(/ +/g," ");" "!=a&&(a=a.replace(/^\s*/,""));return a}function xc(a,b,c){if(!(a.nodeName in uc))if(3==a.nodeType)c?b.push(String(a.nodeValue).replace(/(\r\n|\r|\n)/g,"")):b.push(a.nodeValue);else if(a.nodeName in vc)b.push(vc[a.nodeName]);else for(a=a.firstChild;a;)xc(a,b,c),a=a.nextSibling};const yc=["-webkit-","-moz-","-ms-","-o-"];function zc(a){if(!a)return"";if(/^-+$/.test(a))return a;for(const b of yc)if(a.startsWith(b)){const c=b.slice(1,-1);a=zc(a.slice(b.length));return`${c}${a.charAt(0).toUpperCase()}${a.slice(1)}`}return a.startsWith("--")||a.startsWith("-")&&!a.startsWith("--")?zc(a.slice(1)):a.endsWith("-")?zc(a.slice(0,-1)):a.replace(/-+([a-zA-Z0-9])/g,(b,c)=>c.toUpperCase())};const Ac=new Map;function Bc(a,b){if(Ac.has(b))return Ac.get(b);var c=zc(b);let d=c;b.startsWith("-")||c in a.style||(c=`webkit${`${c.charAt(0).toUpperCase()}${c.slice(1)}`}`,c in a.style&&(d=c));Ac.set(b,d);return d};function Cc(a){var b={width:"1px",height:"1px",border:"0"};if("string"===typeof b)(b=Bc(a,b))&&(a.style[b]=void 0);else for(const [d,e]of Object.entries(b)){b=a;var c=e;const f=Bc(b,d);f&&(b.style[f]=c)}};function R(a){this.length=a.length||a;for(let b=0;b<this.length;b++)this[b]=a[b]||0}R.prototype.BYTES_PER_ELEMENT=4;R.prototype.set=function(a,b){b=b||0;for(let c=0;c<a.length&&b+c<this.length;c++)this[b+c]=a[c]};R.prototype.toString=Array.prototype.join;"undefined"==typeof Float32Array&&(R.BYTES_PER_ELEMENT=4,R.prototype.BYTES_PER_ELEMENT=R.prototype.BYTES_PER_ELEMENT,R.prototype.set=R.prototype.set,R.prototype.toString=R.prototype.toString,ea("Float32Array",R));function S(a){this.length=a.length||a;for(let b=0;b<this.length;b++)this[b]=a[b]||0}S.prototype.BYTES_PER_ELEMENT=8;S.prototype.set=function(a,b){b=b||0;for(let c=0;c<a.length&&b+c<this.length;c++)this[b+c]=a[c]};S.prototype.toString=Array.prototype.join;if("undefined"==typeof Float64Array){try{S.BYTES_PER_ELEMENT=8}catch(a){}S.prototype.BYTES_PER_ELEMENT=S.prototype.BYTES_PER_ELEMENT;S.prototype.set=S.prototype.set;S.prototype.toString=S.prototype.toString;ea("Float64Array",S)};new Float64Array(3);new Float64Array(3);new Float64Array(4);new Float64Array(4);new Float64Array(4);new Float64Array(16);function Dc(a,b){if("function"!==typeof a)if(a&&"function"==typeof a.handleEvent)a=ma(a.handleEvent,a);else throw Error("Invalid listener argument");2147483647<Number(b)||m.setTimeout(a,b||0)};var Ec={},Fc=null,Gc=Za||$a||"function"==typeof m.btoa;function Hc(a){this.fb=a}function Ic(a,b){const c=[];Jc(a,b,c);return c.join("")}
function Jc(a,b,c){if(null==b)c.push("null");else{if("object"==typeof b){if(Array.isArray(b)){var d=b;b=d.length;c.push("[");var e="";for(var f=0;f<b;f++)c.push(e),e=d[f],Jc(a,a.fb?a.fb.call(d,String(f),e):e,c),e=",";c.push("]");return}if(b instanceof String||b instanceof Number||b instanceof Boolean)b=b.valueOf();else{c.push("{");f="";for(d in b)Object.prototype.hasOwnProperty.call(b,d)&&(e=b[d],"function"!=typeof e&&(c.push(f),Kc(d,c),c.push(":"),Jc(a,a.fb?a.fb.call(b,d,e):e,c),f=","));c.push("}");
return}}switch(typeof b){case "string":Kc(b,c);break;case "number":c.push(isFinite(b)&&!isNaN(b)?String(b):"null");break;case "boolean":c.push(String(b));break;case "function":c.push("null");break;default:throw Error("Unknown type: "+typeof b);}}}var Nc={'"':'\\"',"\\":"\\\\","/":"\\/","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\u000b"},Oc=/\uffff/.test("\uffff")?/[\\"\x00-\x1f\x7f-\uffff]/g:/[\\"\x00-\x1f\x7f-\xff]/g;
function Kc(a,b){b.push('"',a.replace(Oc,function(c){let d=Nc[c];d||(d="\\u"+(c.charCodeAt(0)|65536).toString(16).slice(1),Nc[c]=d);return d}),'"')};function Pc(a){try{const b=sc(document,"iframe");Cc(b);b.src=a;document.body.appendChild(b);Dc(()=>{b&&b.parentNode&&b.parentNode.removeChild(b)},100)}catch(b){}}class Qc{constructor(a,b){this.A=a;this.Nc=b||[]}id(){return Object.prototype.hasOwnProperty.call(this,ia)&&this[ia]||(this[ia]=++ja)}}A("iSpring.ios.mobile.MobileAppCommand",Qc);const Rc=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||setTimeout;function T(a){const b=new H(a);Ib(a,b);return b}class U extends Kb{};let Sc;const Tc=[];if(window.MutationObserver){Sc=new MutationObserver(b=>{b&&b.forEach(c=>{for(const d of c.removedNodes)for(const e of Tc)"function"===typeof d.contains&&d.contains(e.displayObject())&&e.Wd()})});const a={subtree:!0,childList:!0};Rc(()=>{Sc.observe(document.body,a)})};sc(document,"CANVAS").getContext("2d");
function V(a){var b="\r";if(0==a.length)return"";null==b&&(b="");var c=0;let d="";const e=a.length;do{var f=Uc(a,["<p>","<p "],c);if(f&&f.eb>c){c=a.substr(c,f.eb-c);var g=rc("DIV");g.innerHTML=c;d+=(g.textContent||g.innerText||wc(g))+b;c=f.eb}if(g=Uc(a,["</p>","</p >"],c)){f=g.eb+g.Ld.length-c;const h=a.substr(c,f);g=rc("DIV");g.innerHTML=h;d+=(g.textContent||g.innerText||wc(g))+b;c+=f}else return g=rc("DIV"),g.innerHTML=a.substr(c,e-c),d+(g.textContent||g.innerText||wc(g))}while(c<e);return d}
function Uc(a,b,c){Array.isArray(b)||(b=[b]);let d=void 0,e=void 0;b.forEach(f=>{const g=a.indexOf(f,c);0<=g&&(void 0===d||g<d)&&(d=g,e=f)});return void 0!==e&&void 0!==d?new Vc(e,d):null}class Vc{constructor(a,b){this.Ld=a;this.eb=b}};function Wc(a){a=V(a.text());Wa.test(a)&&(-1!=a.indexOf("&")&&(a=a.replace(Qa,"&amp;")),-1!=a.indexOf("<")&&(a=a.replace(Ra,"&lt;")),-1!=a.indexOf(">")&&(a=a.replace(Sa,"&gt;")),-1!=a.indexOf('"')&&(a=a.replace(Ta,"&quot;")),-1!=a.indexOf("'")&&(a=a.replace(Ua,"&#39;")),-1!=a.indexOf("\x00")&&(a=a.replace(Va,"&#0;")));if(!a)return"";const b=document.createElement("div");b.innerHTML=a;return b.firstChild.nodeValue}function Xc(a,b){null!=a.Lb&&(b.Pb=new Date(a.Lb),b.hb(Date.now()-a.Lb))}
function Yc(a,b,c){c=I(b+"_"+c);b=J(b);return a.kd?b:c}
class Zc{constructor(a,b,c,d){this.M=a;this.jd=b;this.kd=c;this.fd=d;this.Lb=void 0}create(){var a=0;const b=[];var c=this.jd,d=this.fd;const e=new Rb(c.id()+"_"+a);a+=1;e.A="choice";if(c.message()){var f=c.message().text();f=V(f);e.Z=f;f=c.message().replies();null!=c.speech()&&0<V(c.speech())&&(a=new Rb(c.id()+"_"+a),a.A="other",c=V(c.speech()),a.Z=c,a.Ja="neutral",Xc(this,a),b.push(a))}else f=V(c.speech()),e.Z=f,f=c.replies();0==f.count()&&(e.A="other");c=null;let g=a=0;var h=-1;const k=[];for(var n=
0;n<f.count();n++){const r=f.getReply(n);null!=d&&r==d&&(h=n);a=Math.max(a,r.score());k.push(Yc(this,n,Wc(r)))}null!=d&&(c=Yc(this,h,Wc(d)),g=Math.max(g,d.score()));d=f;f=new Q;for(h=0;h<d.count();++h)n=Wc(d.getReply(h)),P(f.choices(),new O(I(h+"_"+n),n));e.P=f;e.F=c;e.I=k;this.M.scenario().settings().evaluationSettings().enabled()&&(e.xa(a),e.la=g);e.Ja="neutral";Xc(this,e);b.push(e);return b}};var $c={Pd:"\u202a",Ud:"\u202b",Sd:"\u202c",Qd:"\u200e",Vd:"\u200f"};let ad=0;for(const a in $c)ad++;function bd(){function a(c){try{for(let d=0;255>d;++d){if(c.API)return c.API;const e=c.parent;if(!e||c==e)break;c=e}}catch(d){}return null}var b=window;return a(b)||b.opener&&a(b.opener)}function cd(a){var b=Math.floor(a/3600),c=Math.floor(a%3600/60);a=Math.floor(a%60);return(10>b?"0"+b:b)+":"+(10>c?"0"+c:c)+":"+(10>a?"0"+a:a)}
function dd(){if(mb)if(mb){var a=new Qc("closeWindow");if(mb){var b=a.A,c=a.Nc;a=a.id();c=Ic(new Hc(null),c);b="isplayer://"+b+"/"+a+"/";a=c;if(Gc)c=m.btoa(a);else{c=[];for(var d=0,e=0;e<a.length;e++){var f=a.charCodeAt(e);255<f&&(c[d++]=f&255,f>>=8);c[d++]=f}a=void 0;void 0===a&&(a=0);if(!Fc)for(Fc={},d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),e=["+/=","+/","-_=","-_.","-_"],f=0;5>f;f++){var g=d.concat(e[f].split(""));Ec[f]=g;for(var h=0;h<g.length;h++){var k=g[h];
void 0===Fc[k]&&(Fc[k]=h)}}a=Ec[a];d=Array(Math.floor(c.length/3));e=a[64]||"";for(f=g=0;g<c.length-2;g+=3){var n=c[g],r=c[g+1];k=c[g+2];h=a[n>>2];n=a[(n&3)<<4|r>>4];r=a[(r&15)<<2|k>>6];k=a[k&63];d[f++]=""+h+n+r+k}h=0;k=e;switch(c.length-g){case 2:h=c[g+1],k=a[(h&15)<<2]||e;case 1:c=c[g],d[f]=""+a[c>>2]+a[(c&3)<<4|h>>4]+k+e}c=d.join("")}Pc(b+c)}}else try{lb||(window.open("","_self",""),window.close())}catch(Bd){}else try{lb||(window.gb=window,b=ed(),b==window.top?(window.open("","_self",""),window.close()):
fd(b))}catch(Bd){fd(window.top)}}function fd(a){if(a&&a.gb){var b=document.createElement("a");b.href="data/goodbye.html";a.gb.location.replace(b.href)}}function ed(){let a=window;if(a.gb)return a;let b=0;for(;a!=window.top&&100>b++;){if(a.gb)return a;a=a.parent}console.log("Unable to locate content root");return null}function gd(){try{const a=document.getElementById("preloader");a&&a.parentNode.removeChild(a)}catch(a){}};const hd={$schema:"http://json-schema.org/draft-04/schema#",type:"object",definitions:{Interaction:{type:"array",items:[{type:"number"},{type:"number"}],additionalItems:!1},Grading:{type:"object",properties:{alternatives:{$ref:"#/definitions/Alternatives"}},required:["alternatives"]},Alternatives:{type:"array",items:{$ref:"#/definitions/GradingRuleSet"}},GradingRuleSet:{type:"object",properties:{slides:{$ref:"#/definitions/SlideGradingRule"},materials:{$ref:"#/definitions/MaterialGradingRule"}}},
SlideGradingRule:{type:"object",properties:{slidesToView:{type:"number",minimum:0},groupId:{type:"string"}},required:["slidesToView"]},MaterialGradingRule:{type:"object",properties:{averagePassingPercent:{type:"number",minimum:0,maximum:100},materials:{type:"array",items:{type:"number"}}},required:["materials"]}},properties:{grading:{$ref:"#/definitions/Grading"},quizzes:{type:"array",items:{$ref:"#/definitions/Interaction"}},scenarios:{type:"array",items:{$ref:"#/definitions/Interaction"}}},required:["grading",
"quizzes","scenarios"]};const id={$schema:"http://json-schema.org/draft-04/schema#",type:"object",definitions:{Interaction:{type:"array",items:[{type:"number"},{type:"number"}],additionalItems:!1}},properties:{slidesToView:{type:"number",minimum:0},slidesWeight:{type:"number"},quizzes:{type:"array",items:{$ref:"#/definitions/Interaction"}},scenarios:{type:"array",items:{$ref:"#/definitions/Interaction"}},totalScore:{type:"number"},passingScore:{type:"number"}},required:"slidesToView slidesWeight quizzes scenarios totalScore passingScore".split(" ")};function jd(a){return kd(hd,"gradingParamsScheme").validate("gradingParamsScheme",a)}function kd(a,b){const c=new Ajv({Xd:!0});c.addSchema(a,b);return c};function ld(a,b){return"1.2"!=a&&"aicc"!=a&&"cmi-5"!=a||!jd(b)?(c,d)=>({passed:c,completed:d}):(c,d)=>({passed:d?c:null,completed:d})};class W{constructor(a,b,c,d,e,f){this.type=b;this.rated=a;this.passed=c;this.maxScore=void 0!==d?d:null;this.Gd=void 0!==e?e:null;this.Wb=void 0!==f?f:null}Vb(){const a={};a.e=this.rated;a.p=this.passed;a.m=this.maxScore;a.r=this.Gd;a.s=this.Wb;a.t=this.type;return a}};function md(a){return{d:a.$,l:a.Qa,v:a.X,vh:a.ab,V:a.ra,p:a.Ua,q:Object.fromEntries(Object.entries(a.Xa).map(([b,c])=>[b,c.Vb()]))}}class nd{constructor(a){this.Ua=null;this.$=0;this.Qa=-1;this.Xa={};this.ab=[];this.X=[];this.ra=a}lastViewedSlide(){return this.Qa}duration(){return this.$}hb(a){this.$=a}wa(){return this.Xa}Vb(){return md(this)}};const od={Td:"prompt",Od:"always",Rd:"never"};ea("PresentationResumeMode$$module$C_$dev$worker$base$release_9$build$flashspring$flashspring$htmlprojects$src$ispring$presenter$presentation$settings$PresentationResumeMode",od);A("PROMPT_TO_RESUME","prompt",od);A("ALWAYS_RESUME","always",od);A("NEVER_RESUME","never",od);function X(a,b){if(null==b?0:b[a])return b[a];throw Error(`cannot get ${a} from metadata`);}function pd(a,b){return{quizSession:a,playerId:b}};function qd(a){if(a.M){a.sc(a.M);var b=[a.M];for(const c of b)c&&Hb(a,c);a.M=null}}class rd extends U{constructor(a,b){super();this.i=a;this.M=null;this.L=T(this);b&&this.cc()&&this.i.setUserInfo(b.id,{USER_NAME:b.name,USER_EMAIL:b.email});F(this,this.i.currentSessionChangedEvent(),this.oc,this)}cc(){return!0}sc(){}oc(){qd(this);(this.M=this.i.currentSession())&&this.tc(this.M)}Da(){super.Da();qd(this)}}
class sd extends rd{tc(a){F(this,a.sessionModeChangedEvent(),this.Eb,this);a.slidePoolState().questions().forEach(b=>F(this,b.submittedEvent(),this.qc,this));a=pd(a,this.i.id());this.L.o("quizStarted",a)}wb(){var a;if(a=this.M.evaluation()){const b=a.maxScore(),c=a.awardedScore(),d=a.awardedPercent()/100;a=new W(!0,"quiz",a.quizPassed(),b,c,d)}else a=new W(!1,"quiz",!0);return a}sc(a){a.slidePoolState().questions().forEach(b=>Eb(this,b.submittedEvent(),this.qc,this))}qc(a){var b=this.i.id();this.L.o("quizQuestionSubmitted",
{questionState:a,playerId:b})}Eb(a){this.L.o("quizModeChanged",void 0);"testing"==a&&(a={sessionResult:this.wb()},this.L.o("quizCompleted",a))}}
class td extends rd{cc(){return!this.i.userInfoIsLoaded()}tc(a){F(this,a.onReplySelectedEvent(),this.Ta,this);F(this,a.showTerminalSceneEvent(),this.Sa,this);this.L.o("scenarioStarted",{scenarioSession:a});a.completed()&&this.Sa()}Ta(a){this.L.o("scenarioReplySelected",{scenarioReplay:a})}Sa(){const a={sessionResult:this.wb()};this.L.o("scenarioCompleted",a)}wb(){var a=this.M;if(a.scenario().settings().evaluationSettings().enabled()){const b=Math.max(0,a.maxScore()),c=Math.max(0,a.userScore()),d=
0<b-0?c/(b-0):1;a=new W(!0,"scenario",a.scenarioPassed(),b,c,d)}else a=new W(!1,"scenario",!0);return a}}function ud(a,b){const c=a.quizPlayer();return c?new sd(c,b):(a=a.scenarioPlayer())?new td(a,b):null};function vd(a,b){return(a=a.l.wa()[`${b}`])?{passed:a.passed,awardedPercent:a.Wb}:null}function wd(a,b){Jb(a,a.ba);a.ba=null;a.ba=ud(a.da,a.sd);a.ba&&(Ib(a,a.ba),F(a,a.ba.L,(c,d)=>a.ca(b,c,d)),a.ba.oc())}
class xd extends U{constructor({Fd:a,Bd:b,vd:c,resumeMode:d,Zb:e}){super();this.da=a;this.l=b;this.Y=c;this.gd=d;this.sd=e;this.ba=null;this.Ka=T(this);this.L=T(this);F(this,this.da.Va,this.Db,this);F(this,this.da.yc,this.pc,this);this.Y&&F(this,this.Y.Ob,this.U,this);a=this.da.currentSlideIndex();-1!=a&&this.pc(a)}jb(){return this.da.jb()}wa(){return this.l.wa()}resumeMode(){return this.gd}Db(a){(null==a?0:a.actionPrevented())||this.U()}pc(a){wd(this,a);this.U({lastViewedSlide:a});this.Ka.o(a)}ca(a,
b,c){switch(b){case "quizModeChanged":this.U();break;case "quizCompleted":case "scenarioCompleted":a={slideIndex:a,Kd:X("sessionResult",c)},this.U({Jd:a})}this.L.o(b,c)}U({lastViewedSlide:a=null,Jd:b=null}={}){if(null!=a){var c=this.l;0<=c.ra.indexOf(a)?Ab(c.X,a):Ab(c.ab,a);this.l.Qa=a}b&&(this.l.Xa[`${b.slideIndex}`]=b.Kd);this.Y&&(a=yd(this.Y),this.l.hb(a));a=this.da.i.persistState();this.l.Ua=a}};function zd(a,b){let c=0;a.Bb.forEach(d=>{b(d)&&c++});return c}class Ad{constructor({Oa:a}){this.Bb=new Set(a.materials);this.Pc=null!=a.averagePassingPercent?a.averagePassingPercent/100:null}get Ed(){return this.Bb.size}get averagePassingPercent(){return this.Pc}};class Cd{constructor({Yb:a,Oa:b,ia:c}){const {va:d,Qb:e}=Dd({Yb:a,Oa:b,ia:c});this.Zc=d;this.Oc=e}get va(){return this.Zc}get Qb(){return this.Oc}}function Dd({Yb:a,Oa:b,ia:c}){let d=[];for(let e=0;e<c.jb();++e)Ed(e,a,c)&&d.push(e);if(b){const e=b.materials;d=d.filter(f=>!e.includes(f))}return{va:Math.min(a.slidesToView,d.length),Qb:d}}function Ed(a,b,c){return c.l.ra.includes(a)?b.groupId?c.da.i.presentation().slides().getSlide(a).groupId()==b.groupId:!0:!1};class Fd{constructor(a,b){this.zb=a;this.h=b;a=this.zb.slides;b=this.zb.materials;this.md=a&&0<a.slidesToView?new Cd({Yb:a,Oa:b,ia:this.h}):null;this.Wc=(a=this.zb.materials)&&0<a.materials.length?new Ad({Oa:a}):null}get Xb(){return this.md}get Na(){return this.Wc}};class Gd{constructor(a,b){this.ed=new Map(a.quizzes);this.hd=new Map(a.scenarios);this.Sc=Hd(a.grading.alternatives,b)}get quizzes(){return this.ed}get scenarios(){return this.hd}get Sb(){return this.Sc}}function Hd(a,b){return a.map(c=>new Fd(c,b))};function Id(a){return new Map(a.Sb.map(b=>{var c;const {quizzes:d,scenarios:e}=Jd(b,a),f=Kd(d,e),g=!!f.length;let h,k;var n=null==(c=b.Na)?void 0:c.averagePassingPercent;c={maxScore:g?100:null,passingScore:g&&null!=n?100*n:null,slidesToView:null!=(k=null==(h=b.Xb)?void 0:h.va)?k:null,Tb:g,Kc:!1,quizzes:d,scenarios:e,cb:f};return[b,c]}))}
function Jd(a,b){const c=d=>{d=Array.from(d).filter(([e])=>{let f;return null==(f=a.Na)?void 0:f.Bb.has(e)});return new Map(d)};return{quizzes:c(b.quizzes),scenarios:c(b.scenarios)}}function Kd(a,b){return[...a,...b].filter(([,c])=>c).map(([c])=>c)};function Ld(a){if(a.length)return[...a].sort((b,c)=>Md(Nd[`${b.passed}`][`${b.completed}`],Nd[`${c.passed}`][`${c.completed}`])||Md(b.progress,c.progress)||Md(b.awardedPercent,c.awardedPercent))[0];throw Error("cannot get priority grade");}const Nd={"true":{"true":9,"false":6,"null":2},"false":{"true":7,"false":5,"null":1},"null":{"true":8,"false":4,"null":3}};function Md(a,b){return(null!=b?b:-1)-(null!=a?a:-1)};function Od(a,b){let c=0;var d=0;b&&(d=b.Qb.filter(e=>a.h.l.X.includes(e)),c=b.va,d=Math.min(d.length,c));return{va:c,Md:d}}function Pd(a,b){let c=0,d=0;b&&(c=b.Ed,d=zd(b,e=>!!vd(a.h,e)));return{Cd:c,td:d}}function Qd(a,b){return Rd(a,b)?b.every(c=>{let d;return null==(d=vd(a.h,c))?void 0:d.passed}):null}function Rd(a,b){return b.every(c=>!!vd(a.h,c))}function Sd(a,b){return b.reduce((c,d)=>{(d=vd(a.h,d))&&(c+=d.awardedPercent);return c},0)/b.length}
class Td extends U{constructor({zd:a,ia:b}){super();this.Tc=a;this.h=b;this.yb=Id(a);this.Ca=null;this.V=T(this);F(this,this.h.Ka,this.ga,this);F(this,this.h.L,this.ca,this);this.ga()}courseGrade(){return this.Ca}courseGradeChangedEvent(){return this.V}ca(a){"quizCompleted"!=a&&"scenarioCompleted"!=a||this.ga()}ga(){const a=this.Tc.Sb.map(b=>{const c=this.yb.get(b),d=this.pb(b),e=this.Pa(b),f=null!=e?e*c.maxScore:null,g=c.passingScore;b=this.ob(b);return{progress:d,awardedPercent:e,awardedScore:f,
passingScore:g,passed:b,completed:1==d,context:c}});this.Ca=Ld(a);this.V.o()}pb(a){if(a.Xb||a.Na){const {va:b,Md:c}=Od(this,a.Xb),{Cd:d,td:e}=Pd(this,a.Na);return(c+e)/(b+d)}return 1}ob(a){var b=this.yb.get(a).cb;if(b.length){var c;a=null==(c=a.Na)?void 0:c.averagePassingPercent;null!=a?(c=a,b=Sd(this,b)<c?Rd(this,b)?!1:null:!0):b=Qd(this,b);return b}return null}Pa(a){a=this.yb.get(a).cb;return a.length?Sd(this,a):null}};class Ud extends U{constructor(a){super();this.V=T(this);this.jc=!1;Fb(this,a.Ka,()=>{this.jc=!0;this.V.o()})}courseGrade(){return this.jc?Vd({progress:1,completed:!0}):Vd({progress:0,completed:!1})}courseGradeChangedEvent(){return this.V}}function Vd({progress:a,completed:b}){return{progress:a,awardedPercent:null,awardedScore:null,passingScore:null,passed:null,completed:b,context:{maxScore:null,passingScore:null,slidesToView:null,Tb:!1,Kc:!1,quizzes:new Map,scenarios:new Map,cb:[]}}};function Wd(a){let b=0;for(let c=0;c<a.length;++c)b+=a[c];return b};function Xd(a){return 0<a.pa||0<a.nb}class Yd{constructor(a,b,c,d,e,f){this.nb=0;this.dd=f;this.qd=e;this.Jb=new Map;this.Ib=new Map;this.nd=b;this.pa=a;c.forEach(([g,h])=>{this.Ib.set(g,h);0<h&&++this.nb});d.forEach(([g,h])=>{this.Jb.set(g,h);0<h&&++this.nb})}slidesToView(){return this.pa}slidesWeight(){return 0<this.pa?this.nd:0}quizzes(){return new Map(this.Ib)}scenarios(){return new Map(this.Jb)}totalScore(){return this.qd}passingScore(){return this.dd}};function Zd(a){return{maxScore:a.j.totalScore(),passingScore:a.j.passingScore(),slidesToView:a.j.slidesToView(),Tb:Xd(a.j),Kc:0<a.j.pa,quizzes:a.j.quizzes(),scenarios:a.j.scenarios(),cb:[...a.j.quizzes(),...a.j.scenarios()].filter(([,b])=>0<b).map(([b])=>b)}}
class $d extends U{constructor({yd:a,ia:b}){super();this.h=b;this.j=new Yd(a.slidesToView,a.slidesWeight,a.quizzes,a.scenarios,a.totalScore,a.passingScore);this.Ca=null;this.V=T(this);F(this,this.h.Ka,this.ga,this);F(this,this.h.L,this.ca,this);this.ga()}courseGrade(){return this.Ca}courseGradeChangedEvent(){return this.V}ca(a){"quizCompleted"!=a&&"scenarioCompleted"!=a||this.ga()}ga(){var a=this.pb(),b=this.Pa(),c=this.la(),d=this.j.passingScore(),e=this.ob(),f;a:{for(f=0;f<this.h.jb();++f)if(this.h.l.ra.includes(f)&&
!this.h.l.X.includes(f)||(this.j.quizzes().has(f)||this.j.scenarios().has(f))&&!this.h.wa()[`${f}`]){f=!1;break a}f=!0}this.Ca={progress:a,awardedPercent:b,awardedScore:c,passingScore:d,passed:e,completed:f,context:Zd(this)};this.V.o()}pb(){return this.h.l.X.length/this.h.l.ra.length}ob(){var a;if(Xd(this.j)){if(!(a="never"==this.h.resumeMode())){a:{const b=[...this.h.l.X,...this.h.l.ab];if(0<this.j.pa&&0<b.length)a=!0;else{a=Object.entries(this.h.wa());for(const [c,d]of a)if(d.rated&&b.includes(+c)){a=
!0;break a}a=!1}}a||(a=this.h,a=a.Y?yd(a.Y)>=a.Y.Ra:!1)}a=a?this.la()>=this.j.passingScore():null}else a=null;return a}la(){return this.Pa()*this.j.totalScore()}Pa(){if(Xd(this.j)){var a=Object.entries(this.h.wa());var b=0;for(const [e,f]of a){var c=void 0;a=null!=(c=f.Wb)?c:1;const g=parseInt(e,10);var d=void 0;const h=null!=(d=this.j.quizzes().get(g))?d:this.j.scenarios().get(g);b+=a*h}b+=0<this.j.pa?this.h.l.X.length/this.h.l.ra.length*this.j.slidesWeight():0;c=Array.from(this.j.Ib.values());c=
Wd(c);d=Array.from(this.j.Jb.values());b/=c+Wd(d)+this.j.slidesWeight()}else b=0;return b}};class ae extends U{constructor(a){super();this.i=a;this.Va=T(this);this.yc=T(this);F(this,this.i.stateChangedEvent(),b=>this.Va.o(b));F(this,this.i.view().playbackController().slideChangeEvent(),b=>this.yc.o(b))}jb(){return this.i.presentation().slides().count()}currentSlideIndex(){return this.i.view().playbackController().currentSlideIndex()}quizPlayer(){return this.i.view().playbackController().quizPlayer()}scenarioPlayer(){return this.i.view().playbackController().scenarioPlayer()}};class be extends ae{constructor(a){super(a);this.Ec=T(this);this.Dc=T(this);this.ec=T(this);F(this,this.i.startupEvent(),b=>this.Ec.o(b));F(this,this.i.startupCompletedEvent(),(b,c)=>this.Dc.o(b,c));F(this,this.i.closeWindowEvent(),b=>this.ec.o(b))}firstSlideIndex(){return this.i.view().playbackController().firstSlideIndex()}getSlide(a){return this.i.presentation().slides().getSlide(a)}getSlidePlaybackController(a){return this.i.view().playbackController().getSlidePlaybackController(a)}startupEvent(){return this.Ec}startupCompletedEvent(){return this.Dc}closeWindowEvent(){return this.ec}setVolume(a){this.i.view().soundController().setVolume(a)}interactionPlayer(){return this.i.view().playbackController().interactionPlayer()}updateCurrentSlideState(){this.i.view().playbackController().updateCurrentSlideState();
this.Va.o()}};class ce{constructor(a,b,c,d){this.Xc=d;this.ld=c;this.rb=b;this.Nb=a}timeLimit(){return this.Nb}message(){return this.Xc}};function yd(a){return a.started()?Date.now()-a.Ya+a.oa:a.$a}
class de extends U{constructor(a,b){super();this.$a=this.qb=0;this.Za=-1;this.oa=this.Ya=0;this.Mb=!1;this.Ob=T(this);this.Fc=b;this.Ra=a}started(){return this.Mb}start(a){this.started()||(this.$a=this.oa=a||0,a=this.oa>=this.Ra,a&&this.Fc||(this.Mb=!0,this.Ya=Date.now(),a||(this.Za=setTimeout(this.Fb.bind(this),this.Ra-this.oa))))}Fb(){this.Fc&&(this.stop(),this.$a=this.Ra);this.Ob.o()}stop(){this.started()&&(this.Mb=!1,0<this.Za&&(clearTimeout(this.Za),this.Za=-1),this.qb=Date.now()-this.Ya,this.$a=
this.qb+this.oa)}};function ee(a,b){a.kb&&(a.kb=!1,a.Cc&&(a.qa.stop(),a.C.updateCurrentSlideState(),a.U()),b?a.G.suspend():a.G.terminate())}
class Y extends U{constructor(a){super();this.fc=a;this.ea=null;this.Cc=this.kb=!1;this.T="never"!=a.resumeMode;this.S=!1;let b,c,d,e;this.fa=new ce(1E3*(null!=(b=a.timeLimit)?b:3600),null!=(c=a.exitOnTimeout)?c:!1,null!=(d=a.showMessageOnTimeout)?d:!1,null!=(e=a.timeoutMessage)?e:"");this.qa=new de(this.fa.Nb,this.fa.rb);this.ic=this.C=null}start(a){if(this.S){const b=[],c=a.presentation().slides();for(let d=0;d<c.visibleSlidesCount();++d){const e=c.getVisibleSlide(d).index();b.push(e)}this.l=new nd(b);
this.C=new be(a);Ib(this,this.C);this.kb=!0;F(this,this.C.startupCompletedEvent(),this.cd,this);F(this,this.C.closeWindowEvent(),this.$c,this);this.uc()}}Hc(){ee(this,this.T)}uc(){}cd(a,b){this.Cc=!0;"resumePlayback"==a&&this.ea&&(this.l=this.ea);a=new xd({Fd:this.C,Bd:this.l,vd:this.qa,resumeMode:this.fc.resumeMode,Zb:this.hc()});var c=this.fc;var d;(d=jd(c)?c:null)?(d=new Gd(d,a),d=d.Sb.length?new Td({zd:d,ia:a}):new Ud(a)):d=null;d||(d=(c=kd(id,"legacyGradingParamsScheme").validate("legacyGradingParamsScheme",
c)?c:null)?new $d({yd:c,ia:a}):null);c=d;if(!c)throw Error("cannot create grading module, possibly incorrect grading settings format");this.ic=c;F(this,a.Ka,this.mc,this);F(this,a.L,this.ca,this);a=this.l.duration();this.qa.started()||(F(this,this.qa.Ob,this.Fb,this),this.qa.start(a));a=this.C.currentSlideIndex();a==b&&this.mc(a);F(this,this.C.Va,this.Db,this)}hc(){return null}ca(a,b){switch(a){case "quizStarted":a=X("quizSession",b);X("playerId",b);"normal"==this.aa&&a.quiz().title();break;case "quizModeChanged":this.Eb();
break;case "quizQuestionSubmitted":a=X("questionState",b);b=X("playerId",b);if(a.initiated()){const e=this.C.currentSlideIndex()+1;var c=a.slide().type(),d=this.lb;if(a=(new mc[c]({Id:"1.2"==d||"aicc"==d,Nd:"tincan"==d,slideIndex:e})).create(a))b="/quizzes/"+b,a.id(),this.G.bb(b,a)}break;case "quizCompleted":this.rc();break;case "scenarioStarted":a=X("scenarioSession",b);"normal"==this.aa&&(a.scenario().id(),a.scenario().title());break;case "scenarioReplySelected":this.Ta(null==b?void 0:b.scenarioReplay);
break;case "scenarioCompleted":this.Sa()}}$c(a){this.bc(a);this.Hc()}bc(){}Fb(){fe(this);this.fa.ld&&alert(this.fa.message());this.fa.rb&&ee(this,!1)}Eb(){}rc(){}Sa(){const a=this.C.scenarioPlayer().currentSession().currentSceneState().scene();null!=a&&(a.speech()&&0<a.speech().length||a.message()&&0<a.message().text().length)&&this.Ta();this.lc()}lc(){}}Y.prototype.closeLms=Y.prototype.Hc;Y.prototype.start=Y.prototype.start;function ge(a,b){var c=new nd(C(b,"V",[]));c.$=C(b,"d",0);c.Qa=C(b,"l",-1);c.X=C(b,"v",[]);c.ab=C(b,"vh",[]);c.Ua=C(b,"p",null);const d={};b=C(b,"q",{});for(const f in b){var e=b[f];d[f]=new W(e.e,e.t,e.p,e.m,e.r,e.s)}c.Xa=d;a.ea=c;c=a.ea.duration();if(a.fa.rb&&c>=a.fa.Nb)alert("You have already exceeded available time for viewing this content."),gd(),dd();else return a.ea.Ua}
function fe(a){const b=a.ic.courseGrade(),c=b.context;if(c.Tb&&null!=b.awardedPercent&&null!=b.awardedScore){let f;a.G.xa(b.awardedPercent,0,null!=(f=c.maxScore)?f:0,b.awardedScore)}const {passed:d,completed:e}=a.rd(b.passed,b.completed);a.G.ka(d,e);a.U();a.G.commit()}
class he extends Y{constructor(a,b){super(b);this.Ia=null;this.Ac=new Ob;this.lb=a;this.aa="";var c=new rb(b.flags),d=b.tincan.auth,e=d.login;e&&Oa(e,Na,La);(d=d.password)&&Oa(d,Ma,Ka);c=new sb("ispring://presentations/"+encodeURIComponent(b.presentationId),c,b.tincan.i18n,this.T);try{a:{var f=this.Ac;const h=window.iSpring.LMSAPI;switch(a){case "1.2":var g=new h.Scorm12Api(c);break a;case "2004":g=new h.Scorm2004Api(c);break a;case "aicc":g=new h.AiccApi(c);break a;case "tincan":g=new h.TinCanApi(c,
f);break a;case "cmi-5":g=new h.Cmi5Api(c,f);break a;default:throw Error("unknown api");}}this.G=g}catch(h){pb()&&alert(h)}this.rd=ld(a,b)}initialize(a){this.Ia=a;null==this.G?this.nc():this.G.initialize(this.ad.bind(this),this.nc.bind(this))}ad(){this.aa="normal";var a=null;var b=this.G.B.getValue("cmi.suspend_data");if(b)a:{b=LZString.decompressFromBase64(b);try{const d=JSON.parse(b);var c="object"==typeof d?d:null;break a}catch(d){}c=null}else c=null;switch(this.aa){case "browse":a=null;break;
case "review":c&&(a=ge(this,c));break;case "normal":this.T&&c&&(a=ge(this,c))}window.launchMode=this.aa;void 0!==a&&(this.S=!0,this.Ia&&this.Ia(a))}nc(){this.Ia&&this.Ia()}uc(){F(this,this.C.startupEvent(),this.bd,this);this.Ac.pd.o(this.C.i.presentation().title())}bd(a){const b=(this.T||"review"==this.aa)&&this.ea?this.ea.lastViewedSlide():-1;0<=b?(a.setSlideIndex(b),a.setAction("resumePlayback")):(a.setSlideIndex(this.C.firstSlideIndex()),a.setAction("gotoSlide"))}mc(a){"normal"==this.aa&&(a=this.C.getSlide(a),
a.title()&&a.title());fe(this)}U(){var a=this.qa;a=a.started()?Date.now()-a.Ya:a.qb;this.G.B.u("cmi.core.session_time",cd(a/1E3));var b=this.l.Vb();a=this.G.B;b=Ic(new Hc,b);b=LZString.compressToBase64(b);a.u("cmi.suspend_data",b)}lc(){const a=this.C.scenarioPlayer().currentSession();a.duration();a.scenario().settings().evaluationSettings().enabled()&&(a.maxScore(),a.userScore(),a.scenarioPassed());a.scenario().id();a.scenario().title();fe(this)}Ta(a){const b=this.C.scenarioPlayer().currentSession(),
c=b.currentSceneState().scene();null!=c&&(new Zc(b,c,"1.2"==this.lb,a)).create().forEach(d=>{if("tincan"==this.lb||"choice"==d.type()){var e="/scenarios/"+b.scenario().id();d.id();d.type();this.G.bb(e,d)}})}rc(){const a=this.C.quizPlayer(),b=a.currentSession();b.quizDuration();const c=b.evaluation();c&&(c.maxScore(),c.awardedScore(),c.quizPassed(),(new oc(this.G,b)).M.settings());a.id();b.quiz().title();fe(this)}bc(a){a.preventAction()}Db(a){null==a||a.preventAction();this.U()}hc(){const a=this.G.Zb();
return a?{id:a.id(),name:a.name(),email:a.email()}:null}}he.prototype.initialize=he.prototype.initialize;let ie=null;A("iSpring.LMS.create",function(a,b,c){return ie=new he(b,c)});A("iSpring.LMS.instance",()=>ie);const Z={id:"id",type:"type",score:"weighting",ud:"correct_responses.%INDEX%.pattern",$b:"student_response",result:"result",duration:"latency",ac:"time"},je={};A("Tincan.MobileHttpTransport.onRequestComplete",function(a,b,c){const d=null.Vc[a];if(null==d)return"";delete null.Vc[a];Dc(()=>{if(b)d.onload(c);else d.onerror()},10);return"ok"});class ke{constructor(a,b){this.Aa=a;this.Gb=!1;this.mb=0;this.T=b}initialize(){try{return"true"==this.Aa.LMSInitialize("").toString()}catch(a){}return!1}terminate(a){this.u("cmi.core.exit",a?this.Gb?"":"suspend":"");this.commit();try{return"true"==this.Aa.LMSFinish("").toString()}catch(b){}return!1}commit(){0==this.mb&&this.u("cmi.core.exit",this.T?this.Gb?"":"suspend":"");try{const a="true"==this.Aa.LMSCommit("").toString();this.mb+=1;return a}catch(a){}return!1}ib(a){this.Gb=a}getValue(a){try{return this.Aa.LMSGetValue(a)}catch(b){}return""}u(a,
b){"number"===typeof b&&(b=parseFloat(b.toFixed(2))+"");try{return"true"==this.Aa.LMSSetValue(a,b).toString()}catch(c){}return!1}};class le{constructor(a){const b=bd();this.K=b?new ke(b,a):null;this.S=!1}initialize(){return this.S?!0:this.S=null!=this.K?this.K.initialize():!1}terminate(a){return null!=this.K?this.K.terminate(a):!1}commit(){return null!=this.K?this.K.commit():!1}getValue(a){return null!=this.K?this.K.getValue(a):""}u(a,b){return null!=this.K?this.K.u(a,b):!1}xa(a,b,c){this.u("cmi.core.score.raw",a);this.u("cmi.core.score.min",b);this.u("cmi.core.score.max",c)}ka(a,b){null!==a?this.u("cmi.core.lesson_status",a?
"passed":"failed"):null!==b?this.u("cmi.core.lesson_status",b?"completed":"incomplete"):this.u("cmi.core.lesson_status","unknown")}ib(a){this.K.ib(a)}bb(a){var b=a.id();if(a.id()in je)var c=je[b];else c=parseInt(this.getValue("cmi.interactions._count"),10),je[b]=c;if(!(0>c)){b="cmi.interactions."+c+".";c=a.id()+"_"+a.description();c=I(c.substr(0,255));this.u(b+Z.id,c);this.u(b+Z.type,a.type());this.u(b+Z.score,a.score());c=a.I||[];for(var d=0;d<c.length;++d){var e=Z.ud.replace("%INDEX%",d);this.u(b+
e,c[d])}c=a.$b();null!=c&&this.u(b+Z.$b,c);c=this.u;d=b+Z.result;e=a.result();c.call(this,d,"incorrect"==e?"wrong":e);c=a.duration();null!==c&&this.u(b+Z.duration,cd(c/1E3));a=a.ac();null!==a&&this.u(b+Z.ac,cd(3600*a.getHours()+60*a.getMinutes()+a.getSeconds()))}}};class me{constructor(){this.B=null}Ic(){throw Error("unimplemented abstract method");}initialize(a,b){if(this.B=this.Ic()){var c=this.B;c.S?a():null!=c.K?(c.S=c.K.initialize(),c.S?a():b()):(c.S=!1,b())}else b()}commit(){this.B.commit()}suspend(){this.B.terminate(!0);gd();dd()}terminate(){this.B.terminate(!1);gd();dd()}ka(a,b){this.B.ib(a);this.B.ka(a,b)}xa(a,b,c,d){this.B.xa(d,b,c,a)}bb(a,b){this.B.bb(b)}Zb(){var a=this.B;return new nc(a.getValue("cmi.core.student_id"),a.getValue("cmi.core.student_name"))}}
;class ne extends me{constructor(a){super();this.Kb=a.Kb;this.T=a.T}Ic(){return new le(this.T)}ka(a,b){const c=null===a;b=c?b:a;this.B.ib(a);null!==b?((a=c)||(a=this.Kb,a=!(null!=a.vc?a.vc&(b?2:1):1)),a?this.B.ka(null,b):this.B.ka(b,null)):this.B.ka(null,null)}}A("iSpring.LMSAPI.Scorm12Api",ne);})();
var LZString={_keyStr:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",_f:String.fromCharCode,compressToBase64:function(e){if(e==null)return"";var t="";var n,r,i,s,o,u,a;var f=0;e=LZString.compress(e);while(f<e.length*2){if(f%2==0){n=e.charCodeAt(f/2)>>8;r=e.charCodeAt(f/2)&255;if(f/2+1<e.length)i=e.charCodeAt(f/2+1)>>8;else i=NaN}else{n=e.charCodeAt((f-1)/2)&255;if((f+1)/2<e.length){r=e.charCodeAt((f+1)/2)>>8;i=e.charCodeAt((f+1)/2)&255}else r=i=NaN}f+=3;s=n>>2;o=(n&3)<<4|r>>4;u=(r&15)<<2|i>>6;a=i&63;if(isNaN(r)){u=a=64}else if(isNaN(i)){a=64}t=t+LZString._keyStr.charAt(s)+LZString._keyStr.charAt(o)+LZString._keyStr.charAt(u)+LZString._keyStr.charAt(a)}return t},decompressFromBase64:function(e){if(e==null)return"";var t="",n=0,r,i,s,o,u,a,f,l,c=0,h=LZString._f;e=e.replace(/[^A-Za-z0-9\+\/\=]/g,"");while(c<e.length){u=LZString._keyStr.indexOf(e.charAt(c++));a=LZString._keyStr.indexOf(e.charAt(c++));f=LZString._keyStr.indexOf(e.charAt(c++));l=LZString._keyStr.indexOf(e.charAt(c++));i=u<<2|a>>4;s=(a&15)<<4|f>>2;o=(f&3)<<6|l;if(n%2==0){r=i<<8;if(f!=64){t+=h(r|s)}if(l!=64){r=o<<8}}else{t=t+h(r|i);if(f!=64){r=s<<8}if(l!=64){t+=h(r|o)}}n+=3}return LZString.decompress(t)},compressToUTF16:function(e){if(e==null)return"";var t="",n,r,i,s=0,o=LZString._f;e=LZString.compress(e);for(n=0;n<e.length;n++){r=e.charCodeAt(n);switch(s++){case 0:t+=o((r>>1)+32);i=(r&1)<<14;break;case 1:t+=o(i+(r>>2)+32);i=(r&3)<<13;break;case 2:t+=o(i+(r>>3)+32);i=(r&7)<<12;break;case 3:t+=o(i+(r>>4)+32);i=(r&15)<<11;break;case 4:t+=o(i+(r>>5)+32);i=(r&31)<<10;break;case 5:t+=o(i+(r>>6)+32);i=(r&63)<<9;break;case 6:t+=o(i+(r>>7)+32);i=(r&127)<<8;break;case 7:t+=o(i+(r>>8)+32);i=(r&255)<<7;break;case 8:t+=o(i+(r>>9)+32);i=(r&511)<<6;break;case 9:t+=o(i+(r>>10)+32);i=(r&1023)<<5;break;case 10:t+=o(i+(r>>11)+32);i=(r&2047)<<4;break;case 11:t+=o(i+(r>>12)+32);i=(r&4095)<<3;break;case 12:t+=o(i+(r>>13)+32);i=(r&8191)<<2;break;case 13:t+=o(i+(r>>14)+32);i=(r&16383)<<1;break;case 14:t+=o(i+(r>>15)+32,(r&32767)+32);s=0;break}}return t+o(i+32)},decompressFromUTF16:function(e){if(e==null)return"";var t="",n,r,i=0,s=0,o=LZString._f;while(s<e.length){r=e.charCodeAt(s)-32;switch(i++){case 0:n=r<<1;break;case 1:t+=o(n|r>>14);n=(r&16383)<<2;break;case 2:t+=o(n|r>>13);n=(r&8191)<<3;break;case 3:t+=o(n|r>>12);n=(r&4095)<<4;break;case 4:t+=o(n|r>>11);n=(r&2047)<<5;break;case 5:t+=o(n|r>>10);n=(r&1023)<<6;break;case 6:t+=o(n|r>>9);n=(r&511)<<7;break;case 7:t+=o(n|r>>8);n=(r&255)<<8;break;case 8:t+=o(n|r>>7);n=(r&127)<<9;break;case 9:t+=o(n|r>>6);n=(r&63)<<10;break;case 10:t+=o(n|r>>5);n=(r&31)<<11;break;case 11:t+=o(n|r>>4);n=(r&15)<<12;break;case 12:t+=o(n|r>>3);n=(r&7)<<13;break;case 13:t+=o(n|r>>2);n=(r&3)<<14;break;case 14:t+=o(n|r>>1);n=(r&1)<<15;break;case 15:t+=o(n|r);i=0;break}s++}return LZString.decompress(t)},compress:function(e){if(e==null)return"";var t,n,r={},i={},s="",o="",u="",a=2,f=3,l=2,c="",h=0,p=0,d,v=LZString._f;for(d=0;d<e.length;d+=1){s=e.charAt(d);if(!Object.prototype.hasOwnProperty.call(r,s)){r[s]=f++;i[s]=true}o=u+s;if(Object.prototype.hasOwnProperty.call(r,o)){u=o}else{if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}r[o]=f++;u=String(s)}}if(u!==""){if(Object.prototype.hasOwnProperty.call(i,u)){if(u.charCodeAt(0)<256){for(t=0;t<l;t++){h=h<<1;if(p==15){p=0;c+=v(h);h=0}else{p++}}n=u.charCodeAt(0);for(t=0;t<8;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}else{n=1;for(t=0;t<l;t++){h=h<<1|n;if(p==15){p=0;c+=v(h);h=0}else{p++}n=0}n=u.charCodeAt(0);for(t=0;t<16;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}delete i[u]}else{n=r[u];for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}}a--;if(a==0){a=Math.pow(2,l);l++}}n=2;for(t=0;t<l;t++){h=h<<1|n&1;if(p==15){p=0;c+=v(h);h=0}else{p++}n=n>>1}while(true){h=h<<1;if(p==15){c+=v(h);break}else p++}return c},decompress:function(e){if(e==null)return"";if(e=="")return null;var t=[],n,r=4,i=4,s=3,o="",u="",a,f,l,c,h,p,d,v=LZString._f,m={string:e,val:e.charCodeAt(0),position:32768,index:1};for(a=0;a<3;a+=1){t[a]=a}l=0;h=Math.pow(2,2);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(n=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}d=v(l);break;case 2:return""}t[3]=d;f=u=d;while(true){if(m.index>m.string.length){return""}l=0;h=Math.pow(2,s);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}switch(d=l){case 0:l=0;h=Math.pow(2,8);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 1:l=0;h=Math.pow(2,16);p=1;while(p!=h){c=m.val&m.position;m.position>>=1;if(m.position==0){m.position=32768;m.val=m.string.charCodeAt(m.index++)}l|=(c>0?1:0)*p;p<<=1}t[i++]=v(l);d=i-1;r--;break;case 2:return u}if(r==0){r=Math.pow(2,s);s++}if(t[d]){o=t[d]}else{if(d===i){o=f+f.charAt(0)}else{return null}}u+=o;t[i++]=f+o.charAt(0);r--;f=o;if(r==0){r=Math.pow(2,s);s++}}}};if(typeof module!=="undefined"&&module!=null){module.exports=LZString}
/* ajv 4.11.5: Another JSON Schema Validator */
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r;r="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,r.Ajv=e()}}(function(){var e;return function e(r,t,a){function s(i,n){if(!t[i]){if(!r[i]){var l="function"==typeof require&&require;if(!n&&l)return l(i,!0);if(o)return o(i,!0);var c=new Error("Cannot find module '"+i+"'");throw c.code="MODULE_NOT_FOUND",c}var h=t[i]={exports:{}};r[i][0].call(h.exports,function(e){var t=r[i][1][e];return s(t?t:e)},h,h.exports,e,r,t,a)}return t[i].exports}for(var o="function"==typeof require&&require,i=0;i<a.length;i++)s(a[i]);return s}({1:[function(e,r,t){"use strict";function a(e,r){r!==!1&&(r=!0);var t,s=e.async,o=e.transpile;switch(typeof o){case"string":var i=m[o];if(!i)throw new Error("bad transpiler: "+o);return e._transpileFunc=i(e,r);case"undefined":case"boolean":if("string"==typeof s){if(t=p[s],!t)throw new Error("bad async mode: "+s);return e.transpile=t(e,r)}for(var n=0;n<v.length;n++){var l=v[n];if(a(l,!1))return d.copy(l,e),e.transpile}throw new Error("generators, nodent and regenerator are not available");case"function":return e._transpileFunc=e.transpile;default:throw new Error("bad transpiler: "+o)}}function s(e,r){try{return new Function("(function*(){})()")(),!0}catch(e){if(r)throw new Error("generators not supported")}}function o(e,r){try{return new Function("(async function(){})()")(),!0}catch(e){if(r)throw new Error("es7 async functions not supported")}}function i(r,t){try{if(!u){u=e("regenerator"),u.runtime()}return r.async&&r.async!==!0||(r.async="es7"),n}catch(e){if(t)throw new Error("regenerator not available")}}function n(e){return u.compile(e).code}function l(r,t){try{if(!f){f=e("nodent")({log:!1,dontInstallRequireHook:!0})}return"es7"!=r.async&&(r.async&&r.async!==!0&&console.warn("nodent transpiles only es7 async functions"),r.async="es7"),c}catch(e){if(t)throw new Error("nodent not available")}}function c(e){return f.compile(e,"",{promises:!0,sourcemap:!1}).code}function h(e,r){function t(e,r,a){function o(a){function o(a,o){if(a)return r(a);if(!s._refs[i]&&!s._schemas[i])try{s.addSchema(o,i)}catch(e){return void r(e)}t(e,r)}var i=a.missingSchema;if(s._refs[i]||s._schemas[i])return r(new Error("Schema "+i+" is loaded but "+a.missingRef+" cannot be resolved"));var n=s._loadingSchemas[i];n?"function"==typeof n?s._loadingSchemas[i]=[n,o]:n[n.length]=o:(s._loadingSchemas[i]=o,s._opts.loadSchema(i,function(e,r){var t=s._loadingSchemas[i];if(delete s._loadingSchemas[i],"function"==typeof t)t(e,r);else for(var a=0;a<t.length;a++)t[a](e,r)}))}function i(e,t){if(!a)return r(e,t);setTimeout(function(){r(e,t)})}var n;try{n=s.compile(e)}catch(e){return void(e.missingSchema?o(e):i(e))}i(null,n)}var a,s=this;try{a=this._addSchema(e)}catch(e){return void setTimeout(function(){r(e)})}if(a.validate)setTimeout(function(){r(null,a.validate)});else{if("function"!=typeof this._opts.loadSchema)throw new Error("options.loadSchema should be a function");t(e,r,!0)}}r.exports={setup:a,compile:h};var u,f,d=e("./compile/util"),p={"*":s,"co*":s,es7:o},m={nodent:l,regenerator:i},v=[{async:"co*"},{async:"es7",transpile:"nodent"},{async:"co*",transpile:"regenerator"}]},{"./compile/util":11}],2:[function(e,r,t){"use strict";var a=r.exports=function(){this._cache={}};a.prototype.put=function(e,r){this._cache[e]=r},a.prototype.get=function(e){return this._cache[e]},a.prototype.del=function(e){delete this._cache[e]},a.prototype.clear=function(){this._cache={}}},{}],3:[function(e,r,t){"use strict";r.exports={$ref:e("../dotjs/ref"),allOf:e("../dotjs/allOf"),anyOf:e("../dotjs/anyOf"),dependencies:e("../dotjs/dependencies"),enum:e("../dotjs/enum"),format:e("../dotjs/format"),items:e("../dotjs/items"),maximum:e("../dotjs/_limit"),minimum:e("../dotjs/_limit"),maxItems:e("../dotjs/_limitItems"),minItems:e("../dotjs/_limitItems"),maxLength:e("../dotjs/_limitLength"),minLength:e("../dotjs/_limitLength"),maxProperties:e("../dotjs/_limitProperties"),minProperties:e("../dotjs/_limitProperties"),multipleOf:e("../dotjs/multipleOf"),not:e("../dotjs/not"),oneOf:e("../dotjs/oneOf"),pattern:e("../dotjs/pattern"),properties:e("../dotjs/properties"),required:e("../dotjs/required"),uniqueItems:e("../dotjs/uniqueItems"),validate:e("../dotjs/validate")}},{"../dotjs/_limit":14,"../dotjs/_limitItems":15,"../dotjs/_limitLength":16,"../dotjs/_limitProperties":17,"../dotjs/allOf":18,"../dotjs/anyOf":19,"../dotjs/dependencies":22,"../dotjs/enum":23,"../dotjs/format":24,"../dotjs/items":25,"../dotjs/multipleOf":26,"../dotjs/not":27,"../dotjs/oneOf":28,"../dotjs/pattern":29,"../dotjs/properties":31,"../dotjs/ref":32,"../dotjs/required":33,"../dotjs/uniqueItems":35,"../dotjs/validate":36}],4:[function(e,r,t){"use strict";r.exports=function e(r,t){if(r===t)return!0;var a,s=Array.isArray(r),o=Array.isArray(t);if(s&&o){if(r.length!=t.length)return!1;for(a=0;a<r.length;a++)if(!e(r[a],t[a]))return!1;return!0}if(s!=o)return!1;if(r&&t&&"object"==typeof r&&"object"==typeof t){var i=Object.keys(r);if(i.length!==Object.keys(t).length)return!1;var n=r instanceof Date,l=t instanceof Date;if(n&&l)return r.getTime()==t.getTime();if(n!=l)return!1;var c=r instanceof RegExp,h=t instanceof RegExp;if(c&&h)return r.toString()==t.toString();if(c!=h)return!1;for(a=0;a<i.length;a++)if(!Object.prototype.hasOwnProperty.call(t,i[a]))return!1;for(a=0;a<i.length;a++)if(!e(r[i[a]],t[i[a]]))return!1;return!0}return!1}},{}],5:[function(e,r,t){"use strict";function a(e){e="full"==e?"full":"fast";var r=d.copy(a[e]);for(var t in a.compare)r[t]={validate:r[t],compare:a.compare[t]};return r}function s(e){var r=e.match(p);if(!r)return!1;var t=+r[1],a=+r[2];return t>=1&&t<=12&&a>=1&&a<=m[t]}function o(e,r){var t=e.match(v);if(!t)return!1;var a=t[1],s=t[2],o=t[3],i=t[5];return a<=23&&s<=59&&o<=59&&(!r||i)}function i(e){var r=e.split(w);return 2==r.length&&s(r[0])&&o(r[1],!0)}function n(e){return e.length<=255&&y.test(e)}function l(e){return j.test(e)&&g.test(e)}function c(e){try{return new RegExp(e),!0}catch(e){return!1}}function h(e,r){if(e&&r)return e>r?1:e<r?-1:e===r?0:void 0}function u(e,r){if(e&&r&&(e=e.match(v),r=r.match(v),e&&r))return e=e[1]+e[2]+e[3]+(e[4]||""),r=r[1]+r[2]+r[3]+(r[4]||""),e>r?1:e<r?-1:e===r?0:void 0}function f(e,r){if(e&&r){e=e.split(w),r=r.split(w);var t=h(e[0],r[0]);if(void 0!==t)return t||u(e[1],r[1])}}var d=e("./util"),p=/^\d\d\d\d-(\d\d)-(\d\d)$/,m=[0,31,29,31,30,31,30,31,31,30,31,30,31],v=/^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i,y=/^[0-9a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?(\.[0-9a-z](?:(?:[-0-9a-z]{0,61})?[0-9a-z])?)*$/i,g=/^(?:[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,P=/^(?:urn\:uuid\:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,E=/^(?:\/(?:[^~\/]|~0|~1)*)*$|^\#(?:\/(?:[a-z0-9_\-\.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,b=/^(?:0|[1-9][0-9]*)(?:\#|(?:\/(?:[^~\/]|~0|~1)*)*)$/;r.exports=a,a.fast={date:/^\d\d\d\d-[0-1]\d-[0-3]\d$/,time:/^[0-2]\d:[0-5]\d:[0-5]\d(?:\.\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(?:\.\d+)?(?:z|[+-]\d\d:\d\d)$/i,uri:/^(?:[a-z][a-z0-9+-.]*)?(?:\:|\/)\/?[^\s]*$/i,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:y,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:c,uuid:P,"json-pointer":E,"relative-json-pointer":b},a.full={date:s,time:o,"date-time":i,uri: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:n,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:c,uuid:P,"json-pointer":E,"relative-json-pointer":b},a.compare={date:h,time:u,"date-time":f};var w=/t|\s/i,j=/\/|\:/},{"./util":11}],6:[function(e,r,t){"use strict";function a(){if(void 0===d){try{d=e("js-beautify").js_beautify}catch(e){d=!1}}}function s(e,r,t,n){function j(){var e=N.validate,r=e.apply(null,arguments);return j.errors=e.errors,r}function S(e,t,o,i){var n=!t||t&&t.schema==e;if(t.schema!=r.schema)return s.call(k,e,t,o,i);var v=e.$async===!0;v&&!q.transpile&&y.setup(q);var j=g({isTop:!0,schema:e,isRoot:n,baseId:i,root:t,schemaPath:"",errSchemaPath:"#",errorPath:'""',RULES:H,validate:g,util:m,resolve:p,resolveRef:$,usePattern:R,useDefault:I,useCustomRule:A,opts:q,formats:F,self:k});j=f(D,h)+f(Q,l)+f(V,c)+f(U,u)+j,q.beautify&&(a(),d?j=d(j,q.beautify):console.error('"npm install js-beautify" to use beautify option'));var S,x,_=q._transpileFunc;try{x=v&&_?_(j):j;S=new Function("self","RULES","formats","root","refVal","defaults","customRules","co","equal","ucs2length","ValidationError",x)(k,H,F,r,D,V,U,P,b,E,w),D[0]=S}catch(e){throw console.error("Error compiling schema, function code:",x),e}return S.schema=e,S.errors=null,S.refs=L,S.refVal=D,S.root=n?S:t,v&&(S.$async=!0),T&&(S.sourceCode=j),q.sourceCode===!0&&(S.source={patterns:Q,defaults:V}),S}function $(e,a,o){a=p.url(e,a);var i,n,l=L[a];if(void 0!==l)return i=D[l],n="refVal["+l+"]",O(i,n);if(!o&&r.refs){var c=r.refs[a];if(void 0!==c)return i=r.refVal[c],n=x(a,i),O(i,n)}n=x(a);var h=p.call(k,S,r,a);if(!h){var u=t&&t[a];u&&(h=p.inlineRef(u,q.inlineRefs)?u:s.call(k,u,r,t,e))}return h?(_(a,h),O(h,n)):void 0}function x(e,r){var t=D.length;return D[t]=r,L[e]=t,"refVal"+t}function _(e,r){D[L[e]]=r}function O(e,r){return"object"==typeof e?{code:r,schema:e,inline:!0}:{code:r,$async:e&&e.$async}}function R(e){var r=C[e];return void 0===r&&(r=C[e]=Q.length,Q[r]=e),"pattern"+r}function I(e){switch(typeof e){case"boolean":case"number":return""+e;case"string":return m.toQuotedString(e);case"object":if(null===e)return"null";var r=v(e),t=z[r];return void 0===t&&(t=z[r]=V.length,V[t]=e),"default"+t}}function A(e,r,t,a){var s=e.definition.validateSchema;if(s&&k._opts.validateSchema!==!1){if(!s(r)){var o="keyword schema is invalid: "+k.errorsText(s.errors);if("log"!=k._opts.validateSchema)throw new Error(o);console.error(o)}}var i,n=e.definition.compile,l=e.definition.inline,c=e.definition.macro;n?i=n.call(k,r,t,a):c?(i=c.call(k,r,t,a),q.validateSchema!==!1&&k.validateSchema(i,!0)):i=l?l.call(k,a,e.keyword,r,t):e.definition.validate;var h=U.length;return U[h]=i,{code:"customRule"+h,validate:i}}var k=this,q=this._opts,D=[void 0],L={},Q=[],C={},V=[],z={},U=[],T=q.sourceCode!==!1;r=r||{schema:e,refVal:D,refs:L};var M=o.call(this,e,r,n),N=this._compilations[M.index];if(M.compiling)return N.callValidate=j;var F=this._formats,H=this.RULES;try{var J=S(e,r,t,n);N.validate=J;var G=N.callValidate;return G&&(G.schema=J.schema,G.errors=null,G.refs=J.refs,G.refVal=J.refVal,G.root=J.root,G.$async=J.$async,T&&(G.sourceCode=J.sourceCode)),J}finally{i.call(this,e,r,n)}}function o(e,r,t){var a=n.call(this,e,r,t);return a>=0?{index:a,compiling:!0}:(a=this._compilations.length,this._compilations[a]={schema:e,root:r,baseId:t},{index:a,compiling:!1})}function i(e,r,t){var a=n.call(this,e,r,t);a>=0&&this._compilations.splice(a,1)}function n(e,r,t){for(var a=0;a<this._compilations.length;a++){var s=this._compilations[a];if(s.schema==e&&s.root==r&&s.baseId==t)return a}return-1}function l(e,r){return"var pattern"+e+" = new RegExp("+m.toQuotedString(r[e])+");"}function c(e){return"var default"+e+" = defaults["+e+"];"}function h(e,r){return r[e]?"var refVal"+e+" = refVal["+e+"];":""}function u(e){return"var customRule"+e+" = customRules["+e+"];"}function f(e,r){if(!e.length)return"";for(var t="",a=0;a<e.length;a++)t+=r(a,e);return t}var d,p=e("./resolve"),m=e("./util"),v=e("json-stable-stringify"),y=e("../async"),g=e("../dotjs/validate"),P=e("co"),E=m.ucs2length,b=e("./equal"),w=e("./validation_error");r.exports=s},{"../async":1,"../dotjs/validate":36,"./equal":4,"./resolve":7,"./util":11,"./validation_error":12,co:47,"json-stable-stringify":48}],7:[function(e,r,t){"use strict";function a(e,r,t){var o=this._refs[t];if("string"==typeof o){if(!this._refs[o])return a.call(this,e,r,o);o=this._refs[o]}if(o=o||this._schemas[t],o instanceof g)return n(o.schema,this._opts.inlineRefs)?o.schema:o.validate||this._compile(o);var i,l,c,h=s.call(this,r,t);return h&&(i=h.schema,r=h.root,c=h.baseId),i instanceof g?l=i.validate||e.call(this,i.schema,r,void 0,c):i&&(l=n(i,this._opts.inlineRefs)?i:e.call(this,i,r,void 0,c)),l}function s(e,r){var t=m.parse(r,!1,!0),a=u(t),s=h(e.schema.id);if(a!==s){var n=f(a),l=this._refs[n];if("string"==typeof l)return o.call(this,e,l,t);if(l instanceof g)l.validate||this._compile(l),e=l;else{if(l=this._schemas[n],!(l instanceof g))return;if(l.validate||this._compile(l),n==f(r))return{schema:l,root:e,baseId:s};e=l}if(!e.schema)return;s=h(e.schema.id)}return i.call(this,t,s,e.schema,e)}function o(e,r,t){var a=s.call(this,e,r);if(a){var o=a.schema,n=a.baseId;return e=a.root,o.id&&(n=d(n,o.id)),i.call(this,t,n,o,e)}}function i(e,r,t,a){if(e.hash=e.hash||"","#/"==e.hash.slice(0,2)){for(var o=e.hash.split("/"),i=1;i<o.length;i++){var n=o[i];if(n){if(n=y.unescapeFragment(n),t=t[n],!t)break;if(t.id&&!P[n]&&(r=d(r,t.id)),t.$ref){var l=d(r,t.$ref),c=s.call(this,a,l);c&&(t=c.schema,a=c.root,r=c.baseId)}}}return t&&t!=a.schema?{schema:t,root:a,baseId:r}:void 0}}function n(e,r){return r!==!1&&(void 0===r||r===!0?l(e):r?c(e)<=r:void 0)}function l(e){var r;if(Array.isArray(e)){for(var t=0;t<e.length;t++)if(r=e[t],"object"==typeof r&&!l(r))return!1}else for(var a in e){if("$ref"==a)return!1;if(r=e[a],"object"==typeof r&&!l(r))return!1}return!0}function c(e){var r,t=0;if(Array.isArray(e)){for(var a=0;a<e.length;a++)if(r=e[a],"object"==typeof r&&(t+=c(r)),t==1/0)return 1/0}else for(var s in e){if("$ref"==s)return 1/0;if(E[s])t++;else if(r=e[s],"object"==typeof r&&(t+=c(r)+1),t==1/0)return 1/0}return t}function h(e,r){return r!==!1&&(e=f(e)),u(m.parse(e,!1,!0))}function u(e){var r=e.protocol||"//"==e.href.slice(0,2)?"//":"";return(e.protocol||"")+r+(e.host||"")+(e.path||"")+"#"}function f(e){return e?e.replace(b,""):""}function d(e,r){return r=f(r),m.resolve(e,r)}function p(e){function r(e,t,s){if(Array.isArray(e))for(var o=0;o<e.length;o++)r.call(this,e[o],t+"/"+o,s);else if(e&&"object"==typeof e){if("string"==typeof e.id){var i=s=s?m.resolve(s,e.id):e.id;i=f(i);var n=this._refs[i];if("string"==typeof n&&(n=this._refs[n]),n&&n.schema){if(!v(e,n.schema))throw new Error('id "'+i+'" resolves to more than one schema')}else if(i!=f(t))if("#"==i[0]){if(a[i]&&!v(e,a[i]))throw new Error('id "'+i+'" resolves to more than one schema');a[i]=e}else this._refs[i]=t}for(var l in e)r.call(this,e[l],t+"/"+y.escapeFragment(l),s)}}var t=f(e.id),a={};return r.call(this,e,h(t,!1),t),a}var m=e("url"),v=e("./equal"),y=e("./util"),g=e("./schema_obj");r.exports=a,a.normalizeId=f,a.fullPath=h,a.url=d,a.ids=p,a.inlineRef=n,a.schema=s;var P=y.toHash(["properties","patternProperties","enum","dependencies","definitions"]),E=y.toHash(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum"]),b=/#\/?$/},{"./equal":4,"./schema_obj":9,"./util":11,url:45}],8:[function(e,r,t){"use strict";var a=e("./_rules"),s=e("./util").toHash;r.exports=function(){var e=[{type:"number",rules:["maximum","minimum","multipleOf"]},{type:"string",rules:["maxLength","minLength","pattern","format"]},{type:"array",rules:["maxItems","minItems","uniqueItems","items"]},{type:"object",rules:["maxProperties","minProperties","required","dependencies","properties"]},{rules:["$ref","enum","not","anyOf","oneOf","allOf"]}],r=["type","additionalProperties","patternProperties"],t=["additionalItems","$schema","id","title","description","default"],o=["number","integer","string","array","object","boolean","null"];return e.all=s(r),e.forEach(function(t){t.rules=t.rules.map(function(t){return r.push(t),e.all[t]={keyword:t,code:a[t]}})}),e.keywords=s(r.concat(t)),e.types=s(o),e.custom={},e}},{"./_rules":3,"./util":11}],9:[function(e,r,t){"use strict";function a(e){s.copy(e,this)}var s=e("./util");r.exports=a},{"./util":11}],10:[function(e,r,t){"use strict";r.exports=function(e){for(var r,t=0,a=e.length,s=0;s<a;)t++,r=e.charCodeAt(s++),r>=55296&&r<=56319&&s<a&&(r=e.charCodeAt(s),56320==(64512&r)&&s++);return t}},{}],11:[function(e,r,t){"use strict";function a(e,r){r=r||{};for(var t in e)r[t]=e[t];return r}function s(e,r,t){var a=t?" !== ":" === ",s=t?" || ":" && ",o=t?"!":"",i=t?"":"!";switch(e){case"null":return r+a+"null";case"array":return o+"Array.isArray("+r+")";case"object":return"("+o+r+s+"typeof "+r+a+'"object"'+s+i+"Array.isArray("+r+"))";case"integer":return"(typeof "+r+a+'"number"'+s+i+"("+r+" % 1)"+s+r+a+r+")";default:return"typeof "+r+a+'"'+e+'"'}}function o(e,r){switch(e.length){case 1:return s(e[0],r,!0);default:var t="",a=n(e);a.array&&a.object&&(t=a.null?"(":"(!"+r+" || ",t+="typeof "+r+' !== "object")',delete a.null,delete a.array,delete a.object),a.number&&delete a.integer;for(var o in a)t+=(t?" && ":"")+s(o,r,!0);return t}}function i(e,r){if(Array.isArray(r)){for(var t=[],a=0;a<r.length;a++){var s=r[a];$[s]?t[t.length]=s:"array"===e&&"array"===s&&(t[t.length]=s)}if(t.length)return t}else{if($[r])return[r];if("array"===e&&"array"===r)return["array"]}}function n(e){for(var r={},t=0;t<e.length;t++)r[e[t]]=!0;return r}function l(e){return"number"==typeof e?"["+e+"]":x.test(e)?"."+e:"['"+c(e)+"']"}function c(e){return e.replace(_,"\\$&").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\f/g,"\\f").replace(/\t/g,"\\t")}function h(e,r){r+="[^0-9]";var t=e.match(new RegExp(r,"g"));return t?t.length:0}function u(e,r,t){return r+="([^0-9])",t=t.replace(/\$/g,"$$$$"),e.replace(new RegExp(r,"g"),t+"$1")}function f(e){return e.replace(O,"").replace(R,"").replace(I,"if (!($1))")}function d(e,r){var t=e.match(A);return t&&2===t.length?r?e.replace(q,"").replace(Q,C):e.replace(k,"").replace(D,L):e}function p(e,r){for(var t in e)if(r[t])return!0}function m(e,r,t){for(var a in e)if(a!=t&&r[a])return!0}function v(e){return"'"+c(e)+"'"}function y(e,r,t,a){return E(e,t?"'/' + "+r+(a?"":".replace(/~/g, '~0').replace(/\\//g, '~1')"):a?"'[' + "+r+" + ']'":"'[\\'' + "+r+" + '\\']'")}function g(e,r,t){return E(e,v(t?"/"+j(r):l(r)))}function P(e,r,t){var a,s,o,i;if(""===e)return"rootData";if("/"==e[0]){if(!V.test(e))throw new Error("Invalid JSON-pointer: "+e);s=e,o="rootData"}else{if(i=e.match(z),!i)throw new Error("Invalid JSON-pointer: "+e);if(a=+i[1],s=i[2],"#"==s){if(a>=r)throw new Error("Cannot access property/index "+a+" levels up, current level is "+r);return t[r-a]}if(a>r)throw new Error("Cannot access data "+a+" levels up, current level is "+r);if(o="data"+(r-a||""),!s)return o}for(var n=o,c=s.split("/"),h=0;h<c.length;h++){var u=c[h];u&&(o+=l(S(u)),n+=" && "+o)}return n}function E(e,r){return'""'==e?r:(e+" + "+r).replace(/' \+ '/g,"")}function b(e){return S(decodeURIComponent(e))}function w(e){return encodeURIComponent(j(e))}function j(e){return e.replace(/~/g,"~0").replace(/\//g,"~1")}function S(e){return e.replace(/~1/g,"/").replace(/~0/g,"~")}r.exports={copy:a,checkDataType:s,checkDataTypes:o,coerceToTypes:i,toHash:n,getProperty:l,escapeQuotes:c,ucs2length:e("./ucs2length"),varOccurences:h,varReplace:u,cleanUpCode:f,cleanUpVarErrors:d,schemaHasRules:p,schemaHasRulesExcept:m,stableStringify:e("json-stable-stringify"),toQuotedString:v,getPathExpr:y,getPath:g,getData:P,unescapeFragment:b,escapeFragment:w,escapeJsonPointer:j};var $=n(["string","number","integer","boolean","null"]),x=/^[a-z$_][a-z$_0-9]*$/i,_=/'|\\/g,O=/else\s*{\s*}/g,R=/if\s*\([^)]+\)\s*\{\s*\}(?!\s*else)/g,I=/if\s*\(([^)]+)\)\s*\{\s*\}\s*else(?!\s*if)/g,A=/[^v\.]errors/g,k=/var errors = 0;|var vErrors = null;|validate.errors = vErrors;/g,q=/var errors = 0;|var vErrors = null;/g,D="return errors === 0;",L="validate.errors = null; return true;",Q=/if \(errors === 0\) return true;\s*else throw new ValidationError\(vErrors\);/,C="return true;",V=/^\/(?:[^~]|~0|~1)*$/,z=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/},{"./ucs2length":10,"json-stable-stringify":48}],12:[function(e,r,t){"use strict";function a(e){this.message="validation failed",this.errors=e,this.ajv=this.validation=!0}r.exports=a,a.prototype=Object.create(Error.prototype),a.prototype.constructor=a},{}],13:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s;if(a+="var "+u+" = undefined;",e.opts.format===!1)return a+=" "+u+" = true; ";var f=e.schema.format,d=e.opts.v5&&f.$data,p="";if(d){var m=e.util.getData(f.$data,o,e.dataPathArr),v="format"+s,y="compare"+s;a+=" var "+v+" = formats["+m+"] , "+y+" = "+v+" && "+v+".compare;"}else{var v=e.formats[f];if(!v||!v.compare)return a+="  "+u+" = true; ";var y="formats"+e.util.getProperty(f)+".compare"}var g,P="formatMaximum"==r,E="formatExclusive"+(P?"Maximum":"Minimum"),b=e.schema[E],w=e.opts.v5&&b&&b.$data,j=P?"<":">",S="result"+s,$=e.opts.v5&&i&&i.$data;if($?(a+=" var schema"+s+" = "+e.util.getData(i.$data,o,e.dataPathArr)+"; ",g="schema"+s):g=i,w){var x=e.util.getData(b.$data,o,e.dataPathArr),_="exclusive"+s,O="op"+s,R="' + "+O+" + '";a+=" var schemaExcl"+s+" = "+x+"; ",x="schemaExcl"+s,a+=" if (typeof "+x+" != 'boolean' && "+x+" !== undefined) { "+u+" = false; ";var t=E,I=I||[];I.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"_formatExclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: '"+E+" should be boolean' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var A=a;a=I.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+A+"]); ":" validate.errors = ["+A+"]; return false; ":" var err = "+A+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" }  ",c&&(p+="}",a+=" else { "),$&&(a+=" if ("+g+" === undefined) "+u+" = true; else if (typeof "+g+" != 'string') "+u+" = false; else { ",p+="}"),d&&(a+=" if (!"+y+") "+u+" = true; else { ",p+="}"),a+=" var "+S+" = "+y+"("+h+",  ",a+=$?""+g:""+e.util.toQuotedString(i),a+=" ); if ("+S+" === undefined) "+u+" = false; var "+_+" = "+x+" === true; if ("+u+" === undefined) { "+u+" = "+_+" ? "+S+" "+j+" 0 : "+S+" "+j+"= 0; } if (!"+u+") var op"+s+" = "+_+" ? '"+j+"' : '"+j+"=';"}else{var _=b===!0,R=j;_||(R+="=");var O="'"+R+"'";$&&(a+=" if ("+g+" === undefined) "+u+" = true; else if (typeof "+g+" != 'string') "+u+" = false; else { ",p+="}"),d&&(a+=" if (!"+y+") "+u+" = true; else { ",p+="}"),a+=" var "+S+" = "+y+"("+h+",  ",a+=$?""+g:""+e.util.toQuotedString(i),a+=" ); if ("+S+" === undefined) "+u+" = false; if ("+u+" === undefined) "+u+" = "+S+" "+j,_||(a+="="),a+=" 0;"}a+=""+p+"if (!"+u+") { ";var t=r,I=I||[];I.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"_formatLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { comparison: "+O+", limit:  ",a+=$?""+g:""+e.util.toQuotedString(i),a+=" , exclusive: "+_+" } ",e.opts.messages!==!1&&(a+=" , message: 'should be "+R+' "',a+=$?"' + "+g+" + '":""+e.util.escapeQuotes(i),a+="\"' "),e.opts.verbose&&(a+=" , schema:  ",a+=$?"validate.schema"+n:""+e.util.toQuotedString(i),a+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var A=a;return a=I.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+A+"]); ":" validate.errors = ["+A+"]; return false; ":" var err = "+A+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="}"}},{}],14:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var d="maximum"==r,p=d?"exclusiveMaximum":"exclusiveMinimum",m=e.schema[p],v=e.opts.v5&&m&&m.$data,y=d?"<":">",g=d?">":"<";if(v){var P=e.util.getData(m.$data,i,e.dataPathArr),E="exclusive"+o,b="op"+o,w="' + "+b+" + '";s+=" var schemaExcl"+o+" = "+P+"; ",P="schemaExcl"+o,s+=" var exclusive"+o+"; if (typeof "+P+" != 'boolean' && typeof "+P+" != 'undefined') { ";var t=p,j=j||[];j.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"_exclusiveLimit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: {} ",e.opts.messages!==!1&&(s+=" , message: '"+p+" should be boolean' "),e.opts.verbose&&(s+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var S=s;s=j.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+S+"]); ":" validate.errors = ["+S+"]; return false; ":" var err = "+S+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" } else if( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'number') || "),s+=" ((exclusive"+o+" = "+P+" === true) ? "+u+" "+g+"= "+a+" : "+u+" "+g+" "+a+") || "+u+" !== "+u+") { var op"+o+" = exclusive"+o+" ? '"+y+"' : '"+y+"=';"}else{var E=m===!0,w=y;E||(w+="=");var b="'"+w+"'";s+=" if ( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'number') || "),s+=" "+u+" "+g,E&&(s+="="),s+=" "+a+" || "+u+" !== "+u+") {"}var t=r,j=j||[];j.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"_limit")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { comparison: "+b+", limit: "+a+", exclusive: "+E+" } ",e.opts.messages!==!1&&(s+=" , message: 'should be "+w+" ",s+=f?"' + "+a:""+n+"'"),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+n,s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var S=s;return s=j.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+S+"]); ":" validate.errors = ["+S+"]; return false; ":" var err = "+S+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" } ",h&&(s+=" else { "),s}},{}],15:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var d="maxItems"==r?">":"<";s+="if ( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'number') || "),s+=" "+u+".length "+d+" "+a+") { ";var t=r,p=p||[];p.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"_limitItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+a+" } ",e.opts.messages!==!1&&(s+=" , message: 'should NOT have ",s+="maxItems"==r?"more":"less",s+=" than ",s+=f?"' + "+a+" + '":""+n,s+=" items' "),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+n,s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var m=s;return s=p.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+m+"]); ":" validate.errors = ["+m+"]; return false; ":" var err = "+m+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+="} ",h&&(s+=" else { "),s}},{}],16:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var d="maxLength"==r?">":"<";s+="if ( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'number') || "),s+=e.opts.unicode===!1?" "+u+".length ":" ucs2length("+u+") ",s+=" "+d+" "+a+") { ";var t=r,p=p||[];p.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"_limitLength")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+a+" } ",e.opts.messages!==!1&&(s+=" , message: 'should NOT be ",s+="maxLength"==r?"longer":"shorter",s+=" than ",s+=f?"' + "+a+" + '":""+n,s+=" characters' "),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+n,
s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var m=s;return s=p.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+m+"]); ":" validate.errors = ["+m+"]; return false; ":" var err = "+m+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+="} ",h&&(s+=" else { "),s}},{}],17:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var d="maxProperties"==r?">":"<";s+="if ( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'number') || "),s+=" Object.keys("+u+").length "+d+" "+a+") { ";var t=r,p=p||[];p.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"_limitProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { limit: "+a+" } ",e.opts.messages!==!1&&(s+=" , message: 'should NOT have ",s+="maxProperties"==r?"more":"less",s+=" than ",s+=f?"' + "+a+" + '":""+n,s+=" properties' "),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+n,s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var m=s;return s=p.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+m+"]); ":" validate.errors = ["+m+"]; return false; ":" var err = "+m+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+="} ",h&&(s+=" else { "),s}},{}],18:[function(e,r,t){"use strict";r.exports=function(e,r){var t=" ",a=e.schema[r],s=e.schemaPath+e.util.getProperty(r),o=e.errSchemaPath+"/"+r,i=!e.opts.allErrors,n=e.util.copy(e),l="";n.level++;var c="valid"+n.level,h=n.baseId,u=!0,f=a;if(f)for(var d,p=-1,m=f.length-1;p<m;)d=f[p+=1],e.util.schemaHasRules(d,e.RULES.all)&&(u=!1,n.schema=d,n.schemaPath=s+"["+p+"]",n.errSchemaPath=o+"/"+p,t+="  "+e.validate(n)+" ",n.baseId=h,i&&(t+=" if ("+c+") { ",l+="}"));return i&&(t+=u?" if (true) { ":" "+l.slice(0,-1)+" "),t=e.util.cleanUpCode(t)}},{}],19:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="errs__"+s,d=e.util.copy(e),p="";d.level++;var m="valid"+d.level;if(i.every(function(r){return e.util.schemaHasRules(r,e.RULES.all)})){var v=d.baseId;a+=" var "+f+" = errors; var "+u+" = false;  ";var y=e.compositeRule;e.compositeRule=d.compositeRule=!0;var g=i;if(g)for(var P,E=-1,b=g.length-1;E<b;)P=g[E+=1],d.schema=P,d.schemaPath=n+"["+E+"]",d.errSchemaPath=l+"/"+E,a+="  "+e.validate(d)+" ",d.baseId=v,a+=" "+u+" = "+u+" || "+m+"; if (!"+u+") { ",p+="}";e.compositeRule=d.compositeRule=y,a+=" "+p+" if (!"+u+") {  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"anyOf")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: 'should match some schema in anyOf' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else {  errors = "+f+"; if (vErrors !== null) { if ("+f+") vErrors.length = "+f+"; else vErrors = null; } ",e.opts.allErrors&&(a+=" } "),a=e.util.cleanUpCode(a)}else c&&(a+=" if (true) { ");return a}},{}],20:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f=e.opts.v5&&i&&i.$data;f&&(a+=" var schema"+s+" = "+e.util.getData(i.$data,o,e.dataPathArr)+"; "),f||(a+=" var schema"+s+" = validate.schema"+n+";"),a+="var "+u+" = equal("+h+", schema"+s+"); if (!"+u+") {   ";var d=d||[];d.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"constant")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: 'should be equal to constant' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var p=a;return a=d.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+p+"]); ":" validate.errors = ["+p+"]; return false; ":" var err = "+p+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" }"}},{}],21:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f="valid"+o,d="errs__"+o,p=e.opts.v5&&n&&n.$data;p?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var m,v,y,g,P,E=this,b="definition"+o,w=E.definition;if(p&&w.$data){P="keywordValidate"+o;var j=w.validateSchema;s+=" var "+b+" = RULES.custom['"+r+"'].definition; var "+P+" = "+b+".validate;"}else g=e.useCustomRule(E,n,e.schema,e),a="validate.schema"+l,P=g.code,m=w.compile,v=w.inline,y=w.macro;var S=P+".errors",$="i"+o,x="ruleErr"+o,_=w.async;if(_&&!e.async)throw new Error("async keyword in sync schema");if(v||y||(s+=""+S+" = null;"),s+="var "+d+" = errors;var "+f+";",j&&(s+=" "+f+" = "+b+".validateSchema("+a+"); if ("+f+") {"),v)s+=w.statements?" "+g.validate+" ":" "+f+" = "+g.validate+"; ";else if(y){var O=e.util.copy(e);O.level++;var R="valid"+O.level;O.schema=g.validate,O.schemaPath="";var I=e.compositeRule;e.compositeRule=O.compositeRule=!0;var A=e.validate(O).replace(/validate\.schema/g,P);e.compositeRule=O.compositeRule=I,s+=" "+A}else{var k=k||[];k.push(s),s="",s+="  "+P+".call( ",s+=e.opts.passContext?"this":"self",s+=m||w.schema===!1?" , "+u+" ":" , "+a+" , "+u+" , validate.schema"+e.schemaPath+" ",s+=" , (dataPath || '')",'""'!=e.errorPath&&(s+=" + "+e.errorPath);var q=i?"data"+(i-1||""):"parentData",D=i?e.dataPathArr[i]:"parentDataProperty";s+=" , "+q+" , "+D+" , rootData )  ";var L=s;s=k.pop(),w.errors===!1?(s+=" "+f+" = ",_&&(s+=""+e.yieldAwait),s+=""+L+"; "):_?(S="customErrors"+o,s+=" var "+S+" = null; try { "+f+" = "+e.yieldAwait+L+"; } catch (e) { "+f+" = false; if (e instanceof ValidationError) "+S+" = e.errors; else throw e; } "):s+=" "+S+" = null; "+f+" = "+L+"; "}if(w.modifying&&(s+=" "+u+" = "+q+"["+D+"];"),j&&(s+=" }"),w.valid)h&&(s+=" if (true) { ");else{s+=" if ( ",void 0===w.valid?(s+=" !",s+=y?""+R:""+f):s+=" "+!w.valid+" ",s+=") { ",t=E.keyword;var k=k||[];k.push(s),s="";var k=k||[];k.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { keyword: '"+E.keyword+"' } ",e.opts.messages!==!1&&(s+=" , message: 'should pass \""+E.keyword+"\" keyword validation' "),e.opts.verbose&&(s+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var Q=s;s=k.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+Q+"]); ":" validate.errors = ["+Q+"]; return false; ":" var err = "+Q+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ";var C=s;s=k.pop(),v?w.errors?"full"!=w.errors&&(s+="  for (var "+$+"="+d+"; "+$+"<errors; "+$+"++) { var "+x+" = vErrors["+$+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+x+".schemaPath === undefined) { "+x+'.schemaPath = "'+c+'"; } ',e.opts.verbose&&(s+=" "+x+".schema = "+a+"; "+x+".data = "+u+"; "),s+=" } "):w.errors===!1?s+=" "+C+" ":(s+=" if ("+d+" == errors) { "+C+" } else {  for (var "+$+"="+d+"; "+$+"<errors; "+$+"++) { var "+x+" = vErrors["+$+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+"; if ("+x+".schemaPath === undefined) { "+x+'.schemaPath = "'+c+'"; } ',e.opts.verbose&&(s+=" "+x+".schema = "+a+"; "+x+".data = "+u+"; "),s+=" } } "):y?(s+="   var err =   ",e.createErrors!==!1?(s+=" { keyword: '"+(t||"custom")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { keyword: '"+E.keyword+"' } ",e.opts.messages!==!1&&(s+=" , message: 'should pass \""+E.keyword+"\" keyword validation' "),e.opts.verbose&&(s+=" , schema: validate.schema"+l+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ",s+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",!e.compositeRule&&h&&(s+=e.async?" throw new ValidationError(vErrors); ":" validate.errors = vErrors; return false; ")):w.errors===!1?s+=" "+C+" ":(s+=" if (Array.isArray("+S+")) { if (vErrors === null) vErrors = "+S+"; else vErrors = vErrors.concat("+S+"); errors = vErrors.length;  for (var "+$+"="+d+"; "+$+"<errors; "+$+"++) { var "+x+" = vErrors["+$+"]; if ("+x+".dataPath === undefined) "+x+".dataPath = (dataPath || '') + "+e.errorPath+";  "+x+'.schemaPath = "'+c+'";  ',e.opts.verbose&&(s+=" "+x+".schema = "+a+"; "+x+".data = "+u+"; "),s+=" } } else { "+C+" } "),s+=" } ",h&&(s+=" else { ")}return s}},{}],22:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="errs__"+s,f=e.util.copy(e),d="";f.level++;var p="valid"+f.level,m={},v={};for(E in i){var y=i[E],g=Array.isArray(y)?v:m;g[E]=y}a+="var "+u+" = errors;";var P=e.errorPath;a+="var missing"+s+";";for(var E in v){if(g=v[E],a+=" if ("+h+e.util.getProperty(E)+" !== undefined ",c){a+=" && ( ";var b=g;if(b)for(var w,j=-1,S=b.length-1;j<S;){w=b[j+=1],j&&(a+=" || ");var $=e.util.getProperty(w);a+=" ( "+h+$+" === undefined && (missing"+s+" = "+e.util.toQuotedString(e.opts.jsonPointers?w:$)+") ) "}a+=")) {  ";var x="missing"+s,_="' + "+x+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(P,x,!0):P+" + "+x);var O=O||[];O.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"dependencies")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { property: '"+e.util.escapeQuotes(E)+"', missingProperty: '"+_+"', depsCount: "+g.length+", deps: '"+e.util.escapeQuotes(1==g.length?g[0]:g.join(", "))+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should have ",a+=1==g.length?"property "+e.util.escapeQuotes(g[0]):"properties "+e.util.escapeQuotes(g.join(", ")),a+=" when property "+e.util.escapeQuotes(E)+" is present' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var R=a;a=O.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+R+"]); ":" validate.errors = ["+R+"]; return false; ":" var err = "+R+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}else{a+=" ) { ";var I=g;if(I)for(var A,k=-1,q=I.length-1;k<q;){A=I[k+=1];var $=e.util.getProperty(A),_=e.util.escapeQuotes(A);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(P,A,e.opts.jsonPointers)),a+=" if ("+h+$+" === undefined) {  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"dependencies")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { property: '"+e.util.escapeQuotes(E)+"', missingProperty: '"+_+"', depsCount: "+g.length+", deps: '"+e.util.escapeQuotes(1==g.length?g[0]:g.join(", "))+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should have ",a+=1==g.length?"property "+e.util.escapeQuotes(g[0]):"properties "+e.util.escapeQuotes(g.join(", ")),a+=" when property "+e.util.escapeQuotes(E)+" is present' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}a+=" }   ",c&&(d+="}",a+=" else { ")}e.errorPath=P;var D=f.baseId;for(var E in m){var y=m[E];e.util.schemaHasRules(y,e.RULES.all)&&(a+=" "+p+" = true; if ("+h+e.util.getProperty(E)+" !== undefined) { ",f.schema=y,f.schemaPath=n+e.util.getProperty(E),f.errSchemaPath=l+"/"+e.util.escapeFragment(E),a+="  "+e.validate(f)+" ",f.baseId=D,a+=" }  ",c&&(a+=" if ("+p+") { ",d+="}"))}return c&&(a+="   "+d+" if ("+u+" == errors) {"),a=e.util.cleanUpCode(a)}},{}],23:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f=e.opts.v5&&i&&i.$data;f&&(a+=" var schema"+s+" = "+e.util.getData(i.$data,o,e.dataPathArr)+"; ");var d="i"+s,p="schema"+s;f||(a+=" var "+p+" = validate.schema"+n+";"),a+="var "+u+";",f&&(a+=" if (schema"+s+" === undefined) "+u+" = true; else if (!Array.isArray(schema"+s+")) "+u+" = false; else {"),a+=""+u+" = false;for (var "+d+"=0; "+d+"<"+p+".length; "+d+"++) if (equal("+h+", "+p+"["+d+"])) { "+u+" = true; break; }",f&&(a+="  }  "),a+=" if (!"+u+") {   ";var m=m||[];m.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"enum")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { allowedValues: schema"+s+" } ",e.opts.messages!==!1&&(a+=" , message: 'should be equal to one of the allowed values' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var v=a;return a=m.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+v+"]); ":" validate.errors = ["+v+"]; return false; ":" var err = "+v+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" }",c&&(a+=" else { "),a}},{}],24:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||"");if(e.opts.format===!1)return c&&(a+=" if (true) { "),a;var u,f=e.opts.v5&&i&&i.$data;f?(a+=" var schema"+s+" = "+e.util.getData(i.$data,o,e.dataPathArr)+"; ",u="schema"+s):u=i;var d=e.opts.unknownFormats,p=Array.isArray(d);if(f){var m="format"+s;a+=" var "+m+" = formats["+u+"]; var isObject"+s+" = typeof "+m+" == 'object' && !("+m+" instanceof RegExp) && "+m+".validate; if (isObject"+s+") { ",e.async&&(a+=" var async"+s+" = "+m+".async; "),a+=" "+m+" = "+m+".validate; } if (  ",f&&(a+=" ("+u+" !== undefined && typeof "+u+" != 'string') || "),a+=" (",(d===!0||p)&&(a+=" ("+u+" && !"+m+" ",p&&(a+=" && self._opts.unknownFormats.indexOf("+u+") == -1 "),a+=") || "),a+=" ("+m+" && !(typeof "+m+" == 'function' ? ",a+=e.async?" (async"+s+" ? "+e.yieldAwait+" "+m+"("+h+") : "+m+"("+h+")) ":" "+m+"("+h+") ",a+=" : "+m+".test("+h+"))))) {"}else{var m=e.formats[i];if(!m){if(d===!0||p&&d.indexOf(i)==-1)throw new Error('unknown format "'+i+'" is used in schema at path "'+e.errSchemaPath+'"');return p||(console.warn('unknown format "'+i+'" ignored in schema at path "'+e.errSchemaPath+'"'),"ignore"!==d&&console.warn("In the next major version it will throw exception. See option unknownFormats for more information")),c&&(a+=" if (true) { "),a}var v="object"==typeof m&&!(m instanceof RegExp)&&m.validate;if(v){var y=m.async===!0;m=m.validate}if(y){if(!e.async)throw new Error("async format in sync schema");var g="formats"+e.util.getProperty(i)+".validate";a+=" if (!("+e.yieldAwait+" "+g+"("+h+"))) { "}else{a+=" if (! ";var g="formats"+e.util.getProperty(i);v&&(g+=".validate"),a+="function"==typeof m?" "+g+"("+h+") ":" "+g+".test("+h+") ",a+=") { "}}var P=P||[];P.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"format")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { format:  ",a+=f?""+u:""+e.util.toQuotedString(i),a+="  } ",e.opts.messages!==!1&&(a+=" , message: 'should match format \"",a+=f?"' + "+u+" + '":""+e.util.escapeQuotes(i),a+="\"' "),e.opts.verbose&&(a+=" , schema:  ",a+=f?"validate.schema"+n:""+e.util.toQuotedString(i),a+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var E=a;return a=P.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+E+"]); ":" validate.errors = ["+E+"]; return false; ":" var err = "+E+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } ",c&&(a+=" else { "),a}},{}],25:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="errs__"+s,d=e.util.copy(e),p="";d.level++;var m="valid"+d.level,v="i"+s,y=d.dataLevel=e.dataLevel+1,g="data"+y,P=e.baseId;if(a+="var "+f+" = errors;var "+u+";",Array.isArray(i)){var E=e.schema.additionalItems;if(E===!1){a+=" "+u+" = "+h+".length <= "+i.length+"; ";var b=l;l=e.errSchemaPath+"/additionalItems",a+="  if (!"+u+") {   ";var w=w||[];w.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"additionalItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { limit: "+i.length+" } ",e.opts.messages!==!1&&(a+=" , message: 'should NOT have more than "+i.length+" items' "),e.opts.verbose&&(a+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var j=a;a=w.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+j+"]); ":" validate.errors = ["+j+"]; return false; ":" var err = "+j+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } ",l=b,c&&(p+="}",a+=" else { ")}var S=i;if(S)for(var $,x=-1,_=S.length-1;x<_;)if($=S[x+=1],e.util.schemaHasRules($,e.RULES.all)){a+=" "+m+" = true; if ("+h+".length > "+x+") { ";var O=h+"["+x+"]";d.schema=$,d.schemaPath=n+"["+x+"]",d.errSchemaPath=l+"/"+x,d.errorPath=e.util.getPathExpr(e.errorPath,x,e.opts.jsonPointers,!0),d.dataPathArr[y]=x;var R=e.validate(d);d.baseId=P,a+=e.util.varOccurences(R,g)<2?" "+e.util.varReplace(R,g,O)+" ":" var "+g+" = "+O+"; "+R+" ",a+=" }  ",c&&(a+=" if ("+m+") { ",p+="}")}if("object"==typeof E&&e.util.schemaHasRules(E,e.RULES.all)){d.schema=E,d.schemaPath=e.schemaPath+".additionalItems",d.errSchemaPath=e.errSchemaPath+"/additionalItems",a+=" "+m+" = true; if ("+h+".length > "+i.length+") {  for (var "+v+" = "+i.length+"; "+v+" < "+h+".length; "+v+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers,!0);var O=h+"["+v+"]";d.dataPathArr[y]=v;var R=e.validate(d);d.baseId=P,a+=e.util.varOccurences(R,g)<2?" "+e.util.varReplace(R,g,O)+" ":" var "+g+" = "+O+"; "+R+" ",c&&(a+=" if (!"+m+") break; "),a+=" } }  ",c&&(a+=" if ("+m+") { ",p+="}")}}else if(e.util.schemaHasRules(i,e.RULES.all)){d.schema=i,d.schemaPath=n,d.errSchemaPath=l,a+="  for (var "+v+" = 0; "+v+" < "+h+".length; "+v+"++) { ",d.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers,!0);var O=h+"["+v+"]";d.dataPathArr[y]=v;var R=e.validate(d);d.baseId=P,a+=e.util.varOccurences(R,g)<2?" "+e.util.varReplace(R,g,O)+" ":" var "+g+" = "+O+"; "+R+" ",c&&(a+=" if (!"+m+") break; "),a+=" }  ",c&&(a+=" if ("+m+") { ",p+="}")}return c&&(a+=" "+p+" if ("+f+" == errors) {"),a=e.util.cleanUpCode(a)}},{}],26:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n,s+="var division"+o+";if (",f&&(s+=" "+a+" !== undefined && ( typeof "+a+" != 'number' || "),s+=" (division"+o+" = "+u+" / "+a+", ",s+=e.opts.multipleOfPrecision?" Math.abs(Math.round(division"+o+") - division"+o+") > 1e-"+e.opts.multipleOfPrecision+" ":" division"+o+" !== parseInt(division"+o+") ",s+=" ) ",f&&(s+="  )  "),s+=" ) {   ";var d=d||[];d.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"multipleOf")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { multipleOf: "+a+" } ",e.opts.messages!==!1&&(s+=" , message: 'should be multiple of ",s+=f?"' + "+a:""+n+"'"),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+n,s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var p=s;return s=d.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+p+"]); ":" validate.errors = ["+p+"]; return false; ":" var err = "+p+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+="} ",h&&(s+=" else { "),s}},{}],27:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="errs__"+s,f=e.util.copy(e);f.level++;var d="valid"+f.level;if(e.util.schemaHasRules(i,e.RULES.all)){f.schema=i,f.schemaPath=n,f.errSchemaPath=l,a+=" var "+u+" = errors;  ";var p=e.compositeRule;e.compositeRule=f.compositeRule=!0,f.createErrors=!1;var m;f.opts.allErrors&&(m=f.opts.allErrors,f.opts.allErrors=!1),a+=" "+e.validate(f)+" ",f.createErrors=!0,m&&(f.opts.allErrors=m),e.compositeRule=f.compositeRule=p,a+=" if ("+d+") {   ";var v=v||[];v.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"not")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: 'should NOT be valid' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var y=a;a=v.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+y+"]); ":" validate.errors = ["+y+"]; return false; ":" var err = "+y+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } else {  errors = "+u+"; if (vErrors !== null) { if ("+u+") vErrors.length = "+u+"; else vErrors = null; } ",e.opts.allErrors&&(a+=" } ")}else a+="  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"not")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: 'should NOT be valid' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",c&&(a+=" if (false) { ");return a}},{}],28:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="errs__"+s,d=e.util.copy(e),p="";d.level++;var m="valid"+d.level;a+="var "+f+" = errors;var prevValid"+s+" = false;var "+u+" = false;";var v=d.baseId,y=e.compositeRule;e.compositeRule=d.compositeRule=!0;var g=i;if(g)for(var P,E=-1,b=g.length-1;E<b;)P=g[E+=1],e.util.schemaHasRules(P,e.RULES.all)?(d.schema=P,d.schemaPath=n+"["+E+"]",d.errSchemaPath=l+"/"+E,a+="  "+e.validate(d)+" ",d.baseId=v):a+=" var "+m+" = true; ",E&&(a+=" if ("+m+" && prevValid"+s+") "+u+" = false; else { ",p+="}"),a+=" if ("+m+") "+u+" = prevValid"+s+" = true;";e.compositeRule=d.compositeRule=y,a+=""+p+"if (!"+u+") {   ";var w=w||[];w.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"oneOf")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: {} ",e.opts.messages!==!1&&(a+=" , message: 'should match exactly one schema in oneOf' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var j=a;return a=w.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+j+"]); ":" validate.errors = ["+j+"]; return false; ":" var err = "+j+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+="} else {  errors = "+f+"; if (vErrors !== null) { if ("+f+") vErrors.length = "+f+"; else vErrors = null; }",e.opts.allErrors&&(a+=" } "),a}},{}],29:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f=e.opts.v5&&n&&n.$data;f?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n;var d=f?"(new RegExp("+a+"))":e.usePattern(n);s+="if ( ",f&&(s+=" ("+a+" !== undefined && typeof "+a+" != 'string') || "),s+=" !"+d+".test("+u+") ) {   ";var p=p||[];p.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"pattern")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { pattern:  ",s+=f?""+a:""+e.util.toQuotedString(n),s+="  } ",e.opts.messages!==!1&&(s+=" , message: 'should match pattern \"",s+=f?"' + "+a+" + '":""+e.util.escapeQuotes(n),s+="\"' "),e.opts.verbose&&(s+=" , schema:  ",s+=f?"validate.schema"+l:""+e.util.toQuotedString(n),s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var m=s;return s=p.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+m+"]); ":" validate.errors = ["+m+"]; return false; ":" var err = "+m+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+="} ",h&&(s+=" else { "),s}},{}],30:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="key"+s,d="patternMatched"+s,p="",m=e.opts.ownProperties;a+="var "+u+" = true;";var v=i;if(v)for(var y,g=-1,P=v.length-1;g<P;){y=v[g+=1],a+=" var "+d+" = false; for (var "+f+" in "+h+") {  ",m&&(a+=" if (!Object.prototype.hasOwnProperty.call("+h+", "+f+")) continue; "),a+=" "+d+" = "+e.usePattern(y)+".test("+f+"); if ("+d+") break; } ";var E=e.util.escapeQuotes(y);a+=" if (!"+d+") { "+u+" = false;  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"patternRequired")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingPattern: '"+E+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should have property matching pattern \\'"+E+"\\'' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; }   ",c&&(p+="}",a+=" else { ")}return a+=""+p}},{}],31:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="errs__"+s,d=e.util.copy(e),p="";d.level++;var m="valid"+d.level,v="key"+s,y=d.dataLevel=e.dataLevel+1,g="data"+y,P=Object.keys(i||{}),E=e.schema.patternProperties||{},b=Object.keys(E),w=e.schema.additionalProperties,j=P.length||b.length,S=w===!1,$="object"==typeof w&&Object.keys(w).length,x=e.opts.removeAdditional,_=S||$||x,O=e.opts.ownProperties,R=e.baseId,I=e.schema.required;if(I&&(!e.opts.v5||!I.$data)&&I.length<e.opts.loopRequired)var A=e.util.toHash(I);if(e.opts.v5)var k=e.schema.patternGroups||{},q=Object.keys(k);if(a+="var "+f+" = errors;var "+m+" = true;",_){if(a+=" for (var "+v+" in "+h+") {  ",O&&(a+=" if (!Object.prototype.hasOwnProperty.call("+h+", "+v+")) continue; "),j){if(a+=" var isAdditional"+s+" = !(false ",P.length)if(P.length>5)a+=" || validate.schema"+n+"["+v+"] ";else{var D=P;if(D)for(var L,Q=-1,C=D.length-1;Q<C;)L=D[Q+=1],a+=" || "+v+" == "+e.util.toQuotedString(L)+" "}if(b.length){var V=b;if(V)for(var z,U=-1,T=V.length-1;U<T;)z=V[U+=1],a+=" || "+e.usePattern(z)+".test("+v+") "}if(e.opts.v5&&q&&q.length){var M=q;if(M)for(var N,U=-1,F=M.length-1;U<F;)N=M[U+=1],a+=" || "+e.usePattern(N)+".test("+v+") "}a+=" ); if (isAdditional"+s+") { "}if("all"==x)a+=" delete "+h+"["+v+"]; ";else{var H=e.errorPath,J="' + "+v+" + '";if(e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers)),S)if(x)a+=" delete "+h+"["+v+"]; ";else{a+=" "+m+" = false; ";var G=l;l=e.errSchemaPath+"/additionalProperties";var K=K||[];K.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"additionalProperties")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { additionalProperty: '"+J+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should NOT have additional properties' "),e.opts.verbose&&(a+=" , schema: false , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var B=a;a=K.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+B+"]); ":" validate.errors = ["+B+"]; return false; ":" var err = "+B+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",l=G,c&&(a+=" break; ")}else if($)if("failing"==x){a+=" var "+f+" = errors;  ";var Z=e.compositeRule;e.compositeRule=d.compositeRule=!0,d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers);var Y=h+"["+v+"]";d.dataPathArr[y]=v;var W=e.validate(d);d.baseId=R,a+=e.util.varOccurences(W,g)<2?" "+e.util.varReplace(W,g,Y)+" ":" var "+g+" = "+Y+"; "+W+" ",a+=" if (!"+m+") { errors = "+f+"; if (validate.errors !== null) { if (errors) validate.errors.length = errors; else validate.errors = null; } delete "+h+"["+v+"]; }  ",e.compositeRule=d.compositeRule=Z}else{d.schema=w,d.schemaPath=e.schemaPath+".additionalProperties",d.errSchemaPath=e.errSchemaPath+"/additionalProperties",d.errorPath=e.opts._errorDataPathProperty?e.errorPath:e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers);var Y=h+"["+v+"]";d.dataPathArr[y]=v;var W=e.validate(d);d.baseId=R,a+=e.util.varOccurences(W,g)<2?" "+e.util.varReplace(W,g,Y)+" ":" var "+g+" = "+Y+"; "+W+" ",c&&(a+=" if (!"+m+") break; ")}e.errorPath=H}j&&(a+=" } "),a+=" }  ",c&&(a+=" if ("+m+") { ",p+="}")}var X=e.opts.useDefaults&&!e.compositeRule;if(P.length){var ee=P;if(ee)for(var L,re=-1,te=ee.length-1;re<te;){L=ee[re+=1];var ae=i[L];if(e.util.schemaHasRules(ae,e.RULES.all)){var se=e.util.getProperty(L),Y=h+se,oe=X&&void 0!==ae.default;d.schema=ae,d.schemaPath=n+se,d.errSchemaPath=l+"/"+e.util.escapeFragment(L),d.errorPath=e.util.getPath(e.errorPath,L,e.opts.jsonPointers),d.dataPathArr[y]=e.util.toQuotedString(L);var W=e.validate(d);if(d.baseId=R,e.util.varOccurences(W,g)<2){W=e.util.varReplace(W,g,Y);var ie=Y}else{var ie=g;a+=" var "+g+" = "+Y+"; "}if(oe)a+=" "+W+" ";else{if(A&&A[L]){a+=" if ("+ie+" === undefined) { "+m+" = false; ";var H=e.errorPath,G=l,ne=e.util.escapeQuotes(L);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(H,L,e.opts.jsonPointers)),l=e.errSchemaPath+"/required";var K=K||[];K.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+ne+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+ne+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var B=a;a=K.pop(),
a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+B+"]); ":" validate.errors = ["+B+"]; return false; ":" var err = "+B+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",l=G,e.errorPath=H,a+=" } else { "}else a+=c?" if ("+ie+" === undefined) { "+m+" = true; } else { ":" if ("+ie+" !== undefined) { ";a+=" "+W+" } "}}c&&(a+=" if ("+m+") { ",p+="}")}}var le=b;if(le)for(var z,ce=-1,he=le.length-1;ce<he;){z=le[ce+=1];var ae=E[z];if(e.util.schemaHasRules(ae,e.RULES.all)){d.schema=ae,d.schemaPath=e.schemaPath+".patternProperties"+e.util.getProperty(z),d.errSchemaPath=e.errSchemaPath+"/patternProperties/"+e.util.escapeFragment(z),a+=" for (var "+v+" in "+h+") {  ",O&&(a+=" if (!Object.prototype.hasOwnProperty.call("+h+", "+v+")) continue; "),a+=" if ("+e.usePattern(z)+".test("+v+")) { ",d.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers);var Y=h+"["+v+"]";d.dataPathArr[y]=v;var W=e.validate(d);d.baseId=R,a+=e.util.varOccurences(W,g)<2?" "+e.util.varReplace(W,g,Y)+" ":" var "+g+" = "+Y+"; "+W+" ",c&&(a+=" if (!"+m+") break; "),a+=" } ",c&&(a+=" else "+m+" = true; "),a+=" }  ",c&&(a+=" if ("+m+") { ",p+="}")}}if(e.opts.v5){var ue=q;if(ue)for(var N,fe=-1,de=ue.length-1;fe<de;){N=ue[fe+=1];var pe=k[N],ae=pe.schema;if(e.util.schemaHasRules(ae,e.RULES.all)){d.schema=ae,d.schemaPath=e.schemaPath+".patternGroups"+e.util.getProperty(N)+".schema",d.errSchemaPath=e.errSchemaPath+"/patternGroups/"+e.util.escapeFragment(N)+"/schema",a+=" var pgPropCount"+s+" = 0; for (var "+v+" in "+h+") {  ",O&&(a+=" if (!Object.prototype.hasOwnProperty.call("+h+", "+v+")) continue; "),a+=" if ("+e.usePattern(N)+".test("+v+")) { pgPropCount"+s+"++; ",d.errorPath=e.util.getPathExpr(e.errorPath,v,e.opts.jsonPointers);var Y=h+"["+v+"]";d.dataPathArr[y]=v;var W=e.validate(d);d.baseId=R,a+=e.util.varOccurences(W,g)<2?" "+e.util.varReplace(W,g,Y)+" ":" var "+g+" = "+Y+"; "+W+" ",c&&(a+=" if (!"+m+") break; "),a+=" } ",c&&(a+=" else "+m+" = true; "),a+=" }  ",c&&(a+=" if ("+m+") { ",p+="}");var me=pe.minimum,ve=pe.maximum;if(void 0!==me||void 0!==ve){a+=" var "+u+" = true; ";var G=l;if(void 0!==me){var ye=me,ge="minimum",Pe="less";a+=" "+u+" = pgPropCount"+s+" >= "+me+"; ",l=e.errSchemaPath+"/patternGroups/minimum",a+="  if (!"+u+") {   ";var K=K||[];K.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"patternGroups")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { reason: '"+ge+"', limit: "+ye+", pattern: '"+e.util.escapeQuotes(N)+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should NOT have "+Pe+" than "+ye+' properties matching pattern "'+e.util.escapeQuotes(N)+"\"' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var B=a;a=K.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+B+"]); ":" validate.errors = ["+B+"]; return false; ":" var err = "+B+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } ",void 0!==ve&&(a+=" else ")}if(void 0!==ve){var ye=ve,ge="maximum",Pe="more";a+=" "+u+" = pgPropCount"+s+" <= "+ve+"; ",l=e.errSchemaPath+"/patternGroups/maximum",a+="  if (!"+u+") {   ";var K=K||[];K.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"patternGroups")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { reason: '"+ge+"', limit: "+ye+", pattern: '"+e.util.escapeQuotes(N)+"' } ",e.opts.messages!==!1&&(a+=" , message: 'should NOT have "+Pe+" than "+ye+' properties matching pattern "'+e.util.escapeQuotes(N)+"\"' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var B=a;a=K.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+B+"]); ":" validate.errors = ["+B+"]; return false; ":" var err = "+B+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } "}l=G,c&&(a+=" if ("+u+") { ",p+="}")}}}}return c&&(a+=" "+p+" if ("+f+" == errors) {"),a=e.util.cleanUpCode(a)}},{}],32:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s,o=" ",i=e.level,n=e.dataLevel,l=e.schema[r],c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(n||""),f="valid"+i;if("#"==l||"#/"==l)e.isRoot?(a=e.async,s="validate"):(a=e.root.schema.$async===!0,s="root.refVal[0]");else{var d=e.resolveRef(e.baseId,l,e.isRoot);if(void 0===d){var p="can't resolve reference "+l+" from id "+e.baseId;if("fail"==e.opts.missingRefs){console.log(p);var m=m||[];m.push(o),o="",e.createErrors!==!1?(o+=" { keyword: '"+(t||"$ref")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { ref: '"+e.util.escapeQuotes(l)+"' } ",e.opts.messages!==!1&&(o+=" , message: 'can\\'t resolve reference "+e.util.escapeQuotes(l)+"' "),e.opts.verbose&&(o+=" , schema: "+e.util.toQuotedString(l)+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),o+=" } "):o+=" {} ";var v=o;o=m.pop(),o+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+v+"]); ":" validate.errors = ["+v+"]; return false; ":" var err = "+v+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",h&&(o+=" if (false) { ")}else{if("ignore"!=e.opts.missingRefs){var y=new Error(p);throw y.missingRef=e.resolve.url(e.baseId,l),y.missingSchema=e.resolve.normalizeId(e.resolve.fullPath(y.missingRef)),y}console.log(p),h&&(o+=" if (true) { ")}}else if(d.inline){var g=e.util.copy(e);g.level++;var P="valid"+g.level;g.schema=d.schema,g.schemaPath="",g.errSchemaPath=l;var E=e.validate(g).replace(/validate\.schema/g,d.code);o+=" "+E+" ",h&&(o+=" if ("+P+") { ")}else a=d.$async===!0,s=d.code}if(s){var m=m||[];m.push(o),o="",o+=e.opts.passContext?" "+s+".call(this, ":" "+s+"( ",o+=" "+u+", (dataPath || '')",'""'!=e.errorPath&&(o+=" + "+e.errorPath);o+=" , "+(n?"data"+(n-1||""):"parentData")+" , "+(n?e.dataPathArr[n]:"parentDataProperty")+", rootData)  ";var b=o;if(o=m.pop(),a){if(!e.async)throw new Error("async schema referenced by sync schema");o+=" try { ",h&&(o+="var "+f+" ="),o+=" "+e.yieldAwait+" "+b+"; } catch (e) { if (!(e instanceof ValidationError)) throw e; if (vErrors === null) vErrors = e.errors; else vErrors = vErrors.concat(e.errors); errors = vErrors.length; } ",h&&(o+=" if ("+f+") { ")}else o+=" if (!"+b+") { if (vErrors === null) vErrors = "+s+".errors; else vErrors = vErrors.concat("+s+".errors); errors = vErrors.length; } ",h&&(o+=" else { ")}return o}},{}],33:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f=e.opts.v5&&i&&i.$data;f&&(a+=" var schema"+s+" = "+e.util.getData(i.$data,o,e.dataPathArr)+"; ");var d="schema"+s;if(!f)if(i.length<e.opts.loopRequired&&e.schema.properties&&Object.keys(e.schema.properties).length){var p=[],m=i;if(m)for(var v,y=-1,g=m.length-1;y<g;){v=m[y+=1];var P=e.schema.properties[v];P&&e.util.schemaHasRules(P,e.RULES.all)||(p[p.length]=v)}}else var p=i;if(f||p.length){var E=e.errorPath,b=f||p.length>=e.opts.loopRequired;if(c)if(a+=" var missing"+s+"; ",b){f||(a+=" var "+d+" = validate.schema"+n+"; ");var w="i"+s,j="schema"+s+"["+w+"]",S="' + "+j+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(E,j,e.opts.jsonPointers)),a+=" var "+u+" = true; ",f&&(a+=" if (schema"+s+" === undefined) "+u+" = true; else if (!Array.isArray(schema"+s+")) "+u+" = false; else {"),a+=" for (var "+w+" = 0; "+w+" < "+d+".length; "+w+"++) { "+u+" = "+h+"["+d+"["+w+"]] !== undefined; if (!"+u+") break; } ",f&&(a+="  }  "),a+="  if (!"+u+") {   ";var $=$||[];$.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+S+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+S+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var x=a;a=$.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+x+"]); ":" validate.errors = ["+x+"]; return false; ":" var err = "+x+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } else { "}else{a+=" if ( ";var _=p;if(_)for(var O,w=-1,R=_.length-1;w<R;){O=_[w+=1],w&&(a+=" || ");var I=e.util.getProperty(O);a+=" ( "+h+I+" === undefined && (missing"+s+" = "+e.util.toQuotedString(e.opts.jsonPointers?O:I)+") ) "}a+=") {  ";var j="missing"+s,S="' + "+j+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.opts.jsonPointers?e.util.getPathExpr(E,j,!0):E+" + "+j);var $=$||[];$.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+S+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+S+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var x=a;a=$.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+x+"]); ":" validate.errors = ["+x+"]; return false; ":" var err = "+x+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",a+=" } else { "}else if(b){f||(a+=" var "+d+" = validate.schema"+n+"; ");var w="i"+s,j="schema"+s+"["+w+"]",S="' + "+j+" + '";e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPathExpr(E,j,e.opts.jsonPointers)),f&&(a+=" if ("+d+" && !Array.isArray("+d+")) {  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+S+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+S+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } else if ("+d+" !== undefined) { "),a+=" for (var "+w+" = 0; "+w+" < "+d+".length; "+w+"++) { if ("+h+"["+d+"["+w+"]] === undefined) {  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+S+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+S+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } } ",f&&(a+="  }  ")}else{var A=p;if(A)for(var k,q=-1,D=A.length-1;q<D;){k=A[q+=1];var I=e.util.getProperty(k),S=e.util.escapeQuotes(k);e.opts._errorDataPathProperty&&(e.errorPath=e.util.getPath(E,k,e.opts.jsonPointers)),a+=" if ("+h+I+" === undefined) {  var err =   ",e.createErrors!==!1?(a+=" { keyword: '"+(t||"required")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { missingProperty: '"+S+"' } ",e.opts.messages!==!1&&(a+=" , message: '",a+=e.opts._errorDataPathProperty?"is a required property":"should have required property \\'"+S+"\\'",a+="' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ",a+=";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; } "}}e.errorPath=E}else c&&(a+=" if (true) {");return a}},{}],34:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a=" ",s=e.level,o=e.dataLevel,i=e.schema[r],n=e.schemaPath+e.util.getProperty(r),l=e.errSchemaPath+"/"+r,c=!e.opts.allErrors,h="data"+(o||""),u="valid"+s,f="errs__"+s,d=e.util.copy(e),p="";d.level++;var m,v="valid"+d.level,y="ifPassed"+e.level,g=d.baseId;a+="var "+y+";";var P=i;if(P)for(var E,b=-1,w=P.length-1;b<w;){if(E=P[b+=1],b&&!m&&(a+=" if (!"+y+") { ",p+="}"),E.if&&e.util.schemaHasRules(E.if,e.RULES.all)){a+=" var "+f+" = errors;   ";var j=e.compositeRule;if(e.compositeRule=d.compositeRule=!0,d.createErrors=!1,d.schema=E.if,d.schemaPath=n+"["+b+"].if",d.errSchemaPath=l+"/"+b+"/if",a+="  "+e.validate(d)+" ",d.baseId=g,d.createErrors=!0,e.compositeRule=d.compositeRule=j,a+=" "+y+" = "+v+"; if ("+y+") {  ","boolean"==typeof E.then){if(E.then===!1){var S=S||[];S.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"switch")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { caseIndex: "+b+" } ",e.opts.messages!==!1&&(a+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var $=a;a=S.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+$+"]); ":" validate.errors = ["+$+"]; return false; ":" var err = "+$+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}a+=" var "+v+" = "+E.then+"; "}else d.schema=E.then,d.schemaPath=n+"["+b+"].then",d.errSchemaPath=l+"/"+b+"/then",a+="  "+e.validate(d)+" ",d.baseId=g;a+="  } else {  errors = "+f+"; if (vErrors !== null) { if ("+f+") vErrors.length = "+f+"; else vErrors = null; } } "}else if(a+=" "+y+" = true;  ","boolean"==typeof E.then){if(E.then===!1){var S=S||[];S.push(a),a="",e.createErrors!==!1?(a+=" { keyword: '"+(t||"switch")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(l)+" , params: { caseIndex: "+b+" } ",e.opts.messages!==!1&&(a+=" , message: 'should pass \"switch\" keyword validation' "),e.opts.verbose&&(a+=" , schema: validate.schema"+n+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+h+" "),a+=" } "):a+=" {} ";var $=a;a=S.pop(),a+=!e.compositeRule&&c?e.async?" throw new ValidationError(["+$+"]); ":" validate.errors = ["+$+"]; return false; ":" var err = "+$+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; "}a+=" var "+v+" = "+E.then+"; "}else d.schema=E.then,d.schemaPath=n+"["+b+"].then",d.errSchemaPath=l+"/"+b+"/then",a+="  "+e.validate(d)+" ",d.baseId=g;m=E.continue}return a+=""+p+"var "+u+" = "+v+"; ",a=e.util.cleanUpCode(a)}},{}],35:[function(e,r,t){"use strict";r.exports=function(e,r){var t,a,s=" ",o=e.level,i=e.dataLevel,n=e.schema[r],l=e.schemaPath+e.util.getProperty(r),c=e.errSchemaPath+"/"+r,h=!e.opts.allErrors,u="data"+(i||""),f="valid"+o,d=e.opts.v5&&n&&n.$data;if(d?(s+=" var schema"+o+" = "+e.util.getData(n.$data,i,e.dataPathArr)+"; ",a="schema"+o):a=n,(n||d)&&e.opts.uniqueItems!==!1){d&&(s+=" var "+f+"; if ("+a+" === false || "+a+" === undefined) "+f+" = true; else if (typeof "+a+" != 'boolean') "+f+" = false; else { "),s+=" var "+f+" = true; if ("+u+".length > 1) { var i = "+u+".length, j; outer: for (;i--;) { for (j = i; j--;) { if (equal("+u+"[i], "+u+"[j])) { "+f+" = false; break outer; } } } } ",d&&(s+="  }  "),s+=" if (!"+f+") {   ";var p=p||[];p.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(t||"uniqueItems")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(c)+" , params: { i: i, j: j } ",e.opts.messages!==!1&&(s+=" , message: 'should NOT have duplicate items (items ## ' + j + ' and ' + i + ' are identical)' "),e.opts.verbose&&(s+=" , schema:  ",s+=d?"validate.schema"+l:""+n,s+="         , parentSchema: validate.schema"+e.schemaPath+" , data: "+u+" "),s+=" } "):s+=" {} ";var m=s;s=p.pop(),s+=!e.compositeRule&&h?e.async?" throw new ValidationError(["+m+"]); ":" validate.errors = ["+m+"]; return false; ":" var err = "+m+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" } ",h&&(s+=" else { ")}else h&&(s+=" if (true) { ");return s}},{}],36:[function(e,r,t){"use strict";r.exports=function(e,r){function t(e){for(var r=0;r<e.rules.length;r++)if(a(e.rules[r]))return!0}function a(r){return void 0!==e.schema[r.keyword]||"properties"==r.keyword&&(e.schema.additionalProperties===!1||"object"==typeof e.schema.additionalProperties||e.schema.patternProperties&&Object.keys(e.schema.patternProperties).length||e.opts.v5&&e.schema.patternGroups&&Object.keys(e.schema.patternGroups).length)}var s="",o=e.schema.$async===!0;if(e.isTop){var i=e.isTop,n=e.level=0,l=e.dataLevel=0,c="data";if(e.rootId=e.resolve.fullPath(e.root.schema.id),e.baseId=e.baseId||e.rootId,o){e.async=!0;var h="es7"==e.opts.async;e.yieldAwait=h?"await":"yield"}delete e.isTop,e.dataPathArr=[void 0],s+=" var validate = ",o?h?s+=" (async function ":("co*"==e.opts.async&&(s+="co.wrap"),s+="(function* "):s+=" (function ",s+=" (data, dataPath, parentData, parentDataProperty, rootData) { 'use strict'; var vErrors = null; ",s+=" var errors = 0;     ",s+=" if (rootData === undefined) rootData = data;"}else{var n=e.level,l=e.dataLevel,c="data"+(l||"");if(e.schema.id&&(e.baseId=e.resolve.url(e.baseId,e.schema.id)),o&&!e.async)throw new Error("async schema in sync schema");s+=" var errs_"+n+" = errors;"}var u,f="valid"+n,d=!e.opts.allErrors,p="",m="",v=e.schema.type,y=Array.isArray(v);if(v&&e.opts.coerceTypes){var g=e.util.coerceToTypes(e.opts.coerceTypes,v);if(g){var P=e.schemaPath+".type",E=e.errSchemaPath+"/type",b=y?"checkDataTypes":"checkDataType";s+=" if ("+e.util[b](v,c,!0)+") {  ";var w="dataType"+n,j="coerced"+n;s+=" var "+w+" = typeof "+c+"; ","array"==e.opts.coerceTypes&&(s+=" if ("+w+" == 'object' && Array.isArray("+c+")) "+w+" = 'array'; "),s+=" var "+j+" = undefined; ";var S="",$=g;if($)for(var x,_=-1,O=$.length-1;_<O;)x=$[_+=1],_&&(s+=" if ("+j+" === undefined) { ",S+="}"),"array"==e.opts.coerceTypes&&"array"!=x&&(s+=" if ("+w+" == 'array' && "+c+".length == 1) { "+j+" = "+c+" = "+c+"[0]; "+w+" = typeof "+c+";  } "),"string"==x?s+=" if ("+w+" == 'number' || "+w+" == 'boolean') "+j+" = '' + "+c+"; else if ("+c+" === null) "+j+" = ''; ":"number"==x||"integer"==x?(s+=" if ("+w+" == 'boolean' || "+c+" === null || ("+w+" == 'string' && "+c+" && "+c+" == +"+c+" ","integer"==x&&(s+=" && !("+c+" % 1)"),s+=")) "+j+" = +"+c+"; "):"boolean"==x?s+=" if ("+c+" === 'false' || "+c+" === 0 || "+c+" === null) "+j+" = false; else if ("+c+" === 'true' || "+c+" === 1) "+j+" = true; ":"null"==x?s+=" if ("+c+" === '' || "+c+" === 0 || "+c+" === false) "+j+" = null; ":"array"==e.opts.coerceTypes&&"array"==x&&(s+=" if ("+w+" == 'string' || "+w+" == 'number' || "+w+" == 'boolean' || "+c+" == null) "+j+" = ["+c+"]; ");s+=" "+S+" if ("+j+" === undefined) {   ";var R=R||[];R.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(u||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(E)+" , params: { type: '",s+=y?""+v.join(","):""+v,s+="' } ",e.opts.messages!==!1&&(s+=" , message: 'should be ",s+=y?""+v.join(","):""+v,s+="' "),e.opts.verbose&&(s+=" , schema: validate.schema"+P+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),s+=" } "):s+=" {} ";var I=s;s=R.pop(),s+=!e.compositeRule&&d?e.async?" throw new ValidationError(["+I+"]); ":" validate.errors = ["+I+"]; return false; ":" var err = "+I+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" } else {  ";var A=l?"data"+(l-1||""):"parentData",k=l?e.dataPathArr[l]:"parentDataProperty";s+=" "+c+" = "+j+"; ",l||(s+="if ("+A+" !== undefined)"),s+=" "+A+"["+k+"] = "+j+"; } } "}}var q;if(e.schema.$ref&&(q=e.util.schemaHasRulesExcept(e.schema,e.RULES.all,"$ref"))){if("fail"==e.opts.extendRefs)throw new Error('$ref: validation keywords used in schema at path "'+e.errSchemaPath+'"');"ignore"==e.opts.extendRefs?(q=!1,console.log('$ref: keywords ignored in schema at path "'+e.errSchemaPath+'"')):e.opts.extendRefs!==!0&&console.log('$ref: all keywords used in schema at path "'+e.errSchemaPath+'". It will change in the next major version, see issue #260. Use option { extendRefs: true } to keep current behaviour')}if(e.schema.$ref&&!q)s+=" "+e.RULES.all.$ref.code(e,"$ref")+" ",d&&(s+=" } if (errors === ",s+=i?"0":"errs_"+n,s+=") { ",m+="}");else{var D=e.RULES;if(D)for(var L,Q=-1,C=D.length-1;Q<C;)if(L=D[Q+=1],t(L)){if(L.type&&(s+=" if ("+e.util.checkDataType(L.type,c)+") { "),e.opts.useDefaults&&!e.compositeRule)if("object"==L.type&&e.schema.properties){var V=e.schema.properties,z=Object.keys(V),U=z;if(U)for(var T,M=-1,N=U.length-1;M<N;){T=U[M+=1];var F=V[T];if(void 0!==F.default){var H=c+e.util.getProperty(T);s+="  if ("+H+" === undefined) "+H+" = ",s+="shared"==e.opts.useDefaults?" "+e.useDefault(F.default)+" ":" "+JSON.stringify(F.default)+" ",s+="; "}}}else if("array"==L.type&&Array.isArray(e.schema.items)){var J=e.schema.items;if(J)for(var F,_=-1,G=J.length-1;_<G;)if(F=J[_+=1],void 0!==F.default){var H=c+"["+_+"]";s+="  if ("+H+" === undefined) "+H+" = ",s+="shared"==e.opts.useDefaults?" "+e.useDefault(F.default)+" ":" "+JSON.stringify(F.default)+" ",s+="; "}}var K=L.rules;if(K)for(var B,Z=-1,Y=K.length-1;Z<Y;)B=K[Z+=1],a(B)&&(s+=" "+B.code(e,B.keyword)+" ",d&&(p+="}"));if(d&&(s+=" "+p+" ",p=""),L.type&&(s+=" } ",v&&v===L.type)){var W=!0;s+=" else { ";var P=e.schemaPath+".type",E=e.errSchemaPath+"/type",R=R||[];R.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(u||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(E)+" , params: { type: '",s+=y?""+v.join(","):""+v,s+="' } ",e.opts.messages!==!1&&(s+=" , message: 'should be ",s+=y?""+v.join(","):""+v,s+="' "),e.opts.verbose&&(s+=" , schema: validate.schema"+P+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),s+=" } "):s+=" {} ";var I=s;s=R.pop(),s+=!e.compositeRule&&d?e.async?" throw new ValidationError(["+I+"]); ":" validate.errors = ["+I+"]; return false; ":" var err = "+I+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" } "}d&&(s+=" if (errors === ",s+=i?"0":"errs_"+n,s+=") { ",m+="}")}}if(v&&!W&&(!e.opts.coerceTypes||!g)){var P=e.schemaPath+".type",E=e.errSchemaPath+"/type",b=y?"checkDataTypes":"checkDataType";s+=" if ("+e.util[b](v,c,!0)+") {   ";var R=R||[];R.push(s),s="",e.createErrors!==!1?(s+=" { keyword: '"+(u||"type")+"' , dataPath: (dataPath || '') + "+e.errorPath+" , schemaPath: "+e.util.toQuotedString(E)+" , params: { type: '",s+=y?""+v.join(","):""+v,s+="' } ",e.opts.messages!==!1&&(s+=" , message: 'should be ",s+=y?""+v.join(","):""+v,s+="' "),e.opts.verbose&&(s+=" , schema: validate.schema"+P+" , parentSchema: validate.schema"+e.schemaPath+" , data: "+c+" "),s+=" } "):s+=" {} ";var I=s;s=R.pop(),s+=!e.compositeRule&&d?e.async?" throw new ValidationError(["+I+"]); ":" validate.errors = ["+I+"]; return false; ":" var err = "+I+";  if (vErrors === null) vErrors = [err]; else vErrors.push(err); errors++; ",s+=" }"}return d&&(s+=" "+m+" "),i?(o?(s+=" if (errors === 0) return true;           ",s+=" else throw new ValidationError(vErrors); "):(s+=" validate.errors = vErrors; ",s+=" return errors === 0;       "),s+=" }); return validate;"):s+=" var "+f+" = errors === errs_"+n+";",s=e.util.cleanUpCode(s),i&&d&&(s=e.util.cleanUpVarErrors(s,o)),s}},{}],37:[function(e,r,t){"use strict";function a(e,r){function t(e,r,t){for(var a,o=0;o<s.length;o++){var i=s[o];if(i.type==r){a=i;break}}a||(a={type:r,rules:[]},s.push(a));var l={keyword:e,definition:t,custom:!0,code:n};a.rules.push(l),s.custom[e]=l}function a(e){if(!s.types[e])throw new Error("Unknown type "+e)}var s=this.RULES;if(s.keywords[e])throw new Error("Keyword "+e+" is already defined");if(!i.test(e))throw new Error("Keyword "+e+" is not a valid identifier");if(r){if(r.macro&&void 0!==r.valid)throw new Error('"valid" option cannot be used with macro keywords');var o=r.type;if(Array.isArray(o)){var l,c=o.length;for(l=0;l<c;l++)a(o[l]);for(l=0;l<c;l++)t(e,o[l],r)}else o&&a(o),t(e,o,r);var h=r.$data===!0&&this._opts.v5;if(h&&!r.validate)throw new Error('$data support: "validate" function is not defined');var u=r.metaSchema;u&&(h&&(u={anyOf:[u,{$ref:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json#/definitions/$data"}]}),r.validateSchema=this.compile(u,!0))}s.keywords[e]=s.all[e]=!0}function s(e){var r=this.RULES.custom[e];return r?r.definition:this.RULES.keywords[e]||!1}function o(e){var r=this.RULES;delete r.keywords[e],delete r.all[e],delete r.custom[e];for(var t=0;t<r.length;t++)for(var a=r[t].rules,s=0;s<a.length;s++)if(a[s].keyword==e){a.splice(s,1);break}}var i=/^[a-z_$][a-z0-9_$\-]*$/i,n=e("./dotjs/custom");r.exports={add:a,get:s,remove:o}},{"./dotjs/custom":21}],38:[function(e,r,t){r.exports={id:"http://json-schema.org/draft-04/schema#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{type:"number",minimum:0,exclusiveMinimum:!0},maximum:{type:"number"},exclusiveMaximum:{type:"boolean",default:!1},minimum:{type:"number"},exclusiveMinimum:{type:"boolean",default:!1},maxLength:{$ref:"#/definitions/positiveInteger"},minLength:{$ref:"#/definitions/positiveIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{$ref:"#/definitions/positiveInteger"},minItems:{$ref:"#/definitions/positiveIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},maxProperties:{$ref:"#/definitions/positiveInteger"},minProperties:{$ref:"#/definitions/positiveIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{type:"array",minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"]},default:{}}},{}],39:[function(e,r,t){r.exports={id:"https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json#",$schema:"http://json-schema.org/draft-04/schema#",description:"Core schema meta-schema (v5 proposals)",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},positiveInteger:{type:"integer",minimum:0},positiveIntegerDefault0:{allOf:[{$ref:"#/definitions/positiveInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},minItems:1,uniqueItems:!0},$data:{type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}},type:"object",properties:{id:{type:"string",format:"uri"},$schema:{type:"string",format:"uri"},title:{type:"string"},description:{type:"string"},default:{},multipleOf:{anyOf:[{type:"number",minimum:0,exclusiveMinimum:!0},{$ref:"#/definitions/$data"}]},maximum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{type:"number"},{$ref:"#/definitions/$data"}]},exclusiveMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxLength:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minLength:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},pattern:{anyOf:[{type:"string",format:"regex"},{$ref:"#/definitions/$data"}]},additionalItems:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:{}},maxItems:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minItems:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},uniqueItems:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},maxProperties:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minProperties:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},required:{anyOf:[{$ref:"#/definitions/stringArray"},{$ref:"#/definitions/$data"}]},additionalProperties:{anyOf:[{type:"boolean"},{$ref:"#"},{$ref:"#/definitions/$data"}],default:{}},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},enum:{anyOf:[{type:"array",minItems:1,uniqueItems:!0},{$ref:"#/definitions/$data"}]},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"},format:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMaximum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatMinimum:{anyOf:[{type:"string"},{$ref:"#/definitions/$data"}]},formatExclusiveMaximum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},formatExclusiveMinimum:{anyOf:[{type:"boolean",default:!1},{$ref:"#/definitions/$data"}]},constant:{anyOf:[{},{$ref:"#/definitions/$data"}]},contains:{$ref:"#"},patternGroups:{type:"object",additionalProperties:{type:"object",required:["schema"],properties:{maximum:{anyOf:[{$ref:"#/definitions/positiveInteger"},{$ref:"#/definitions/$data"}]},minimum:{anyOf:[{$ref:"#/definitions/positiveIntegerDefault0"},{$ref:"#/definitions/$data"}]},schema:{$ref:"#"}},additionalProperties:!1},default:{}},switch:{type:"array",items:{required:["then"],properties:{if:{$ref:"#"},then:{anyOf:[{type:"boolean"},{$ref:"#"}]},continue:{type:"boolean"}},additionalProperties:!1,dependencies:{continue:["if"]}}}},dependencies:{exclusiveMaximum:["maximum"],exclusiveMinimum:["minimum"],formatMaximum:["format"],formatMinimum:["format"],formatExclusiveMaximum:["formatMaximum"],formatExclusiveMinimum:["formatMinimum"]},default:{}}},{}],40:[function(e,r,t){"use strict";function a(r){function t(e,t,s){var o={inline:s||a[e],statements:!0,errors:"full"};t&&(o.type=t),r.addKeyword(e,o)}var a={switch:e("./dotjs/switch"),constant:e("./dotjs/constant"),_formatLimit:e("./dotjs/_formatLimit"),patternRequired:e("./dotjs/patternRequired")};if(r._opts.meta!==!1){r.addMetaSchema(e("./refs/json-schema-v5.json"),o)}t("constant"),r.addKeyword("contains",{type:"array",macro:s}),
t("formatMaximum","string",a._formatLimit),t("formatMinimum","string",a._formatLimit),r.addKeyword("formatExclusiveMaximum"),r.addKeyword("formatExclusiveMinimum"),r.addKeyword("patternGroups"),t("patternRequired","object"),t("switch")}function s(e){return{not:{items:{not:e}}}}var o="https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/json-schema-v5.json";r.exports={enable:a,META_SCHEMA_ID:o}},{"./dotjs/_formatLimit":13,"./dotjs/constant":20,"./dotjs/patternRequired":30,"./dotjs/switch":34,"./refs/json-schema-v5.json":39}],41:[function(r,t,a){(function(r){!function(s){function o(e){throw new RangeError(D[e])}function i(e,r){for(var t=e.length,a=[];t--;)a[t]=r(e[t]);return a}function n(e,r){var t=e.split("@"),a="";return t.length>1&&(a=t[0]+"@",e=t[1]),e=e.replace(q,"."),a+i(e.split("."),r).join(".")}function l(e){for(var r,t,a=[],s=0,o=e.length;s<o;)r=e.charCodeAt(s++),r>=55296&&r<=56319&&s<o?(t=e.charCodeAt(s++),56320==(64512&t)?a.push(((1023&r)<<10)+(1023&t)+65536):(a.push(r),s--)):a.push(r);return a}function c(e){return i(e,function(e){var r="";return e>65535&&(e-=65536,r+=C(e>>>10&1023|55296),e=56320|1023&e),r+=C(e)}).join("")}function h(e){return e-48<10?e-22:e-65<26?e-65:e-97<26?e-97:j}function u(e,r){return e+22+75*(e<26)-((0!=r)<<5)}function f(e,r,t){var a=0;for(e=t?Q(e/_):e>>1,e+=Q(e/r);e>L*$>>1;a+=j)e=Q(e/L);return Q(a+(L+1)*e/(e+x))}function d(e){var r,t,a,s,i,n,l,u,d,p,m=[],v=e.length,y=0,g=R,P=O;for(t=e.lastIndexOf(I),t<0&&(t=0),a=0;a<t;++a)e.charCodeAt(a)>=128&&o("not-basic"),m.push(e.charCodeAt(a));for(s=t>0?t+1:0;s<v;){for(i=y,n=1,l=j;s>=v&&o("invalid-input"),u=h(e.charCodeAt(s++)),(u>=j||u>Q((w-y)/n))&&o("overflow"),y+=u*n,d=l<=P?S:l>=P+$?$:l-P,!(u<d);l+=j)p=j-d,n>Q(w/p)&&o("overflow"),n*=p;r=m.length+1,P=f(y-i,r,0==i),Q(y/r)>w-g&&o("overflow"),g+=Q(y/r),y%=r,m.splice(y++,0,g)}return c(m)}function p(e){var r,t,a,s,i,n,c,h,d,p,m,v,y,g,P,E=[];for(e=l(e),v=e.length,r=R,t=0,i=O,n=0;n<v;++n)m=e[n],m<128&&E.push(C(m));for(a=s=E.length,s&&E.push(I);a<v;){for(c=w,n=0;n<v;++n)m=e[n],m>=r&&m<c&&(c=m);for(y=a+1,c-r>Q((w-t)/y)&&o("overflow"),t+=(c-r)*y,r=c,n=0;n<v;++n)if(m=e[n],m<r&&++t>w&&o("overflow"),m==r){for(h=t,d=j;p=d<=i?S:d>=i+$?$:d-i,!(h<p);d+=j)P=h-p,g=j-p,E.push(C(u(p+P%g,0))),h=Q(P/g);E.push(C(u(h,0))),i=f(t,y,a==s),t=0,++a}++t,++r}return E.join("")}function m(e){return n(e,function(e){return A.test(e)?d(e.slice(4).toLowerCase()):e})}function v(e){return n(e,function(e){return k.test(e)?"xn--"+p(e):e})}var y="object"==typeof a&&a&&!a.nodeType&&a,g="object"==typeof t&&t&&!t.nodeType&&t,P="object"==typeof r&&r;P.global!==P&&P.window!==P&&P.self!==P||(s=P);var E,b,w=2147483647,j=36,S=1,$=26,x=38,_=700,O=72,R=128,I="-",A=/^xn--/,k=/[^\x20-\x7E]/,q=/[\x2E\u3002\uFF0E\uFF61]/g,D={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},L=j-S,Q=Math.floor,C=String.fromCharCode;if(E={version:"1.4.1",ucs2:{decode:l,encode:c},decode:d,encode:p,toASCII:v,toUnicode:m},"function"==typeof e&&"object"==typeof e.amd&&e.amd)e("punycode",function(){return E});else if(y&&g)if(t.exports==y)g.exports=E;else for(b in E)E.hasOwnProperty(b)&&(y[b]=E[b]);else s.punycode=E}(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],42:[function(e,r,t){"use strict";function a(e,r){return Object.prototype.hasOwnProperty.call(e,r)}r.exports=function(e,r,t,o){r=r||"&",t=t||"=";var i={};if("string"!=typeof e||0===e.length)return i;var n=/\+/g;e=e.split(r);var l=1e3;o&&"number"==typeof o.maxKeys&&(l=o.maxKeys);var c=e.length;l>0&&c>l&&(c=l);for(var h=0;h<c;++h){var u,f,d,p,m=e[h].replace(n,"%20"),v=m.indexOf(t);v>=0?(u=m.substr(0,v),f=m.substr(v+1)):(u=m,f=""),d=decodeURIComponent(u),p=decodeURIComponent(f),a(i,d)?s(i[d])?i[d].push(p):i[d]=[i[d],p]:i[d]=p}return i};var s=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)}},{}],43:[function(e,r,t){"use strict";function a(e,r){if(e.map)return e.map(r);for(var t=[],a=0;a<e.length;a++)t.push(r(e[a],a));return t}var s=function(e){switch(typeof e){case"string":return e;case"boolean":return e?"true":"false";case"number":return isFinite(e)?e:"";default:return""}};r.exports=function(e,r,t,n){return r=r||"&",t=t||"=",null===e&&(e=void 0),"object"==typeof e?a(i(e),function(i){var n=encodeURIComponent(s(i))+t;return o(e[i])?a(e[i],function(e){return n+encodeURIComponent(s(e))}).join(r):n+encodeURIComponent(s(e[i]))}).join(r):n?encodeURIComponent(s(n))+t+encodeURIComponent(s(e)):""};var o=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},i=Object.keys||function(e){var r=[];for(var t in e)Object.prototype.hasOwnProperty.call(e,t)&&r.push(t);return r}},{}],44:[function(e,r,t){"use strict";t.decode=t.parse=e("./decode"),t.encode=t.stringify=e("./encode")},{"./decode":42,"./encode":43}],45:[function(e,r,t){"use strict";function a(){this.protocol=null,this.slashes=null,this.auth=null,this.host=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.query=null,this.pathname=null,this.path=null,this.href=null}function s(e,r,t){if(e&&c.isObject(e)&&e instanceof a)return e;var s=new a;return s.parse(e,r,t),s}function o(e){return c.isString(e)&&(e=s(e)),e instanceof a?e.format():a.prototype.format.call(e)}function i(e,r){return s(e,!1,!0).resolve(r)}function n(e,r){return e?s(e,!1,!0).resolveObject(r):r}var l=e("punycode"),c=e("./util");t.parse=s,t.resolve=i,t.resolveObject=n,t.format=o,t.Url=a;var h=/^([a-z0-9.+-]+:)/i,u=/:[0-9]*$/,f=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,d=["<",">",'"',"`"," ","\r","\n","\t"],p=["{","}","|","\\","^","`"].concat(d),m=["'"].concat(p),v=["%","/","?",";","#"].concat(m),y=["/","?","#"],g=/^[+a-z0-9A-Z_-]{0,63}$/,P=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,E={javascript:!0,"javascript:":!0},b={javascript:!0,"javascript:":!0},w={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0},j=e("querystring");a.prototype.parse=function(e,r,t){if(!c.isString(e))throw new TypeError("Parameter 'url' must be a string, not "+typeof e);var a=e.indexOf("?"),s=a!==-1&&a<e.indexOf("#")?"?":"#",o=e.split(s);o[0]=o[0].replace(/\\/g,"/"),e=o.join(s);var i=e;if(i=i.trim(),!t&&1===e.split("#").length){var n=f.exec(i);if(n)return this.path=i,this.href=i,this.pathname=n[1],n[2]?(this.search=n[2],this.query=r?j.parse(this.search.substr(1)):this.search.substr(1)):r&&(this.search="",this.query={}),this}var u=h.exec(i);if(u){u=u[0];var d=u.toLowerCase();this.protocol=d,i=i.substr(u.length)}if(t||u||i.match(/^\/\/[^@\/]+@[^@\/]+/)){var p="//"===i.substr(0,2);!p||u&&b[u]||(i=i.substr(2),this.slashes=!0)}if(!b[u]&&(p||u&&!w[u])){for(var S=-1,$=0;$<y.length;$++){var x=i.indexOf(y[$]);x!==-1&&(S===-1||x<S)&&(S=x)}var _,O;O=S===-1?i.lastIndexOf("@"):i.lastIndexOf("@",S),O!==-1&&(_=i.slice(0,O),i=i.slice(O+1),this.auth=decodeURIComponent(_)),S=-1;for(var $=0;$<v.length;$++){var x=i.indexOf(v[$]);x!==-1&&(S===-1||x<S)&&(S=x)}S===-1&&(S=i.length),this.host=i.slice(0,S),i=i.slice(S),this.parseHost(),this.hostname=this.hostname||"";var R="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!R)for(var I=this.hostname.split(/\./),$=0,A=I.length;$<A;$++){var k=I[$];if(k&&!k.match(g)){for(var q="",D=0,L=k.length;D<L;D++)q+=k.charCodeAt(D)>127?"x":k[D];if(!q.match(g)){var Q=I.slice(0,$),C=I.slice($+1),V=k.match(P);V&&(Q.push(V[1]),C.unshift(V[2])),C.length&&(i="/"+C.join(".")+i),this.hostname=Q.join(".");break}}}this.hostname=this.hostname.length>255?"":this.hostname.toLowerCase(),R||(this.hostname=l.toASCII(this.hostname));var z=this.port?":"+this.port:"";this.host=(this.hostname||"")+z,this.href+=this.host,R&&(this.hostname=this.hostname.substr(1,this.hostname.length-2),"/"!==i[0]&&(i="/"+i))}if(!E[d])for(var $=0,A=m.length;$<A;$++){var U=m[$];if(i.indexOf(U)!==-1){var T=encodeURIComponent(U);T===U&&(T=escape(U)),i=i.split(U).join(T)}}var M=i.indexOf("#");M!==-1&&(this.hash=i.substr(M),i=i.slice(0,M));var N=i.indexOf("?");if(N!==-1?(this.search=i.substr(N),this.query=i.substr(N+1),r&&(this.query=j.parse(this.query)),i=i.slice(0,N)):r&&(this.search="",this.query={}),i&&(this.pathname=i),w[d]&&this.hostname&&!this.pathname&&(this.pathname="/"),this.pathname||this.search){var z=this.pathname||"";this.path=z+(this.search||"")}return this.href=this.format(),this},a.prototype.format=function(){var e=this.auth||"";e&&(e=encodeURIComponent(e),e=e.replace(/%3A/i,":"),e+="@");var r=this.protocol||"",t=this.pathname||"",a=this.hash||"",s=!1,o="";this.host?s=e+this.host:this.hostname&&(s=e+(this.hostname.indexOf(":")===-1?this.hostname:"["+this.hostname+"]"),this.port&&(s+=":"+this.port)),this.query&&c.isObject(this.query)&&Object.keys(this.query).length&&(o=j.stringify(this.query));var i=this.search||o&&"?"+o||"";return r&&":"!==r.substr(-1)&&(r+=":"),this.slashes||(!r||w[r])&&s!==!1?(s="//"+(s||""),t&&"/"!==t.charAt(0)&&(t="/"+t)):s||(s=""),a&&"#"!==a.charAt(0)&&(a="#"+a),i&&"?"!==i.charAt(0)&&(i="?"+i),t=t.replace(/[?#]/g,function(e){return encodeURIComponent(e)}),i=i.replace("#","%23"),r+s+t+i+a},a.prototype.resolve=function(e){return this.resolveObject(s(e,!1,!0)).format()},a.prototype.resolveObject=function(e){if(c.isString(e)){var r=new a;r.parse(e,!1,!0),e=r}for(var t=new a,s=Object.keys(this),o=0;o<s.length;o++){var i=s[o];t[i]=this[i]}if(t.hash=e.hash,""===e.href)return t.href=t.format(),t;if(e.slashes&&!e.protocol){for(var n=Object.keys(e),l=0;l<n.length;l++){var h=n[l];"protocol"!==h&&(t[h]=e[h])}return w[t.protocol]&&t.hostname&&!t.pathname&&(t.path=t.pathname="/"),t.href=t.format(),t}if(e.protocol&&e.protocol!==t.protocol){if(!w[e.protocol]){for(var u=Object.keys(e),f=0;f<u.length;f++){var d=u[f];t[d]=e[d]}return t.href=t.format(),t}if(t.protocol=e.protocol,e.host||b[e.protocol])t.pathname=e.pathname;else{for(var p=(e.pathname||"").split("/");p.length&&!(e.host=p.shift()););e.host||(e.host=""),e.hostname||(e.hostname=""),""!==p[0]&&p.unshift(""),p.length<2&&p.unshift(""),t.pathname=p.join("/")}return t.search=e.search,t.query=e.query,t.host=e.host||"",t.auth=e.auth,t.hostname=e.hostname||e.host,t.port=e.port,(t.pathname||t.search)&&(t.path=(t.pathname||"")+(t.search||"")),t.slashes=t.slashes||e.slashes,t.href=t.format(),t}var m=t.pathname&&"/"===t.pathname.charAt(0),v=e.host||e.pathname&&"/"===e.pathname.charAt(0),y=v||m||t.host&&e.pathname,g=y,P=t.pathname&&t.pathname.split("/")||[],p=e.pathname&&e.pathname.split("/")||[],E=t.protocol&&!w[t.protocol];if(E&&(t.hostname="",t.port=null,t.host&&(""===P[0]?P[0]=t.host:P.unshift(t.host)),t.host="",e.protocol&&(e.hostname=null,e.port=null,e.host&&(""===p[0]?p[0]=e.host:p.unshift(e.host)),e.host=null),y=y&&(""===p[0]||""===P[0])),v)t.host=e.host||""===e.host?e.host:t.host,t.hostname=e.hostname||""===e.hostname?e.hostname:t.hostname,t.search=e.search,t.query=e.query,P=p;else if(p.length)P||(P=[]),P.pop(),P=P.concat(p),t.search=e.search,t.query=e.query;else if(!c.isNullOrUndefined(e.search)){if(E){t.hostname=t.host=P.shift();var j=!!(t.host&&t.host.indexOf("@")>0)&&t.host.split("@");j&&(t.auth=j.shift(),t.host=t.hostname=j.shift())}return t.search=e.search,t.query=e.query,c.isNull(t.pathname)&&c.isNull(t.search)||(t.path=(t.pathname?t.pathname:"")+(t.search?t.search:"")),t.href=t.format(),t}if(!P.length)return t.pathname=null,t.path=t.search?"/"+t.search:null,t.href=t.format(),t;for(var S=P.slice(-1)[0],$=(t.host||e.host||P.length>1)&&("."===S||".."===S)||""===S,x=0,_=P.length;_>=0;_--)S=P[_],"."===S?P.splice(_,1):".."===S?(P.splice(_,1),x++):x&&(P.splice(_,1),x--);if(!y&&!g)for(;x--;x)P.unshift("..");!y||""===P[0]||P[0]&&"/"===P[0].charAt(0)||P.unshift(""),$&&"/"!==P.join("/").substr(-1)&&P.push("");var O=""===P[0]||P[0]&&"/"===P[0].charAt(0);if(E){t.hostname=t.host=O?"":P.length?P.shift():"";var j=!!(t.host&&t.host.indexOf("@")>0)&&t.host.split("@");j&&(t.auth=j.shift(),t.host=t.hostname=j.shift())}return y=y||t.host&&P.length,y&&!O&&P.unshift(""),P.length?t.pathname=P.join("/"):(t.pathname=null,t.path=null),c.isNull(t.pathname)&&c.isNull(t.search)||(t.path=(t.pathname?t.pathname:"")+(t.search?t.search:"")),t.auth=e.auth||t.auth,t.slashes=t.slashes||e.slashes,t.href=t.format(),t},a.prototype.parseHost=function(){var e=this.host,r=u.exec(e);r&&(r=r[0],":"!==r&&(this.port=r.substr(1)),e=e.substr(0,e.length-r.length)),e&&(this.hostname=e)}},{"./util":46,punycode:41,querystring:44}],46:[function(e,r,t){"use strict";r.exports={isString:function(e){return"string"==typeof e},isObject:function(e){return"object"==typeof e&&null!==e},isNull:function(e){return null===e},isNullOrUndefined:function(e){return null==e}}},{}],47:[function(e,r,t){function a(e){var r=this,t=f.call(arguments,1);return new Promise(function(a,o){function i(r){var t;try{t=e.next(r)}catch(e){return o(e)}c(t)}function n(r){var t;try{t=e.throw(r)}catch(e){return o(e)}c(t)}function c(e){if(e.done)return a(e.value);var t=s.call(r,e.value);return t&&l(t)?t.then(i,n):n(new TypeError('You may only yield a function, promise, generator, array, or object, but the following object was passed: "'+String(e.value)+'"'))}if("function"==typeof e&&(e=e.apply(r,t)),!e||"function"!=typeof e.next)return a(e);i()})}function s(e){return e?l(e)?e:h(e)||c(e)?a.call(this,e):"function"==typeof e?o.call(this,e):Array.isArray(e)?i.call(this,e):u(e)?n.call(this,e):e:e}function o(e){var r=this;return new Promise(function(t,a){e.call(r,function(e,r){if(e)return a(e);arguments.length>2&&(r=f.call(arguments,1)),t(r)})})}function i(e){return Promise.all(e.map(s,this))}function n(e){function r(e,r){t[r]=void 0,o.push(e.then(function(e){t[r]=e}))}for(var t=new e.constructor,a=Object.keys(e),o=[],i=0;i<a.length;i++){var n=a[i],c=s.call(this,e[n]);c&&l(c)?r(c,n):t[n]=e[n]}return Promise.all(o).then(function(){return t})}function l(e){return"function"==typeof e.then}function c(e){return"function"==typeof e.next&&"function"==typeof e.throw}function h(e){var r=e.constructor;return!!r&&("GeneratorFunction"===r.name||"GeneratorFunction"===r.displayName||c(r.prototype))}function u(e){return Object==e.constructor}var f=Array.prototype.slice;r.exports=a.default=a.co=a,a.wrap=function(e){function r(){return a.call(this,e.apply(this,arguments))}return r.__generatorFunction__=e,r}},{}],48:[function(e,r,t){var a="undefined"!=typeof JSON?JSON:e("jsonify");r.exports=function(e,r){r||(r={}),"function"==typeof r&&(r={cmp:r});var t=r.space||"";"number"==typeof t&&(t=Array(t+1).join(" "));var i="boolean"==typeof r.cycles&&r.cycles,n=r.replacer||function(e,r){return r},l=r.cmp&&function(e){return function(r){return function(t,a){return e({key:t,value:r[t]},{key:a,value:r[a]})}}}(r.cmp),c=[];return function e(r,h,u,f){var d=t?"\n"+new Array(f+1).join(t):"",p=t?": ":":";if(u&&u.toJSON&&"function"==typeof u.toJSON&&(u=u.toJSON()),u=n.call(r,h,u),void 0!==u){if("object"!=typeof u||null===u)return a.stringify(u);if(s(u)){for(var m=[],v=0;v<u.length;v++){m.push(d+t+(e(u,v,u[v],f+1)||a.stringify(null)))}return"["+m.join(",")+d+"]"}if(c.indexOf(u)!==-1){if(i)return a.stringify("__cycle__");throw new TypeError("Converting circular structure to JSON")}c.push(u);for(var y=o(u).sort(l&&l(u)),m=[],v=0;v<y.length;v++){var h=y[v],g=e(u,h,u[h],f+1);if(g){m.push(d+t+(a.stringify(h)+p+g))}}return c.splice(c.indexOf(u),1),"{"+m.join(",")+d+"}"}}({"":e},"",e,0)};var s=Array.isArray||function(e){return"[object Array]"==={}.toString.call(e)},o=Object.keys||function(e){var r=Object.prototype.hasOwnProperty||function(){return!0},t=[];for(var a in e)r.call(e,a)&&t.push(a);return t}},{jsonify:49}],49:[function(e,r,t){t.parse=e("./lib/parse"),t.stringify=e("./lib/stringify")},{"./lib/parse":50,"./lib/stringify":51}],50:[function(e,r,t){var a,s,o,i,n={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},l=function(e){throw{name:"SyntaxError",message:e,at:a,text:o}},c=function(e){return e&&e!==s&&l("Expected '"+e+"' instead of '"+s+"'"),s=o.charAt(a),a+=1,s},h=function(){var e,r="";for("-"===s&&(r="-",c("-"));s>="0"&&s<="9";)r+=s,c();if("."===s)for(r+=".";c()&&s>="0"&&s<="9";)r+=s;if("e"===s||"E"===s)for(r+=s,c(),"-"!==s&&"+"!==s||(r+=s,c());s>="0"&&s<="9";)r+=s,c();if(e=+r,isFinite(e))return e;l("Bad number")},u=function(){var e,r,t,a="";if('"'===s)for(;c();){if('"'===s)return c(),a;if("\\"===s)if(c(),"u"===s){for(t=0,r=0;r<4&&(e=parseInt(c(),16),isFinite(e));r+=1)t=16*t+e;a+=String.fromCharCode(t)}else{if("string"!=typeof n[s])break;a+=n[s]}else a+=s}l("Bad string")},f=function(){for(;s&&s<=" ";)c()},d=function(){switch(s){case"t":return c("t"),c("r"),c("u"),c("e"),!0;case"f":return c("f"),c("a"),c("l"),c("s"),c("e"),!1;case"n":return c("n"),c("u"),c("l"),c("l"),null}l("Unexpected '"+s+"'")},p=function(){var e=[];if("["===s){if(c("["),f(),"]"===s)return c("]"),e;for(;s;){if(e.push(i()),f(),"]"===s)return c("]"),e;c(","),f()}}l("Bad array")},m=function(){var e,r={};if("{"===s){if(c("{"),f(),"}"===s)return c("}"),r;for(;s;){if(e=u(),f(),c(":"),Object.hasOwnProperty.call(r,e)&&l('Duplicate key "'+e+'"'),r[e]=i(),f(),"}"===s)return c("}"),r;c(","),f()}}l("Bad object")};i=function(){switch(f(),s){case"{":return m();case"[":return p();case'"':return u();case"-":return h();default:return s>="0"&&s<="9"?h():d()}},r.exports=function(e,r){var t;return o=e,a=0,s=" ",t=i(),f(),s&&l("Syntax error"),"function"==typeof r?function e(t,a){var s,o,i=t[a];if(i&&"object"==typeof i)for(s in i)Object.prototype.hasOwnProperty.call(i,s)&&(o=e(i,s),void 0!==o?i[s]=o:delete i[s]);return r.call(t,a,i)}({"":t},""):t}},{}],51:[function(e,r,t){function a(e){return l.lastIndex=0,l.test(e)?'"'+e.replace(l,function(e){var r=c[e];return"string"==typeof r?r:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}function s(e,r){var t,l,c,h,u,f=o,d=r[e];switch(d&&"object"==typeof d&&"function"==typeof d.toJSON&&(d=d.toJSON(e)),"function"==typeof n&&(d=n.call(r,e,d)),typeof d){case"string":return a(d);case"number":return isFinite(d)?String(d):"null";case"boolean":case"null":return String(d);case"object":if(!d)return"null";if(o+=i,u=[],"[object Array]"===Object.prototype.toString.apply(d)){for(h=d.length,t=0;t<h;t+=1)u[t]=s(t,d)||"null";return c=0===u.length?"[]":o?"[\n"+o+u.join(",\n"+o)+"\n"+f+"]":"["+u.join(",")+"]",o=f,c}if(n&&"object"==typeof n)for(h=n.length,t=0;t<h;t+=1)l=n[t],"string"==typeof l&&(c=s(l,d),c&&u.push(a(l)+(o?": ":":")+c));else for(l in d)Object.prototype.hasOwnProperty.call(d,l)&&(c=s(l,d),c&&u.push(a(l)+(o?": ":":")+c));return c=0===u.length?"{}":o?"{\n"+o+u.join(",\n"+o)+"\n"+f+"}":"{"+u.join(",")+"}",o=f,c}}var o,i,n,l=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,c={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};r.exports=function(e,r,t){var a;if(o="",i="","number"==typeof t)for(a=0;a<t;a+=1)i+=" ";else"string"==typeof t&&(i=t);if(n=r,r&&"function"!=typeof r&&("object"!=typeof r||"number"!=typeof r.length))throw new Error("JSON.stringify");return s("",{"":e})}},{}],ajv:[function(e,r,t){"use strict";function a(e){return g.test(e)}function s(r){function t(e,r){var t;if("string"==typeof e){if(t=S(e),!t)throw new Error('no schema with key or ref "'+e+'"')}else{var a=R(e);t=a.validate||I(a)}var s=t(r);return t.$async===!0?"*"==V._opts.async?m(s):s:(V.errors=t.errors,s)}function v(e,r){var t=R(e,void 0,r);return t.validate||I(t)}function E(e,r,t,a){if(Array.isArray(e))for(var s=0;s<e.length;s++)E(e[s],void 0,t,a);else r=i.normalizeId(r||e.id),Q(r),V._schemas[r]=R(e,t,a,!0)}function b(e,r,t){E(e,r,t,!0)}function w(e,r){var s=e.$schema||V._opts.defaultMeta||j(),o=V._formats.uri;V._formats.uri="function"==typeof o?a:g;var i;try{i=t(s,e)}finally{V._formats.uri=o}if(!i&&r){var n="schema is invalid: "+A();if("log"!=V._opts.validateSchema)throw new Error(n);console.error(n)}return i}function j(){var e=V._opts.meta;return V._opts.defaultMeta="object"==typeof e?e.id||e:V._opts.v5?f.META_SCHEMA_ID:y}function S(e){var r=x(e);switch(typeof r){case"object":return r.validate||I(r);case"string":return S(r);case"undefined":return $(e)}}function $(e){var r=i.schema.call(V,{schema:{}},e);if(r){var t=r.schema,a=r.root,s=r.baseId,n=o.call(V,t,a,void 0,s);return V._fragments[e]=new l({ref:e,fragment:!0,schema:t,root:a,baseId:s,validate:n}),n}}function x(e){return e=i.normalizeId(e),V._schemas[e]||V._refs[e]||V._fragments[e]}function _(e){if(e instanceof RegExp)return O(V._schemas,e),void O(V._refs,e);switch(typeof e){case"undefined":return O(V._schemas),O(V._refs),void V._cache.clear();case"string":var r=x(e);return r&&V._cache.del(r.jsonStr),delete V._schemas[e],void delete V._refs[e];case"object":V._cache.del(c(e));var t=e.id;t&&(t=i.normalizeId(t),delete V._schemas[t],delete V._refs[t])}}function O(e,r){for(var t in e){var a=e[t];a.meta||r&&!r.test(t)||(V._cache.del(a.jsonStr),delete e[t])}}function R(e,r,t,a){if("object"!=typeof e)throw new Error("schema should be object");var s=c(e),o=V._cache.get(s);if(o)return o;a=a||V._opts.addUsedSchema!==!1;var n=i.normalizeId(e.id);n&&a&&Q(n);var h,u=V._opts.validateSchema!==!1&&!r;u&&!(h=e.id&&e.id==e.$schema)&&w(e,!0);var f=i.ids.call(V,e),d=new l({id:n,schema:e,localRefs:f,jsonStr:s,meta:t});return"#"!=n[0]&&a&&(V._refs[n]=d),V._cache.put(s,d),u&&h&&w(e,!0),d}function I(e,r){function t(){var r=e.validate,a=r.apply(null,arguments);return t.errors=r.errors,a}if(e.compiling)return e.validate=t,t.schema=e.schema,t.errors=null,t.root=r?r:t,e.schema.$async===!0&&(t.$async=!0),t;e.compiling=!0;var a;e.meta&&(a=V._opts,V._opts=V._metaOpts);var s;try{s=o.call(V,e.schema,r,e.localRefs)}finally{e.compiling=!1,e.meta&&(V._opts=a)}return e.validate=s,e.refs=s.refs,e.refVal=s.refVal,e.root=s.root,s}function A(e,r){if(e=e||V.errors,!e)return"No errors";r=r||{};for(var t=void 0===r.separator?", ":r.separator,a=void 0===r.dataVar?"data":r.dataVar,s="",o=0;o<e.length;o++){var i=e[o];i&&(s+=a+i.dataPath+" "+i.message+t)}return s.slice(0,-t.length)}function k(e,r){"string"==typeof r&&(r=new RegExp(r)),V._formats[e]=r}function q(){if(V._opts.meta!==!1){b(e("./refs/json-schema-draft-04.json"),y,!0),V._refs["http://json-schema.org/schema"]=y}}function D(){var e=V._opts.schemas;if(e)if(Array.isArray(e))E(e);else for(var r in e)E(e[r],r)}function L(){for(var e in V._opts.formats){k(e,V._opts.formats[e])}}function Q(e){if(V._schemas[e]||V._refs[e])throw new Error('schema with key or id "'+e+'" already exists')}function C(){for(var e=d.copy(V._opts),r=0;r<P.length;r++)delete e[P[r]];return e}if(!(this instanceof s))return new s(r);var V=this;r=this._opts=d.copy(r)||{},this._schemas={},this._refs={},this._fragments={},this._formats=h(r.format),this._cache=r.cache||new n,this._loadingSchemas={},this._compilations=[],this.RULES=u(),this.validate=t,this.compile=v,this.addSchema=E,this.addMetaSchema=b,this.validateSchema=w,this.getSchema=S,this.removeSchema=_,this.addFormat=k,this.errorsText=A,this._addSchema=R,this._compile=I,r.loopRequired=r.loopRequired||1/0,(r.async||r.transpile)&&p.setup(r),r.beautify===!0&&(r.beautify={indent_size:2}),"property"==r.errorDataPath&&(r._errorDataPathProperty=!0),this._metaOpts=C(),r.formats&&L(),q(),r.v5&&f.enable(this),"object"==typeof r.meta&&b(r.meta),D()}var o=e("./compile"),i=e("./compile/resolve"),n=e("./cache"),l=e("./compile/schema_obj"),c=e("json-stable-stringify"),h=e("./compile/formats"),u=e("./compile/rules"),f=e("./v5"),d=e("./compile/util"),p=e("./async"),m=e("co");r.exports=s,s.prototype.compileAsync=p.compile;var v=e("./keyword");s.prototype.addKeyword=v.add,s.prototype.getKeyword=v.get,s.prototype.removeKeyword=v.remove,s.ValidationError=e("./compile/validation_error");var y="http://json-schema.org/draft-04/schema",g=/^(?:(?:[a-z][a-z0-9+-.]*:)?\/\/)?[^\s]*$/i,P=["removeAdditional","useDefaults","coerceTypes"]},{"./async":1,"./cache":2,"./compile":6,"./compile/formats":5,"./compile/resolve":7,"./compile/rules":8,"./compile/schema_obj":9,"./compile/util":11,"./compile/validation_error":12,"./keyword":37,"./refs/json-schema-draft-04.json":38,"./v5":40,co:47,"json-stable-stringify":48}]},{},[])("ajv")});