(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 da(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})}}function ea(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}
da("Array.prototype.values",function(a){return a?a:function(){return ea(this,function(b,c){return c})}});da("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}});
da("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 k=this||self;
function m(a,b,c){a=a.split(".");c=c||k;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.ee=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.$d=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(k.Nc)return k.Nc(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}k.Mc||(k.Mc=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.La=a;this.K=this.La.length/4;this.ja=this.K+6;this.O=[[],[],[],[]];this.xa=[[],[],[],[]];this.I=Array(u*(this.ja+1));for(a=0;a<this.K;a++)this.I[a]=[this.La[4*a],this.La[4*a+1],this.La[4*a+2],this.La[4*a+3]];var b=Array(4);for(a=this.K;a<u*(this.ja+1);a++){b[0]=this.I[a-1][0];b[1]=this.I[a-1][1];b[2]=this.I[a-1][2];b[3]=this.I[a-1][3];if(0==a%this.K){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.K][0];b[1]^=v[a/this.K][1];b[2]^=v[a/this.K][2];b[3]^=v[a/
this.K][3]}else 6<this.K&&4==a%this.K&&ua(b);this.I[a]=Array(4);this.I[a][0]=this.I[a-this.K][0]^b[0];this.I[a][1]=this.I[a-this.K][1]^b[1];this.I[a][2]=this.I[a-this.K][2]^b[2];this.I[a][3]=this.I[a-this.K][3]^b[3]}}t.prototype.ya=16;var u=t.prototype.ya/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.xa[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]=xa[c[0]]^ya[c[1]]^c[2]^c[3],b[1][d]=c[0]^xa[c[1]]^ya[c[2]]^c[3],b[2][d]=c[0]^c[1]^xa[c[2]]^ya[c[3]],b[3][d]=ya[c[0]]^c[1]^c[2]^xa[c[3]];w(this,a)}x(this,y);wa(this);w(this,this.ja);return za(this)};
t.prototype.decrypt=function(a){va(this,a);w(this,this.ja);for(a=1;a<this.ja;++a){Aa(this);x(this,Ba);w(this,this.ja-a);for(var b=this.O,c=this.xa[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]=Ca[c[0]]^Da[c[1]]^Ea[c[2]]^Fa[c[3]],b[1][d]=Fa[c[0]]^Ca[c[1]]^Da[c[2]]^Ea[c[3]],b[2][d]=Ea[c[0]]^Fa[c[1]]^Ca[c[2]]^Da[c[3]],b[3][d]=Da[c[0]]^Ea[c[1]]^Fa[c[2]]^Ca[c[3]]}Aa(this);x(this,Ba);w(this,0);return za(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 za(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.I[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.xa[b][c]=a.O[b][c];for(b=1;4>b;b++)for(c=0;4>c;c++)a.O[b][c]=a.xa[b][(c+b)%u]}
function Aa(a){for(var b=1;4>b;b++)for(var c=0;4>c;c++)a.xa[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.xa[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],Ba=[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]],xa=[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],ya=[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],Fa=[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],Da=[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],Ea=[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],Ca=[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 z=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)},Ha=Array.prototype.filter?function(a,b){return Array.prototype.filter.call(a,
b,void 0)}:function(a,b){const c=a.length,d=[];let e=0;const f="string"===typeof a?a.split(""):a;for(let g=0;g<c;g++)if(g in f){const h=f[g];b.call(void 0,h,g,a)&&(d[e++]=h)}return d};function Ia(a,b){a:{const c=a.length,d="string"===typeof a?a.split(""):a;for(let e=0;e<c;e++)if(e in d&&b.call(void 0,d[e],e,a)){b=e;break a}b=-1}return 0>b?null:"string"===typeof a?a.charAt(b):a[b]}function Ja(a,b){b=z(a,b);let c;(c=0<=b)&&Array.prototype.splice.call(a,b,1);return c}
function Ka(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 La(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 Ma(a,b,c,d){Array.prototype.splice.apply(a,Na(arguments,1))}function Na(a,b,c){return 2>=arguments.length?Array.prototype.slice.call(a,b):Array.prototype.slice.call(a,b,c)};function Oa(a){this.sa=a}Oa.prototype.encrypt=function(a,b){var c=[],d=b;for(b=0;b<a.length;b+=this.sa.ya)d=ta(Array.prototype.slice.call(a,b,b+this.sa.ya),d),d=this.sa.encrypt(d),La(c,d);return c};Oa.prototype.decrypt=function(a,b){for(var c=[],d=0,e=b;d<a.length;){b=Array.prototype.slice.call(a,d,d+this.sa.ya);var f=this.sa.decrypt(b);e=ta(e,f);La(c,e);e=b;d+=this.sa.ya}return c};var Pa=q("343ebcf014a7e244ba703229647cf607"),Qa=q("429ab6bc5b161fb66503db4b4b7e310b"),Ra=q("410f951a7436c2bcae986399fe12d772"),Sa=q("b3ee0a61544dc2e8b07cfc41277893ac");function Ta(a,b,c){const [d,e]=a.split(":");var f=q(e);a=parseInt(d,10);b=new t(b);c=(new Oa(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++};let Ua=()=>!1;function Va(a){a&&("function"===typeof a.Kc&&a.Kc(),a.disposed=!0)}function Wa(a,b){Ua()&&(b?k.console.error(a):k.console.warn(a))}function Xa(a,b){const c=a.stack||a.toString();0>String(c).indexOf(a.message)&&Wa(a.message,b);Wa(c,b)}window.onerror=function(...a){const [b,,,,c]=a;c?Xa(c,!0):Wa(b,!0);return!0};ra=a=>{try{throw Error(a.message);}catch(b){Xa(b,!1)}};
k.console||(window._log="",k.console={log:function(a){window._log+="\n"+a},warn:function(a){window._log+="\nwarn: "+a},error:function(a){window._log+="\nerror: "+a}});var Ya=String.prototype.trim?function(a){return a.trim()}:function(a){return/^[\s\xa0]*([\s\S]*?)[\s\xa0]*$/.exec(a)[1]},Za=/&/g,$a=/</g,ab=/>/g,bb=/"/g,cb=/'/g,db=/\x00/g,eb=/[\x00&<>"']/;function fb(){var a=k.navigator;return a&&(a=a.userAgent)?a:""}function A(a){return-1!=fb().indexOf(a)};var hb=A("Opera"),ib=A("Trident")||A("MSIE"),jb=A("Gecko")&&!(-1!=fb().toLowerCase().indexOf("webkit")&&!A("Edge"))&&!(A("Trident")||A("MSIE"))&&!A("Edge"),kb=-1!=fb().toLowerCase().indexOf("webkit")&&!A("Edge");var lb=A("Firefox")||A("FxiOS");function mb(a,b){for(const c in a)b.call(void 0,a[c],c,a)}function nb(a,b){const c={};for(const d in a)b.call(void 0,a[d],d,a)&&(c[d]=a[d]);return c}function ob(a,b){for(const c in a)if(b.call(void 0,a[c],c,a))return c}function B(a,b,c){return null!==a&&b in a?a[b]:c};function pb(a){return String(a).replace(/\-([a-z])/g,function(b,c){return c.toUpperCase()})}function qb(a){return a.replace(RegExp("(^|[\\s]+)([a-z])","g"),function(b,c,d){return c+d.toUpperCase()})};function C(){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 D;const rb=C().user_agent;D=rb?rb:fb()||"";C();C();const sb=-1!=D.toLowerCase().indexOf("chrome"),tb=-1==D.toLowerCase().indexOf("windows phone")&&-1!=D.toLowerCase().indexOf("android")&&!sb&&!lb&&!hb,ub=-1!=D.indexOf("ismobile");C();C();const vb=document.createElement("audio"),wb=vb.play&&vb.play();wb&&wb.then(()=>{vb.pause()},()=>{});
function xb(){return 1==window._ispringDebug||"1"==C().isdebug}setTimeout(()=>{Ua=xb},0);class yb{constructor(a){this.Bb=a}zd(a,b,c){c=this.Bb.hasOwnProperty(a)?this.Bb[a]:c;if(void 0!==c){if(void 0!==b){a=this.Tc;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.Bb}Tc(a){return"%"+a.toUpperCase()+"%"}}yb.prototype.getMessage=yb.prototype.zd;class zb{constructor(a,b,c,d){this.Wc=new yb(b);this.Oc=c;this.T=d}i18n(){return this.Wc}};var Ab="closure_listenable_"+(1E6*Math.random()|0);function Bb(a){a.Jd=!0;a.listener=null;a.proxy=null;a.src=null;a.ce=null};var Cb={},Db=0;function Eb(a){if("number"===typeof a||!a||a.Jd)return!1;var b=a.src;if(b&&b[Ab]){b=b.ae;var c=a.type;if(c in b.Sb){var d=Ja(b.Sb[c],a);d&&(Bb(a),0==b.Sb[c].length&&(delete b.Sb[c],b.fe--));a=d}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 Cb?Cb[c]:Cb[c]="on"+c,d):b.addListener&&b.removeListener&&b.removeListener(d);Db--;Bb(a);return!0};let Fb=0;function Gb(a,b){if(a.N&&a.N[b]){var {Pb:c,ta:d,context:e,priority:f}=a.N[b];c.removeHandler(d,e,f);delete a.N[b]}else sa("unknown handler key")}function Hb(a,b){if(Array.isArray(b)){let c=!1;for(const d of b)c=Hb(a,d)||c;return c}Ja(a.ma,b);return Eb(b)}function E(a,b,c,d){a.N=a.N||{};b.addHandler(c,d,void 0);const e=++Fb;a.N[e]={Pb:b,ta:c,context:d,priority:void 0};return e}
function Ib(a,b,c,d){const e=ob(a.N,f=>{a:{var g={Pb:b,ta: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&&Gb(a,e)}function Jb(a,b,c){const d=(...e)=>{c.apply(void 0,e);Ib(a,b,d)};E(a,b,d)}function Kb(a){return void 0!==a.displayObject?a.displayObject():a}
function Lb(a,b){if(b){if(a.N){var c=nb(a.N,d=>d.Pb.xc==b);for(const d of Object.keys(c))Gb(a,d)}if(a.ma){const d=Kb(b);c=Ha(a.ma,e=>e.src==d);for(const e of c)Hb(a,e)}}}function Mb(a,b){a.W=a.W||[];a.W.push(b)}function Nb(a,...b){if(a.W)for(const c of b)c&&(Lb(a,c),b=z(a.W,c),0<=b&&(a.W.splice(b,1),Va(c)))}
class Ob{constructor(){this.W=this.N=this.ma=null}Kc(){this.Ca();if(this.W)for(const a of this.W)Va(a);if(this.ma){for(const a of this.ma)if(Array.isArray(a))for(const b of a)Eb(b);else Eb(a);this.ma=null}if(this.N)for(const a of Object.keys(this.N))Gb(this,a)}Ca(){}};function F(a,b){return 0==b?a.ra:a.ha[b]}function Pb(a,b){return 0==b?a.ra||[]:b in a.ha?F(a,b):[]}function Qb(a){if(!a.ha)return a.ra?a.ra.slice():[];const b=[],c=a.Va;for(let d=0;d<c.length;++d){const e=F(a,c[d]);e&&La(b,e)}return b}
class Rb{constructor(){this.ra=this.ha=this.Va=null}push(a,b){if(0==b)this.ra=this.ra||[];else if(this.Va=this.Va||[0],this.ha=this.ha||{},!(b in this.ha)){this.ha[b]=[];var c=this.Va;var d=0;let f=c.length,g;for(;d<f;){const h=d+(f-d>>>1);var e=void 0;e=c[h];e=b>e?1:b<e?-1:0;0<e?d=h+1:(f=h,g=!e)}d=g?d:-d-1;0>d&&Ma(c,-(d+1),0,b)}F(this,b).push(a)}remove(a,b){(b=F(this,b))&&Ja(b,a)}};class G extends Ob{constructor(a=null){super();this.yc=this.R=null;this.xc=a}yd(){return this.xc}addHandler(a,b,c){this.R=this.R||new Rb;this.R.push({ta:a,context:b},c||0)}removeHandler(a,b,c){c=c||0;if(this.R){var d=Pb(this.R,c),e=d.length;for(let f=0;f<e;++f){const g=d[f];if(g.ta==a&&g.context==b){(a=F(this.R,c))&&Array.prototype.splice.call(a,f,1);break}}}else sa("EventDispatcher has no handlers!")}Cd(a,b,c){if(!this.R)return!1;c=Pb(this.R,c||0);const d=c.length;for(let e=0;e<d;++e){const f=c[e];
if(f.ta==a&&f.context==b)return!0}return!1}u(...a){if(this.R){const b=Qb(this.R),c=b.length;for(let d=0;d<c;++d){const e=b[d];if(-1!=z(Qb(this.R),e))try{e.ta.apply(e.context,arguments)}catch(f){Xa(f,!0)}}}this.yc&&this.yc.forEach(b=>{b.u(...a)})}Ca(){super.Ca()}}G.prototype.dispatch=G.prototype.u;G.prototype.hasHandler=G.prototype.Cd;G.prototype.removeHandler=G.prototype.removeHandler;G.prototype.addHandler=G.prototype.addHandler;G.prototype.eventOwner=G.prototype.yd;class Sb{constructor(){this.rd=new G}};function Tb(a,b){a.J=b}function Ub(a,b){a.P=b}class Vb{constructor(a){this.ka=this.$=this.Nb=this.P=null;this.Ac=0;this.Ia="unanticipated";this.H=this.J=null;this.Z="";this.Ga=a}id(){return this.Ga}type(){return this.A}description(){return this.Z}ac(){return this.H}result(){return this.Ia}score(){return this.Ac}wa(a){this.Ac=a}awardedScore(){return this.ka}duration(){return this.$}hb(a){this.$=a}bc(){return this.Nb}details(){return this.P}};function H(a){a=Ya(a);return a=a.replace(/[^\w-]/g,"_")}function I(a,b){return"0123456789abcdefghijklmnopqrstuvwxyz"[((null!=b?b:1)?a:35-a)%36]};function J(a,b,c){return b.textWithEquations(a.v||!c?"Equation":"")}function K(a,b){return b.join(a.v?",":"[,]")}function L(a,b,c){return a.v?I(b):H(`${b}_${c}`)}
class M{constructor({Kd:a,Pd:b,slideIndex:c}){this.v=a;this.Hc=b;this.G=!1;this.Cc=c}create(a){if(!a.submitted())return null;var b=(void 0!==this.Cc?"Slide"+this.Cc+"_":"")+"Q_"+a.slide().id();b=new Vb(H(b));this.g(b,a);return b}g(a,b){var c=b.slide();c=J(this,c.description(),!0);a.Z=c;b.hasBeenVisited()&&(a.hb(b.visitDuration()),c=b.firstVisitTime(),a.Nb=c);if(c=b.slide().settings().evaluation()){if(a.wa(b.maxScore()),b=b.review()){var d=Math.max(0,b.awardedScore());a.ka=d;d="unanticipated";switch(b.status()){case "correct":d=
"correct";break;case "incorrect":case "partially":d="incorrect"}a.Ia=d}}else a.Ia="neutral";this.G=!!c}};class N{constructor(a,b){this.Ga=a;this.Z=b}id(){return this.Ga}description(){return this.Z}};function O(a,b){a.Aa.push(b)}class Wb{constructor(){this.Aa=[]}count(){return this.Aa.length}getChoice(a){if(0>a||a>=this.count())throw Error("Index out of bounds");return this.Aa[a]}};class Xb{constructor(){this.qd=new Wb;this.Ka=new Wb}sources(){return this.qd}};class Yb extends M{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,Fd:g}=this.Gb(b);c=this.ub(c.chainsStates(),e,f,g);a.H=c;this.G&&(c=[this.G?this.vb(b.chains(),e,f,g):c],a.J=c);a.P=d}Gb(a){const b=new Xb,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();O(b.sources(),new N(H(c.indexOf(f)+"_"+g),g))}a&&0>d.indexOf(a)&&(d.push(a),
f=a.name(),O(b.Ka,new N(H(d.indexOf(a)+"_"+f),f)))}e=this.v?I(d.length,!1):`${d.length}_${"None"}`;O(b.Ka,new N(e,"None"));return{details:b,premises:c,responses:d,Fd: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.la(a,g,b,c,d);e.push(g);f.splice(f.indexOf(a),1)}for(const h of f)f=this.la(h,null,b,c,d),e.push(f);return this.Da(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.la(a,g,b,c,d),e.push(a))}return this.Da(e)}Fa(a,b,c){this.v?b=I(b,c):(a=a.name(),a=H(a),b=`${b}_${a}`);return b}la(a,b,c,d,e){a=this.Fa(a,c.indexOf(a),!0);b=b?this.Fa(b,d.indexOf(b),!1):e;d=this.v?".":"[.]";return H(a)+d+H(b)}Da(a){return a.join(this.v?",":"[,]")}};class Zb extends M{g(a,b){super.g(a,b);a.A="long-fill-in";b=b.contentState().response();a.H=b}};class $b extends M{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.Hc?d.push(c[0]):d.push(c.join("[,]")));a.H=b.join("[,]");if(this.G){e=d;if(this.v||this.Hc)e=[e.join(this.v?"[.]":"[,]")];a.J=e}}};class P{constructor(){this.Aa=new Wb}choices(){return this.Aa}};class ac extends M{g(a,b){super.g(a,b);a.A="choice";const c=[],d=[],e=new P;this.sb(b.contentState(),e,d,c);a.H=K(this,c);this.G&&(a.J=[K(this,d)]);a.P=e}sb(a,b,c,d){a.areas().forEach((f,g)=>{const h=f.area(),l=h.label().text();g=L(this,g,l);h.correct()&&c.push(g);a.areaSelected(f)&&d.push(g);O(b.choices(),new N(g,l))});const e=a.areas().length;for(let f=e;f<e+a.freePointsCount();++f){const g=L(this,f,"Untitled_Spot");d.push(g)}}};class bc extends M{g(a,b){super.g(a,b);a.A="choice";const c=[],d=new P;b.contentState().statementsStates().forEach((e,f)=>{var g=e.statement().text();O(d.choices(),new N(L(this,f,g),g));if(g=e.selectedScale())e=c.push,f=f+"_"+g.text(),f=H(f),e.call(c,f)});a.H=K(this,c);a.P=d}};class cc extends M{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.Gb(b);c=this.ub(c.matches(),e,f,this.v);a.H=c;this.G&&(c=[this.vb(b.matches(),this.v)],a.J=c);a.P=d}Gb(a){const b=new Xb,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=J(this,g.premise().textRange(),!1);g=J(this,g.response().textRange(),!1);O(b.sources(),new N(H(f+"_"+h),h));
O(b.Ka,new N(H(f+"_"+g),g))}a=a.distractors();for(e=0;e<a.count();++e)f=a.getChoice(e),d.push(f),f=J(this,f.textRange(),!1),O(b.Ka,new N(H(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.la(a,z(b,a),g,z(c,g),d);e.push(a)}return this.Da(e,d)}vb(a,b){const c=[];for(let e=0;e<a.count();++e){var d=a.getChoice(e);d=this.la(d.premise(),e,d.response(),e,b);c.push(d)}return this.Da(c,b)}Fa(a,b,c,d){return c?I(b,d):`${b}_${J(this,
a.textRange(),!1)}`}la(a,b,c,d,e){a=this.Fa(a,b,e,!0);c=this.Fa(c,d,e,!1);e=e?".":"[.]";return H(a)+e+H(c)}Da(a,b){return a.join(b?",":"[,]")}};class dc extends P{constructor(){super();this.ec=[]}};class ec extends M{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.H=c;if(this.G){a:{for(c=0;c<d.count();++c){const e=d.getChoice(c);if(e.correct()){c=L(this,c,J(this,e.textRange(),!1));break a}}c=""}a.J=[c]}b=this.Ea(d,b);a.P=b}Ea(a,b){let c=new P;if(this.lc()){c=new dc;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.ec[g]=e)}}for(b=0;b<a.count();++b)d=
a.getChoice(b),d=J(this,d.textRange(),!1),O(c.choices(),new N(H(`${b}_${d}`),d));return c}lc(){return!this.G}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()),L(this,a,J(this,d.choice().textRange(),!1))}return""}};function fc(a){const b=new Xb;let c=0;Ga(a.placeholders(),(d,e)=>{e+="";O(b.sources(),new N(e,e));d.values.forEach(f=>{f=f.text();var g=`${c++}_${f}`;g=H(g);O(b.Ka,new N(g,f))})});return b}
class gc extends M{g(a,b){super.g(a,b);a.A=this.v?"other":"matching";const c=[],d=[],e=new P;b.contentState().placeholders().forEach((f,g)=>{const h=f.response(),l=f.correctAnswer();f.answers().forEach(n=>{var r=e.choices().count();r=`${g}[.]${H(r+"_"+n)}`;n==l&&d.push(r);n==h&&c.push(r);O(e.choices(),new N(r,n))})});a.H=c.join("[,]");this.G&&Tb(a,[d.join("[,]")]);Ub(a,fc(b.slide().content()))}};class hc extends M{g(a,b){super.g(a,b);a.A="choice";const c=b.slide().content();var d=this.xb(c,b.contentState());a.H=d;this.G&&(d=[this.tb(c)],a.J=d);b=this.Ea(c,b.contentState());a.P=b}Ea(a,b){let c=new P;if(!this.G){c=new dc;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.ec[g]=e)}}for(b=0;b<a.count();++b)d=a.getChoice(b),d=J(this,d.textRange(),!1),O(c.choices(),new N(H(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=J(this,g.textRange(),!1);d.selected()&&(d=a.getChoiceIndex(g),e=L(this,d,e),c.push(e))}return K(this,c)}tb(a){const b=[];for(let d=0;d<a.count();++d){var c=a.getChoice(d);c.correct()&&(c=L(this,d,J(this,c.textRange(),!1)),b.push(c))}return K(this,b)}};class ic extends M{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.H=b;if(this.G){d=(b=this.v||d)?"[,]":"[.]";const h=[];for(let l=0;l<c.count();++l){var e="",f=c.getAnswer(l),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.J=[h.join(d)]}}};function jc(a,b,c,d){const e=d?",":"[,]",f=[];c.forEach(g=>{const h=J(a,g.textRange(),!1);g=b.getChoiceIndex(g);f.push(H(d?I(g,!0):g+"_"+h))});return f.join(e)}class kc extends M{g(a,b){super.g(a,b);a.A="sequencing";var c=b.slide().content();b=jc(this,c,b.contentState().studentResponse(),this.v);a.H=b;this.G&&(b=[jc(this,c,c,this.v)],a.J=b);c=this.Ea(c);a.P=c}Ea(a){const b=new P;for(let c=0;c<a.count();++c){const d=a.getChoice(c).textRange().text();O(b.choices(),new N(H(c+"_"+d),d))}return b}};class lc extends ec{g(a,b){super.g(a,b);if(this.v&&this.G){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.H=f;a.J=[d]}}lc(){return!1}};class mc extends M{g(a,b){super.g(a,b);a.A="fill-in";var c=b.slide();b=b.contentState().response().text();a.H=b;this.G&&(c=this.tb(c.content()),a.J=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 nc{constructor(a,b){this.length=b;this.mc=[];for(let c=0;c<b;++c)this.mc[c]=a(c)}get(a){return this.mc[a]}};function oc(a,b,c){for(const d of a){const e=d.response();null!=e&&(a=new nc(f=>b.choices().getChoice(f),b.choices().count()),a=Ia(a,f=>Ya(f.description())==e),c.push(a.id()))}}
class pc extends M{g(a,b){super.g(a,b);a.A=this.v?"other":"choice";var c=b.slide().content();const d=[],e=new P;c=c.extraWords();for(var f of c){c=f.text();var g=e.choices().count();g=H(`${g}_${c}`);O(e.choices(),new N(g,c))}b=b.contentState().placeholders();this.G&&(f=[],this.sb(b,e,f),a.J=[f.join("[,]")]);oc(b,e,d);a.H=d.join("[,]");a.P=e}sb(a,b,c){for(const e of a){a=e.placeholder().value||"";var d=b.choices().count();d=H(`${d}_${a}`);c.push(d);O(b.choices(),new N(d,a))}}};const qc={FillInTheBlank:$b,WordBank:pc,TypeIn:mc,Numeric:ic,MultipleChoice:ec,MultipleResponse:hc,MultipleChoiceText:gc,Sequence:kc,Matching:cc,TrueFalse:lc,Essay:Zb,Hotspot:ac,LikertScale:bc,DND:Yb};class rc{constructor(a,b){this.Ga=a;this.$c=b;this.Sc=""}id(){return this.Ga}name(){return this.$c}email(){return this.Sc}};class sc{constructor(a,b){this.B=a;this.M=b}};function tc(a,b){mb(b,function(c,d){c&&"object"==typeof c&&c.de&&(c=c.be());"style"==d?a.style.cssText=c:"class"==d?a.className=c:"for"==d?a.htmlFor=c:uc.hasOwnProperty(d)?a.setAttribute(uc[d],c):0==d.lastIndexOf("aria-",0)||0==d.lastIndexOf("data-",0)?a.setAttribute(d,c):a[d]=c})}
var uc={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 vc(a,b,c){var d=arguments,e=document,f=d[1],g=wc(e,String(d[0]));f&&("string"===typeof f?g.className=f:Array.isArray(f)?g.className=f.join(" "):tc(g,f));2<d.length&&xc(e,g,d);return g}
function xc(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?Ka(f):f,d)}}}function wc(a,b){b=String(b);"application/xhtml+xml"===a.contentType&&(b=b.toLowerCase());return a.createElement(b)}
var yc={SCRIPT:1,STYLE:1,HEAD:1,IFRAME:1,OBJECT:1},zc={IMG:" ",BR:"\n"};function Ac(a){var b=[];Bc(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 Bc(a,b,c){if(!(a.nodeName in yc))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 zc)b.push(zc[a.nodeName]);else for(a=a.firstChild;a;)Bc(a,b,c),a=a.nextSibling};function Cc(a){var b={width:"1px",height:"1px",border:"0"};if("string"===typeof b)(b=Dc(a,b))&&(a.style[b]=void 0);else for(var c in b){var d=a,e=b[c],f=Dc(d,c);f&&(d.style[f]=e)}}var Ec={};function Dc(a,b){var c=Ec[b];if(!c){var d=pb(b);c=d;void 0===a.style[d]&&(d=(kb?"Webkit":jb?"Moz":ib?"ms":null)+qb(d),void 0!==a.style[d]&&(c=d));Ec[b]=c}return c};function Q(a){this.length=a.length||a;for(let b=0;b<this.length;b++)this[b]=a[b]||0}Q.prototype.BYTES_PER_ELEMENT=4;Q.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]};Q.prototype.toString=Array.prototype.join;"undefined"==typeof Float32Array&&(Q.BYTES_PER_ELEMENT=4,Q.prototype.BYTES_PER_ELEMENT=Q.prototype.BYTES_PER_ELEMENT,Q.prototype.set=Q.prototype.set,Q.prototype.toString=Q.prototype.toString,m("Float32Array",Q));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=8;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;if("undefined"==typeof Float64Array){try{R.BYTES_PER_ELEMENT=8}catch(a){}R.prototype.BYTES_PER_ELEMENT=R.prototype.BYTES_PER_ELEMENT;R.prototype.set=R.prototype.set;R.prototype.toString=R.prototype.toString;m("Float64Array",R)};new Float64Array(3);new Float64Array(3);new Float64Array(4);new Float64Array(4);new Float64Array(4);new Float64Array(16);function Fc(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)||k.setTimeout(a,b||0)};var Gc={},Hc=null,Ic=jb||kb||"function"==typeof k.btoa;function Jc(a){this.fb=a}function Kc(a,b){const c=[];Lc(a,b,c);return c.join("")}
function Lc(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],Lc(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),Oc(d,c),c.push(":"),Lc(a,a.fb?a.fb.call(b,d,e):e,c),f=","));c.push("}");
return}}switch(typeof b){case "string":Oc(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 Pc={'"':'\\"',"\\":"\\\\","/":"\\/","\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t","\v":"\\u000b"},Qc=/\uffff/.test("\uffff")?/[\\"\x00-\x1f\x7f-\uffff]/g:/[\\"\x00-\x1f\x7f-\xff]/g;
function Oc(a,b){b.push('"',a.replace(Qc,function(c){let d=Pc[c];d||(d="\\u"+(c.charCodeAt(0)|65536).toString(16).slice(1),Pc[c]=d);return d}),'"')};function Rc(a){try{const b=wc(document,"iframe");Cc(b);b.src=a;document.body.appendChild(b);Fc(()=>{b&&b.parentNode&&b.parentNode.removeChild(b)},100)}catch(b){}}class Sc{constructor(a,b){this.A=a;this.Pc=b||[]}id(){return Object.prototype.hasOwnProperty.call(this,ia)&&this[ia]||(this[ia]=++ja)}}m("iSpring.ios.mobile.MobileAppCommand",Sc);const Tc=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||setTimeout;function S(a){const b=new G(a);Mb(a,b);return b}class T extends Ob{};let Uc;const Vc=[];if(window.MutationObserver){Uc=new MutationObserver(b=>{b&&b.forEach(c=>{for(const d of c.removedNodes)for(const e of Vc)"function"===typeof d.contains&&d.contains(e.displayObject())&&e.Yd()})});const a={subtree:!0,childList:!0};Tc(()=>{Uc.observe(document.body,a)})};wc(document,"CANVAS").getContext("2d");
function U(a){var b="\r";if(0==a.length)return"";null==b&&(b="");var c=0;let d="";const e=a.length;do{var f=Wc(a,["<p>","<p "],c);if(f&&f.eb>c){c=a.substr(c,f.eb-c);var g=vc("DIV");g.innerHTML=c;d+=(g.textContent||g.innerText||Ac(g))+b;c=f.eb}if(g=Wc(a,["</p>","</p >"],c)){f=g.eb+g.Nd.length-c;const h=a.substr(c,f);g=vc("DIV");g.innerHTML=h;d+=(g.textContent||g.innerText||Ac(g))+b;c+=f}else return g=vc("DIV"),g.innerHTML=a.substr(c,e-c),d+(g.textContent||g.innerText||Ac(g))}while(c<e);return d}
function Wc(a,b,c){Array.isArray(b)||(b=[b]);let d=void 0,e=void 0;Ga(b,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 Xc(e,d):null}class Xc{constructor(a,b){this.Nd=a;this.eb=b}};function Yc(a){a=U(a.text());eb.test(a)&&(-1!=a.indexOf("&")&&(a=a.replace(Za,"&amp;")),-1!=a.indexOf("<")&&(a=a.replace($a,"&lt;")),-1!=a.indexOf(">")&&(a=a.replace(ab,"&gt;")),-1!=a.indexOf('"')&&(a=a.replace(bb,"&quot;")),-1!=a.indexOf("'")&&(a=a.replace(cb,"&#39;")),-1!=a.indexOf("\x00")&&(a=a.replace(db,"&#0;")));if(!a)return"";const b=document.createElement("div");b.innerHTML=a;return b.firstChild.nodeValue}function Zc(a,b){null!=a.Jb&&(b.Nb=new Date(a.Jb),b.hb(Date.now()-a.Jb))}
function $c(a,b,c){c=H(b+"_"+c);b=I(b);return a.md?b:c}
class ad{constructor(a,b,c,d){this.M=a;this.ld=b;this.md=c;this.hd=d;this.Jb=void 0}create(){var a=0;const b=[];var c=this.ld,d=this.hd;const e=new Vb(c.id()+"_"+a);a+=1;e.A="choice";if(c.message()){var f=c.message().text();f=U(f);e.Z=f;f=c.message().replies();null!=c.speech()&&0<U(c.speech())&&(a=new Vb(c.id()+"_"+a),a.A="other",c=U(c.speech()),a.Z=c,a.Ia="neutral",Zc(this,a),b.push(a))}else f=U(c.speech()),e.Z=f,f=c.replies();0==f.count()&&(e.A="other");c=null;let g=a=0;var h=-1;const l=[];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());l.push($c(this,n,Yc(r)))}null!=d&&(c=$c(this,h,Yc(d)),g=Math.max(g,d.score()));d=f;f=new P;for(h=0;h<d.count();++h)n=Yc(d.getReply(h)),O(f.choices(),new N(H(h+"_"+n),n));e.P=f;e.H=c;e.J=l;this.M.scenario().settings().evaluationSettings().enabled()&&(e.wa(a),e.ka=g);e.Ia="neutral";Zc(this,e);b.push(e);return b}};var bd={Rd:"\u202a",Wd:"\u202b",Ud:"\u202c",Sd:"\u200e",Xd:"\u200f"};let cd=0;for(const a in bd)cd++;function dd(){function a(c){try{for(let d=0;255>d;++d){if(c.API_1484_11)return c.API_1484_11;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 ed(a){return"PT"+Math.floor(a/3600)+"H"+Math.floor(a%3600/60)+"M"+Math.floor(a%60)+"S"}function V(a){return 10>a?"0"+a:a}
function fd(){if(ub)if(ub){var a=new Sc("closeWindow");if(ub){var b=a.A,c=a.Pc;a=a.id();c=Kc(new Jc(null),c);b="isplayer://"+b+"/"+a+"/";a=c;if(Ic)c=k.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(!Hc)for(Hc={},d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789".split(""),e=["+/=","+/","-_=","-_.","-_"],f=0;5>f;f++){var g=d.concat(e[f].split(""));Gc[f]=g;for(var h=0;h<g.length;h++){var l=g[h];
void 0===Hc[l]&&(Hc[l]=h)}}a=Gc[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];l=c[g+2];h=a[n>>2];n=a[(n&3)<<4|r>>4];r=a[(r&15)<<2|l>>6];l=a[l&63];d[f++]=""+h+n+r+l}h=0;l=e;switch(c.length-g){case 2:h=c[g+1],l=a[(h&15)<<2]||e;case 1:c=c[g],d[f]=""+a[c>>2]+a[(c&3)<<4|h>>4]+l+e}c=d.join("")}Rc(b+c)}}else try{tb||(window.open("","_self",""),window.close())}catch(Cd){}else try{tb||(window.gb=window,b=gd(),b==window.top?(window.open("","_self",""),window.close()):
hd(b))}catch(Cd){hd(window.top)}}function hd(a){if(a&&a.gb){var b=document.createElement("a");b.href="data/goodbye.html";a.gb.location.replace(b.href)}}function gd(){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 id(){try{const a=document.getElementById("preloader");a&&a.parentNode.removeChild(a)}catch(a){}};const jd={$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 kd={$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 ld(a){return md(jd,"gradingParamsScheme").validate("gradingParamsScheme",a)}function md(a,b){const c=new Ajv({Zd:!0});c.addSchema(a,b);return c};function nd(a,b){return"1.2"!=a&&"aicc"!=a&&"cmi-5"!=a||!ld(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.Id=void 0!==e?e:null;this.Ub=void 0!==f?f:null}Tb(){const a={};a.e=this.rated;a.p=this.passed;a.m=this.maxScore;a.r=this.Id;a.s=this.Ub;a.t=this.type;return a}};function od(a){return{d:a.$,l:a.Pa,v:a.X,vh:a.$a,V:a.qa,p:a.Ta,q:Object.fromEntries(Object.entries(a.Wa).map(([b,c])=>[b,c.Tb()]))}}class pd{constructor(a){this.Ta=null;this.$=0;this.Pa=-1;this.Wa={};this.$a=[];this.X=[];this.qa=a}lastViewedSlide(){return this.Pa}duration(){return this.$}hb(a){this.$=a}va(){return this.Wa}Tb(){return od(this)}};const qd={Vd:"prompt",Qd:"always",Td:"never"};m("PresentationResumeMode$$module$C_$dev$worker$base$release_9$build$flashspring$flashspring$htmlprojects$src$ispring$presenter$presentation$settings$PresentationResumeMode",qd);m("PROMPT_TO_RESUME","prompt",qd);m("ALWAYS_RESUME","always",qd);m("NEVER_RESUME","never",qd);function X(a,b){if(null==b?0:b[a])return b[a];throw Error(`cannot get ${a} from metadata`);}function rd(a,b){return{quizSession:a,playerId:b}};function sd(a){if(a.M){a.uc(a.M);var b=[a.M];for(const c of b)c&&Lb(a,c);a.M=null}}class td extends T{constructor(a,b){super();this.i=a;this.M=null;this.L=S(this);b&&this.dc()&&this.i.setUserInfo(b.id,{USER_NAME:b.name,USER_EMAIL:b.email});E(this,this.i.currentSessionChangedEvent(),this.qc,this)}dc(){return!0}uc(){}qc(){sd(this);(this.M=this.i.currentSession())&&this.vc(this.M)}Ca(){super.Ca();sd(this)}}
class ud extends td{vc(a){E(this,a.sessionModeChangedEvent(),this.Db,this);a.slidePoolState().questions().forEach(b=>E(this,b.submittedEvent(),this.sc,this));a=rd(a,this.i.id());this.L.u("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}uc(a){a.slidePoolState().questions().forEach(b=>Ib(this,b.submittedEvent(),this.sc,this))}sc(a){var b=this.i.id();this.L.u("quizQuestionSubmitted",
{questionState:a,playerId:b})}Db(a){this.L.u("quizModeChanged",void 0);"testing"==a&&(a={sessionResult:this.wb()},this.L.u("quizCompleted",a))}}
class vd extends td{dc(){return!this.i.userInfoIsLoaded()}vc(a){E(this,a.onReplySelectedEvent(),this.Sa,this);E(this,a.showTerminalSceneEvent(),this.Ra,this);this.L.u("scenarioStarted",{scenarioSession:a});a.completed()&&this.Ra()}Sa(a){this.L.u("scenarioReplySelected",{scenarioReplay:a})}Ra(){const a={sessionResult:this.wb()};this.L.u("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 wd(a,b){const c=a.quizPlayer();return c?new ud(c,b):(a=a.scenarioPlayer())?new vd(a,b):null};function xd(a,b){return(a=a.o.va()[`${b}`])?{passed:a.passed,awardedPercent:a.Ub}:null}function yd(a,b){Nb(a,a.ba);a.ba=null;a.ba=wd(a.da,a.ud);a.ba&&(Mb(a,a.ba),E(a,a.ba.L,(c,d)=>a.ca(b,c,d)),a.ba.qc())}
class zd extends T{constructor({Hd:a,Dd:b,xd:c,resumeMode:d,$b:e}){super();this.da=a;this.o=b;this.Y=c;this.jd=d;this.ud=e;this.ba=null;this.Ja=S(this);this.L=S(this);E(this,this.da.Ua,this.Cb,this);E(this,this.da.zc,this.rc,this);this.Y&&E(this,this.Y.Mb,this.U,this);a=this.da.currentSlideIndex();-1!=a&&this.rc(a)}ib(){return this.da.ib()}va(){return this.o.va()}resumeMode(){return this.jd}Cb(a){(null==a?0:a.actionPrevented())||this.U()}rc(a){yd(this,a);this.U({lastViewedSlide:a});this.Ja.u(a)}ca(a,
b,c){switch(b){case "quizModeChanged":this.U();break;case "quizCompleted":case "scenarioCompleted":a={slideIndex:a,Md:X("sessionResult",c)},this.U({Ld:a})}this.L.u(b,c)}U({lastViewedSlide:a=null,Ld:b=null}={}){if(null!=a){var c=this.o;0<=c.qa.indexOf(a)?(c=c.X,0<=z(c,a)||c.push(a)):(c=c.$a,0<=z(c,a)||c.push(a));this.o.Pa=a}b&&(this.o.Wa[`${b.slideIndex}`]=b.Md);this.Y&&(a=Ad(this.Y),this.o.hb(a));a=this.da.i.persistState();this.o.Ta=a}};function Bd(a,b){let c=0;a.Ab.forEach(d=>{b(d)&&c++});return c}class Dd{constructor({Na:a}){this.Ab=new Set(a.materials);this.Rc=null!=a.averagePassingPercent?a.averagePassingPercent/100:null}get Gd(){return this.Ab.size}get averagePassingPercent(){return this.Rc}};class Ed{constructor({Zb:a,Na:b,ia:c}){const {ua:d,Ob:e}=Fd({Zb:a,Na:b,ia:c});this.ad=d;this.Qc=e}get ua(){return this.ad}get Ob(){return this.Qc}}function Fd({Zb:a,Na:b,ia:c}){let d=[];for(let e=0;e<c.ib();++e)Gd(e,a,c)&&d.push(e);if(b){const e=b.materials;d=d.filter(f=>!e.includes(f))}return{ua:Math.min(a.slidesToView,d.length),Ob:d}}function Gd(a,b,c){return c.o.qa.includes(a)?b.groupId?c.da.i.presentation().slides().getSlide(a).groupId()==b.groupId:!0:!1};class Hd{constructor(a,b){this.zb=a;this.h=b;a=this.zb.slides;b=this.zb.materials;this.od=a&&0<a.slidesToView?new Ed({Zb:a,Na:b,ia:this.h}):null;this.Yc=(a=this.zb.materials)&&0<a.materials.length?new Dd({Na:a}):null}get Yb(){return this.od}get Ma(){return this.Yc}};class Id{constructor(a,b){this.gd=new Map(a.quizzes);this.kd=new Map(a.scenarios);this.Uc=Jd(a.grading.alternatives,b)}get quizzes(){return this.gd}get scenarios(){return this.kd}get Qb(){return this.Uc}}function Jd(a,b){return a.map(c=>new Hd(c,b))};function Kd(a){return new Map(a.Qb.map(b=>{var c;const {quizzes:d,scenarios:e}=Ld(b,a),f=Md(d,e),g=!!f.length;let h,l;var n=null==(c=b.Ma)?void 0:c.averagePassingPercent;c={maxScore:g?100:null,passingScore:g&&null!=n?100*n:null,slidesToView:null!=(l=null==(h=b.Yb)?void 0:h.ua)?l:null,Rb:g,Lc:!1,quizzes:d,scenarios:e,cb:f};return[b,c]}))}
function Ld(a,b){const c=d=>{d=Array.from(d).filter(([e])=>{let f;return null==(f=a.Ma)?void 0:f.Ab.has(e)});return new Map(d)};return{quizzes:c(b.quizzes),scenarios:c(b.scenarios)}}function Md(a,b){return[...a,...b].filter(([,c])=>c).map(([c])=>c)};function Nd(a){if(a.length)return[...a].sort((b,c)=>Od(Pd[`${b.passed}`][`${b.completed}`],Pd[`${c.passed}`][`${c.completed}`])||Od(b.progress,c.progress)||Od(b.awardedPercent,c.awardedPercent))[0];throw Error("cannot get priority grade");}const Pd={"true":{"true":9,"false":6,"null":2},"false":{"true":7,"false":5,"null":1},"null":{"true":8,"false":4,"null":3}};function Od(a,b){return(null!=b?b:-1)-(null!=a?a:-1)};function Qd(a,b){let c=0;var d=0;b&&(d=b.Ob.filter(e=>a.h.o.X.includes(e)),c=b.ua,d=Math.min(d.length,c));return{ua:c,Od:d}}function Rd(a,b){let c=0,d=0;b&&(c=b.Gd,d=Bd(b,e=>!!xd(a.h,e)));return{Ed:c,vd:d}}function Sd(a,b){return Td(a,b)?b.every(c=>{let d;return null==(d=xd(a.h,c))?void 0:d.passed}):null}function Td(a,b){return b.every(c=>!!xd(a.h,c))}function Ud(a,b){return b.reduce((c,d)=>{(d=xd(a.h,d))&&(c+=d.awardedPercent);return c},0)/b.length}
class Vd extends T{constructor({Bd:a,ia:b}){super();this.Vc=a;this.h=b;this.yb=Kd(a);this.Ba=null;this.V=S(this);E(this,this.h.Ja,this.ga,this);E(this,this.h.L,this.ca,this);this.ga()}courseGrade(){return this.Ba}courseGradeChangedEvent(){return this.V}ca(a){"quizCompleted"!=a&&"scenarioCompleted"!=a||this.ga()}ga(){const a=this.Vc.Qb.map(b=>{const c=this.yb.get(b),d=this.ob(b),e=this.Oa(b),f=null!=e?e*c.maxScore:null,g=c.passingScore;b=this.nb(b);return{progress:d,awardedPercent:e,awardedScore:f,
passingScore:g,passed:b,completed:1==d,context:c}});this.Ba=Nd(a);this.V.u()}ob(a){if(a.Yb||a.Ma){const {ua:b,Od:c}=Qd(this,a.Yb),{Ed:d,vd:e}=Rd(this,a.Ma);return(c+e)/(b+d)}return 1}nb(a){var b=this.yb.get(a).cb;if(b.length){var c;a=null==(c=a.Ma)?void 0:c.averagePassingPercent;null!=a?(c=a,b=Ud(this,b)<c?Td(this,b)?!1:null:!0):b=Sd(this,b);return b}return null}Oa(a){a=this.yb.get(a).cb;return a.length?Ud(this,a):null}};class Wd extends T{constructor(a){super();this.V=S(this);this.kc=!1;Jb(this,a.Ja,()=>{this.kc=!0;this.V.u()})}courseGrade(){return this.kc?Xd({progress:1,completed:!0}):Xd({progress:0,completed:!1})}courseGradeChangedEvent(){return this.V}}function Xd({progress:a,completed:b}){return{progress:a,awardedPercent:null,awardedScore:null,passingScore:null,passed:null,completed:b,context:{maxScore:null,passingScore:null,slidesToView:null,Rb:!1,Lc:!1,quizzes:new Map,scenarios:new Map,cb:[]}}};function Yd(a){let b=0;for(let c=0;c<a.length;++c)b+=a[c];return b};function Zd(a){return 0<a.oa||0<a.mb}class $d{constructor(a,b,c,d,e,f){this.mb=0;this.fd=f;this.sd=e;this.Ib=new Map;this.Hb=new Map;this.pd=b;this.oa=a;c.forEach(([g,h])=>{this.Hb.set(g,h);0<h&&++this.mb});d.forEach(([g,h])=>{this.Ib.set(g,h);0<h&&++this.mb})}slidesToView(){return this.oa}slidesWeight(){return 0<this.oa?this.pd:0}quizzes(){return new Map(this.Hb)}scenarios(){return new Map(this.Ib)}totalScore(){return this.sd}passingScore(){return this.fd}};function ae(a){return{maxScore:a.j.totalScore(),passingScore:a.j.passingScore(),slidesToView:a.j.slidesToView(),Rb:Zd(a.j),Lc:0<a.j.oa,quizzes:a.j.quizzes(),scenarios:a.j.scenarios(),cb:[...a.j.quizzes(),...a.j.scenarios()].filter(([,b])=>0<b).map(([b])=>b)}}
class be extends T{constructor({Ad:a,ia:b}){super();this.h=b;this.j=new $d(a.slidesToView,a.slidesWeight,a.quizzes,a.scenarios,a.totalScore,a.passingScore);this.Ba=null;this.V=S(this);E(this,this.h.Ja,this.ga,this);E(this,this.h.L,this.ca,this);this.ga()}courseGrade(){return this.Ba}courseGradeChangedEvent(){return this.V}ca(a){"quizCompleted"!=a&&"scenarioCompleted"!=a||this.ga()}ga(){var a=this.ob(),b=this.Oa(),c=this.ka(),d=this.j.passingScore(),e=this.nb(),f;a:{for(f=0;f<this.h.ib();++f)if(this.h.o.qa.includes(f)&&
!this.h.o.X.includes(f)||(this.j.quizzes().has(f)||this.j.scenarios().has(f))&&!this.h.va()[`${f}`]){f=!1;break a}f=!0}this.Ba={progress:a,awardedPercent:b,awardedScore:c,passingScore:d,passed:e,completed:f,context:ae(this)};this.V.u()}ob(){return this.h.o.X.length/this.h.o.qa.length}nb(){var a;if(Zd(this.j)){if(!(a="never"==this.h.resumeMode())){a:{const b=[...this.h.o.X,...this.h.o.$a];if(0<this.j.oa&&0<b.length)a=!0;else{a=Object.entries(this.h.va());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?Ad(a.Y)>=a.Y.Qa:!1)}a=a?this.ka()>=this.j.passingScore():null}else a=null;return a}ka(){return this.Oa()*this.j.totalScore()}Oa(){if(Zd(this.j)){var a=Object.entries(this.h.va());var b=0;for(const [e,f]of a){var c=void 0;a=null!=(c=f.Ub)?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.oa?this.h.o.X.length/this.h.o.qa.length*this.j.slidesWeight():0;c=Array.from(this.j.Hb.values());c=
Yd(c);d=Array.from(this.j.Ib.values());b/=c+Yd(d)+this.j.slidesWeight()}else b=0;return b}};class ce extends T{constructor(a){super();this.i=a;this.Ua=S(this);this.zc=S(this);E(this,this.i.stateChangedEvent(),b=>this.Ua.u(b));E(this,this.i.view().playbackController().slideChangeEvent(),b=>this.zc.u(b))}ib(){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 de extends ce{constructor(a){super(a);this.Fc=S(this);this.Ec=S(this);this.fc=S(this);E(this,this.i.startupEvent(),b=>this.Fc.u(b));E(this,this.i.startupCompletedEvent(),(b,c)=>this.Ec.u(b,c));E(this,this.i.closeWindowEvent(),b=>this.fc.u(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.Fc}startupCompletedEvent(){return this.Ec}closeWindowEvent(){return this.fc}setVolume(a){this.i.view().soundController().setVolume(a)}interactionPlayer(){return this.i.view().playbackController().interactionPlayer()}updateCurrentSlideState(){this.i.view().playbackController().updateCurrentSlideState();
this.Ua.u()}};class ee{constructor(a,b,c,d){this.Zc=d;this.nd=c;this.rb=b;this.Lb=a}timeLimit(){return this.Lb}message(){return this.Zc}};function Ad(a){return a.started()?Date.now()-a.Xa+a.na:a.Za}
class fe extends T{constructor(a,b){super();this.Za=this.pb=0;this.Ya=-1;this.na=this.Xa=0;this.Kb=!1;this.Mb=S(this);this.Gc=b;this.Qa=a}started(){return this.Kb}start(a){this.started()||(this.Za=this.na=a||0,a=this.na>=this.Qa,a&&this.Gc||(this.Kb=!0,this.Xa=Date.now(),a||(this.Ya=setTimeout(this.Eb.bind(this),this.Qa-this.na))))}Eb(){this.Gc&&(this.stop(),this.Za=this.Qa);this.Mb.u()}stop(){this.started()&&(this.Kb=!1,0<this.Ya&&(clearTimeout(this.Ya),this.Ya=-1),this.pb=Date.now()-this.Xa,this.Za=
this.pb+this.na)}};function ge(a,b){a.jb&&(a.jb=!1,a.Dc&&(a.pa.stop(),a.C.updateCurrentSlideState(),a.U()),b?a.B.suspend():a.B.terminate())}
class Y extends T{constructor(a){super();this.hc=a;this.ea=null;this.Dc=this.jb=!1;this.T="never"!=a.resumeMode;this.S=!1;let b,c,d,e;this.fa=new ee(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.pa=new fe(this.fa.Lb,this.fa.rb);this.jc=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.o=new pd(b);
this.C=new de(a);Mb(this,this.C);this.jb=!0;E(this,this.C.startupCompletedEvent(),this.ed,this);E(this,this.C.closeWindowEvent(),this.bd,this);this.wc()}}Ic(){ge(this,this.T)}wc(){}ed(a,b){this.Dc=!0;"resumePlayback"==a&&this.ea&&(this.o=this.ea);a=new zd({Hd:this.C,Dd:this.o,xd:this.pa,resumeMode:this.hc.resumeMode,$b:this.ic()});var c=this.hc;var d;(d=ld(c)?c:null)?(d=new Id(d,a),d=d.Qb.length?new Vd({Bd:d,ia:a}):new Wd(a)):d=null;d||(d=(c=md(kd,"legacyGradingParamsScheme").validate("legacyGradingParamsScheme",
c)?c:null)?new be({Ad:c,ia:a}):null);c=d;if(!c)throw Error("cannot create grading module, possibly incorrect grading settings format");this.jc=c;E(this,a.Ja,this.oc,this);E(this,a.L,this.ca,this);a=this.o.duration();this.pa.started()||(E(this,this.pa.Mb,this.Eb,this),this.pa.start(a));a=this.C.currentSlideIndex();a==b&&this.oc(a);E(this,this.C.Ua,this.Cb,this)}ic(){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.Db();
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.kb;if(a=(new qc[c]({Kd:"1.2"==d||"aicc"==d,Pd:"tincan"==d,slideIndex:e})).create(a))b="/quizzes/"+b,a.id(),this.B.ab(b,a)}break;case "quizCompleted":this.tc();break;case "scenarioStarted":a=X("scenarioSession",b);"normal"==this.aa&&(a.scenario().id(),a.scenario().title());break;case "scenarioReplySelected":this.Sa(null==b?void 0:b.scenarioReplay);
break;case "scenarioCompleted":this.Ra()}}bd(a){this.cc(a);this.Ic()}cc(){}Eb(){he(this);this.fa.nd&&alert(this.fa.message());this.fa.rb&&ge(this,!1)}Db(){}tc(){}Ra(){const a=this.C.scenarioPlayer().currentSession().currentSceneState().scene();null!=a&&(a.speech()&&0<a.speech().length||a.message()&&0<a.message().text().length)&&this.Sa();this.nc()}nc(){}}Y.prototype.closeLms=Y.prototype.Ic;Y.prototype.start=Y.prototype.start;function ie(a,b){var c=new pd(B(b,"V",[]));c.$=B(b,"d",0);c.Pa=B(b,"l",-1);c.X=B(b,"v",[]);c.$a=B(b,"vh",[]);c.Ta=B(b,"p",null);const d={};b=B(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.Wa=d;a.ea=c;c=a.ea.duration();if(a.fa.rb&&c>=a.fa.Lb)alert("You have already exceeded available time for viewing this content."),id(),fd();else return a.ea.Ta}
function he(a){const b=a.jc.courseGrade(),c=b.context;if(c.Rb&&null!=b.awardedPercent&&null!=b.awardedScore){let f;a.B.wa(b.awardedPercent,0,null!=(f=c.maxScore)?f:0,b.awardedScore)}a.B.Wb(b.progress);const {passed:d,completed:e}=a.td(b.passed,b.completed);a.B.Xb(d,e);a.U();a.B.commit()}
class je extends Y{constructor(a,b){super(b);this.Ha=null;this.Bc=new Sb;this.kb=a;this.aa="";var c=b.tincan.auth,d=c.login;d&&Ta(d,Sa,Qa);(c=c.password)&&Ta(c,Ra,Pa);c=new zb("ispring://presentations/"+encodeURIComponent(b.presentationId),b.tincan.i18n,b.scorm2004?b.scorm2004.edition:"",this.T);try{a:{var e=this.Bc;const g=window.iSpring.LMSAPI;switch(a){case "1.2":var f=new g.Scorm12Api(c);break a;case "2004":f=new g.Scorm2004Api(c);break a;case "aicc":f=new g.AiccApi(c);break a;case "tincan":f=
new g.TinCanApi(c,e);break a;case "cmi-5":f=new g.Cmi5Api(c,e);break a;default:throw Error("unknown api");}}this.B=f}catch(g){xb()&&alert(g)}this.td=nd(a,b)}initialize(a){this.Ha=a;null==this.B?this.pc():this.B.initialize(this.cd.bind(this),this.pc.bind(this))}cd(){this.aa=this.B.bb();var a=null;var b=this.B.F.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=ie(this,c));break;case "normal":this.T&&c&&(a=ie(this,c))}window.launchMode=this.aa;void 0!==a&&(this.S=!0,this.Ha&&this.Ha(a))}pc(){this.Ha&&this.Ha()}wc(){E(this,this.C.startupEvent(),this.dd,this);this.Bc.rd.u(this.C.i.presentation().title())}dd(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"))}oc(a){"normal"==this.aa&&
(a=this.C.getSlide(a),a.title()&&a.title());he(this)}U(){var a=this.pa;a=a.started()?Date.now()-a.Xa:a.pb;this.B.F.l("cmi.session_time",ed(a/1E3));var b=this.o.Tb();a=this.B.F;b=Kc(new Jc,b);b=LZString.compressToBase64(b);b.length<=("2"==a.D.qb?4E3:64E3)&&a.l("cmi.suspend_data",b)}nc(){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();he(this)}Sa(a){const b=
this.C.scenarioPlayer().currentSession(),c=b.currentSceneState().scene();null!=c&&(new ad(b,c,"1.2"==this.kb,a)).create().forEach(d=>{if("tincan"==this.kb||"choice"==d.type()){var e="/scenarios/"+b.scenario().id();d.id();d.type();this.B.ab(e,d)}})}tc(){const a=this.C.quizPlayer(),b=a.currentSession();b.quizDuration();const c=b.evaluation();c&&(c.maxScore(),c.awardedScore(),c.quizPassed(),(new sc(this.B,b)).M.settings());a.id();b.quiz().title();he(this)}cc(a){a.preventAction()}Cb(a){null==a||a.preventAction();
this.U()}ic(){const a=this.B.$b();return a?{id:a.id(),name:a.name(),email:a.email()}:null}}je.prototype.initialize=je.prototype.initialize;let ke=null;m("iSpring.LMS.create",function(a,b,c){return ke=new je(b,c)});m("iSpring.LMS.instance",()=>ke);const Z={id:"id",type:"type",score:"weighting",wd:"correct_responses.%INDEX%.pattern",ac:"learner_response",description:"description",result:"result",duration:"latency",bc:"timestamp"};m("Tincan.MobileHttpTransport.onRequestComplete",function(a,b,c){const d=null.Xc[a];if(null==d)return"";delete null.Xc[a];Fc(()=>{if(b)d.onload(c);else d.onerror()},10);return"ok"});class le{constructor(a,b,c){this.za=a;this.qb=b;this.Fb=!1;this.lb=0;this.T=c}initialize(){try{return"true"==this.za.Initialize("").toString()}catch(a){}return!1}terminate(a){this.l("cmi.exit",a?this.Fb?"":"suspend":"normal");this.l("adl.nav.request","exitAll");this.commit();try{return"true"==this.za.Terminate("").toString()}catch(b){}return!1}commit(){0==this.lb&&this.l("cmi.exit",this.T?this.Fb?"":"suspend":"normal");try{const a="true"==this.za.Commit("").toString();this.lb+=1;return a}catch(a){}return!1}getValue(a){try{return this.za.GetValue(a)}catch(b){}return""}l(a,
b){"number"===typeof b&&(b=parseFloat(b.toFixed(7))+"");try{return"true"==this.za.SetValue(a,b).toString()}catch(c){}return!1}Vb(a){this.Fb=a}};class me{constructor(a,b){const c=dd();this.D=c?new le(c,a,b):null;this.S=!1}initialize(){return this.S?!0:this.S=null!=this.D?this.D.initialize():!1}terminate(a){return this.D?this.D.terminate(a):!1}commit(){return this.D?this.D.commit():!1}getValue(a){return this.D?this.D.getValue(a):""}l(a,b){return this.D?this.D.l(a,b):!1}wa(a,b,c,d){null==d&&(d=0);this.l("cmi.score.raw",a);this.l("cmi.score.min",b);this.l("cmi.score.max",c);this.l("cmi.score.scaled",d)}Wb(a){this.l("cmi.progress_measure",a)}bb(){return this.D?
this.D.getValue("cmi.mode"):"normal"}Xb(a,b){this.l("cmi.success_status",null===a?"unknown":a?"passed":"failed");this.l("cmi.completion_status",null===b?"unknown":b?"completed":"incomplete")}Vb(a){this.D.Vb(a)}ab(a){var b=parseInt(this.getValue("cmi.interactions._count"),10);if(!(0>b)){b="cmi.interactions."+b+".";this.l(b+Z.id,a.id());this.l(b+Z.type,a.type());this.l(b+Z.score,a.score());var c=a.J||[];for(var d=0;d<c.length;++d){var e=Z.wd.replace("%INDEX%",d);this.l(b+e,c[d])}c=a.ac();null!=c&&this.l(b+
Z.ac,c);c=this.l;d=b+Z.result;e=a.result();c.call(this,d,e);this.l(b+Z.description,a.description());c=a.duration();null!==c&&this.l(b+Z.duration,ed(c/1E3));a=a.bc();null!==a&&("number"===typeof a&&(a=new Date(a)),this.l(b+Z.bc,a.getUTCFullYear()+"-"+V(a.getUTCMonth()+1)+"-"+V(a.getUTCDate())+"T"+V(a.getUTCHours())+":"+V(a.getUTCMinutes())+":"+V(a.getUTCSeconds())+".0Z"))}}};class ne{constructor(){this.F=null}Jc(){throw Error("unimplemented abstract method");}Wb(a){this.F.Wb(a)}initialize(a,b){if(this.F=this.Jc()){var c=this.F;c.S?a():c.D?(c.S=c.D.initialize(),c.S?a():b()):(c.S=!1,b())}else b()}commit(){this.F.commit()}suspend(){this.F.terminate(!0);id();fd()}terminate(){this.F.terminate(!1);id();fd()}bb(){return"normal"}Xb(a,b){this.F.Vb(a);this.F.Xb(a,b)}wa(a,b,c,d){this.F.wa(d,b,c,a)}ab(a,b){this.F.ab(b)}$b(){var a=this.F;return new rc(a.getValue("cmi.learner_id"),
a.getValue("cmi.learner_name"))}};class oe extends ne{constructor(a){super();this.qb=a.Oc||"2";this.T=a.T}Jc(){return new me(this.qb,this.T)}bb(){return this.F.bb()}}m("iSpring.LMSAPI.Scorm2004Api",oe);})();
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")});