(function(){b.a9=b.f({constructor:function(){this.EKa=new b.O;(function(a){this.TNa=a;this.i1(a,!1)}).apply(this,arguments)},resolve:function(a){return this.EKa.get(a)},i1:function(a,d){if(b.j.isObject(a))if(d)for(var c=0,e=b.j.keySet(a),f=e.length;cb.gp.parseInt(f.toString())&&a.add(b.ma.Ur(106,e,"'"+g+"' is greater than the maximum array size "+b.gp.parseInt(f.toString())+ "."))}else g=d.properties,null!=g&&this.W1a(a,d,g,c,d[b.ma.tQa],e);g=d.minimum;null!=g&&(b.j.isNumber(c)&&g>c)&&a.add(b.ma.Ur(107,e,"'"+c+"' is less than the minimum value of "+g+"."));g=d.maximum;null!=g&&(b.j.isNumber(c)&&gd.compareTo(b.oi.Mla))return new b.Hn(1,1001,null,"The specification could not be validated because its version is less than "+b.oi.Mla.toString());var c=b.oi.vha.get(d);if(!c&&(c=b.oi.vha.get(d),!c)){var e;try{if(e=b.LG.getRaveSchema(d))c=new b.a9(e),b.oi.vha.put(d,c);else throw new b.Z("Could not find a valid schema to validate specification 'version': "+d+". The schema is invalid or empty. Consider disabling validation.", b.q.SPEC_INVALID_VALUE,null);}catch(f){if(b.F.isInstanceOf(f,b.Ra))throw new b.Z("Could not find a schema to validate specification 'version': "+d+". The schema failed to load. Consider disabling validation.",b.q.SPEC_INVALID_VALUE,null);throw f;}}return(new b.ma(c)).validate(a)};b.oi.dXb=1001;b.L.add(function(){b.oi.Mla=new b.Td(1,2,0);b.oi.bYb="version";b.oi.vha=new b.sb(6)});b.vy=b.f.implement();b.kW=b.f(b.vy,{constructor:function(){this.hx=new b.o},migrate:function(a){return this.Dwa(a,!1)},pAa:function(a){return this.Dwa(a, !0)},Dwa:function(a,d){var c=this.xi(),e=!1,f;if(!this.hx.isEmpty()&&b.j.containsKey(a,"version")){for(var g=b.Td.parseVersion(a.version),h=null,k=0;k=l.xi().compareTo(c)&&0>g.compareTo(l.xi())&&(f||(f=d?b.j.deepClone(a):a),h&&0>h.compareTo(l.xi())&&(f.version=h.toString(),h=null),l.migrate(f)&&(h=l.xi(),e=!0))}h&&(f.version=h.toString())}return e?f:null},z3b:y("hx"),MYa:function(a){this.hx.add(a)},xi:function(){return this.hx.isEmpty()?null:this.hx.get(this.hx.size()- 1).xi()},VDb:function(){b.j.sortList(this.hx,new b.xta)}});b.L.add(function(){b.kW.VERSION="version"});b.xta=b.f(b.Qd,{compare:function(a,d){var c=a.xi().compareTo(d.xi());0==c&&(b.F.isInstanceOf(a,b.bC)&&!b.F.isInstanceOf(d,b.bC)?c=1:!b.F.isInstanceOf(a,b.bC)&&b.F.isInstanceOf(d,b.bC)&&(c=-1));return c}});b.jW=b.f({constructor:function(){this.RA=new b.O;this.cn=new b.sb;(function(a,b){this.Gv=a;this.JR=b}).apply(this,arguments)},getParent:y("JR"),reset:function(){this.RA.clear();this.cn.clear()}, getContext:y("Gv"),k4b:y("RA"),Pba:y("cn"),wI:function(a){var b;this.RA.containsKey(a)?b=this.RA.get(a):this.JR&&(b=this.JR.wI(a));return b},ue:function(a){var b;this.cn.containsKey(a)?b=this.cn.get(a):this.JR&&(b=this.JR.ue(a));return b},MAa:function(a){if(b.j.isString(a)){if(a.CPVISEngineStartsWith("$"))return this.wI(a.substring(1));if(a.CPVISEngineStartsWith("\\$"))return a.substring(1)}return a}});b.JG=b.f({constructor:function(a,b){this.id=a;this.ryb=b},get:function(a){a=a.ue(b.JG.Ima);if(!a)throw new b.Ra("No 'version' property found in the evaluation context."); return b.hh.va.sg(this.id,new b.wta(a,this.ryb))}});b.JG.parse=function(a){var d;a&&(d=new b.JG(a.id,a.parameters));return d};b.JG.Ima="StrategyReference.version";b.wta=b.f({constructor:function(a,b){this.UPa=a;this.syb=b},m4b:y("UPa"),getParameters:y("syb")});b.wv=b.f({constructor:function(a){a=b.ki.split(a,46);for(var d=0,c=a.length;d=g;)h=null,this.wV&&g==f&&(h=this.wV.MP?b.j.createJSONArray():b.j.createJSONObject()),e.push(h),g++}e&&(-1==f&&(f=this.iD(e,a)),f=f.length;)f.push(null); b.j.setAt(f,d,c)}else if(b.j.isObject(c))c[e]=d;else throw new b.M("Unable to assign a value to '"+e+"' due to an invalid value in the path.",b.q.MIGRATION_INVALID_PATH_EXPRESSION,null);},concat:function(a,d){if(this.nw&&!this.Vx){var c=this.WW(a,!0);if(b.j.isArray(d))b.j.addAll(c.yf,d);else if(c.isArray())c.yf.push(d);else throw new b.M("Unable to concat a value to '"+this.CD(a)+"' due to an invalid value in the path.",b.q.MIGRATION_INVALID_PATH_EXPRESSION,null);}else throw new b.M("Concatenation is not supported for '"+ this.CD(a)+"' because it is not an array.",b.q.MIGRATION_INVALID_PATH_EXPRESSION,null);},remove:function(a){var d=!1,c;c=this.vj?this.vj.WW(a,!1).yf:a.Gv;if(null!=c)if(this.nw&&this.Vx){if((c=this.bY(c,a))&&this.iD(c,a)d&&(d=h,c=g)}}if(null==c)return null;d=b.j.createJSONObject();d.width=c;return d}});b.L.add(function(){b.M8.BOb="legends";b.M8.pPb="location"});b.Dr=b.f(b.vy,{xi:function(){return b.Dr.bWa},constructor:function(){try{var a=b.LG.getRaveSchema(this.xi()),d=this.iya(this.Eya(a),"grammar"),d=this.iya(d,"elements"),c=!d?null:d.type;if(c){var e=c["enum"];e&&(this.VLa=new b.fh(e))}}catch(f){if(b.F.isInstanceOf(f,b.Ra))f.A6b(); else throw f;}},migrate:function(a){if(!this.VLa)return!1;var b=!1,c=a.type;null!=a.path&&!this.VLa.contains(c)&&(a.type="path",b=!0);return b},Eya:function(a){return!a?null:a.properties},Fib:function(a){return!a?null:a.items},iya:function(a,b){return this.Eya(this.Fib(!a?null:a[b]))}});b.Dr.getInstance=function(){b.Dr.Qla||(b.Dr.Qla=new b.Dr);return b.Dr.Qla};b.Dr.GNb="items";b.Dr.FRb="properties";b.Dr.eSa="enum";b.L.add(function(){b.Dr.bWa=new b.Td(3,0,0)});b.vta=b.f.implement();b.yN=b.f(b.vta, {qHa:1,constructor:function(a){if(b.j.isObject(a)){var d=a.multiplier;b.j.isNumber(d)&&(this.qHa=d);b.j.containsKey(a,"unit")&&(a=a.unit,b.j.isString(a)&&(this.unit=a))}},Ze:function(a,d){if(b.j.isNumber(d)){var c=b.yN.ja(d*this.qHa);0==c%1&&(c=b.mb.fromNumber(c));return null==this.unit?c:c+this.unit}return d}});b.yN.ja=function(a){return Math.round(1E3*a)/1E3};b.yN.wQb="multiplier";b.yN.WVa="unit";b.x6a=b.f(b.vta,{Ze:function(a,d){for(var c=new b.ac,e=0,f=d.length;e