UNPKG

ignite-ui

Version:

Ignite UI for jQuery by Infragistics

1 lines 144 kB
(function(factory){if(typeof define==="function"&&define.amd){define([],factory)}else{return factory()}})(function(){window.igRoot=window.igRoot||{};if(window.$!==undefined||typeof $==="function"){window.igRoot=window.$||$}window.igRoot.ig=window.igRoot.ig||{_isNamespace:true};window.$ig=window.$ig||window.igRoot.ig;var $=igRoot;$=$||{};$.ig=$.ig||{};$.ig.util=$.ig.util||{};$.ig.locale=$.ig.locale||{};$.ig.locale.en=$.ig.locale.en||{};$.ig.locale.en.util={unsupportedBrowser:"The current browser does not support HTML5 canvas element. <br/>Try upgrading to any of the following versions:",currentBrowser:"Current browser: {0}",ie9:"Microsoft Internet Explorer V 9+",chrome8:"Google Chrome V 8+",firefox36:"Mozilla Firefox V 3.6+",safari5:"Apple Safari V 5+",opera11:"Opera V 11+",ieDownload:"http://www.microsoft.com/windows/internet-explorer/default.aspx",operaDownload:"http://www.opera.com/download/",chromeDownload:"http://www.google.com/chrome",firefoxDownload:"http://www.mozilla.com/",safariDownload:"http://www.apple.com/safari/download/",defaultSummaryMethodLabelMin:"Min = ",defaultSummaryMethodLabelMax:"Max = ",defaultSummaryMethodLabelSum:"Sum = ",defaultSummaryMethodLabelAvg:"Avg = ",defaultSummaryMethodLabelCount:"Count = "};$.ig.util.locale=$.ig.util.locale||$.ig.locale.en.util;return igRoot});"use strict";(function(factory){if(typeof define==="function"&&define.amd){define([],factory)}else{return factory()}})(function(){window.igRoot=window.igRoot||{};if(window.jQuery!==undefined||typeof jQuery==="function"){window.igRoot=window.jQuery||jQuery}window.igRoot.ig=window.igRoot.ig||{_isNamespace:true};window.$ig=window.$ig||window.igRoot.ig;var $=igRoot;var initializing=false,fnTest=/xyz/.test(function(){xyz()})?/\b_super\b/:/.*/;if(!Array.isArray){Array.isArray=function(arg){return Object.prototype.toString.call(arg)==="[object Array]"}}window.Class=window.Class||function(){};Class.extend=function(prop,doAugment){var doSuper=true,_super=this.prototype,prototype,name;if(doAugment){doSuper=false}initializing=true;prototype=new this;initializing=false;function makeFn(name,fn){return function(){var tmp=this._super,ret;this._super=_super[name];ret=fn.apply(this,arguments);this._super=tmp;return ret}}if(doAugment){prototype.getType=function(){return this.$type};prototype.getHashCode=function(){if(this.$hashCode!==undefined){return this.$hashCode}this.$hashCode=$.ig.nextHashCode++;return this.$hashCode}}for(name in prop){if(prop.hasOwnProperty(name)){prototype[name]=doSuper&&typeof prop[name]==="function"&&typeof _super[name]==="function"&&fnTest.test(prop[name])?makeFn(name,prop[name]):prop[name]}}var isForIntellisense=window.intellisense&&window.intellisense.annotate;function Class(){if(!initializing&&this.init){if(!isForIntellisense||Class===$.ig.Type){this.init.apply(this,arguments)}}}if(prop.$type){prop.$type.InstanceConstructor=Class}Class.prototype=prototype;Class.constructor=Class;Class.extend=this.extend;if(doAugment){Class.typeName=function(){return this.prototype.$type};Class.baseType=function(){return this.$type.baseType}}return Class};if(!window.console){window.console={log:function(){}}}var lastTime=0;var prefixes=["ms","moz","webkit","o"];for(var x=0;x<prefixes.length&&(!window.requestAnimationFrame||!window.cancelAnimationFrame);++x){window.requestAnimationFrame=window[prefixes[x]+"RequestAnimationFrame"];window.cancelAnimationFrame=window[prefixes[x]+"CancelAnimationFrame"]||window[prefixes[x]+"CancelRequestAnimationFrame"]}if(!window.requestAnimationFrame){window.requestAnimationFrame=function(callback){var currTime=Date.now();var timeToCall=Math.max(0,16-(currTime-lastTime));var id=window.setTimeout(function(){callback(currTime+timeToCall)},timeToCall);lastTime=currTime+timeToCall;return id}}if(!window.cancelAnimationFrame){window.cancelAnimationFrame=function(id){clearTimeout(id)}}$.ig.util=$.ig.util||{};$.ig.util.browserVersion="";$.ig.util.language="en";$.ig.util.regional="en-US";$.ig.util.widgetStack=[];$.ig._regional={monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],am:"AM",pm:"PM",datePattern:"M/d/yyyy",dateLongPattern:"dddd, MMMM dd, yyyy",dateTimePattern:"M/d/yyyy h:mm tt",timePattern:"h:mm tt",timeLongPattern:"h:mm:ss tt",dateTitleFullPattern:"dd MM yy",dateTitleMonthPattern:"MM yy",negativeSign:"-",numericNegativePattern:"-$n",numericDecimalSeparator:".",numericGroupSeparator:",",numericGroups:[3],numericMaxDecimals:2,numericMinDecimals:0,currencyPositivePattern:"$n",currencyNegativePattern:"-$n",currencySymbol:"$",currencyDecimalSeparator:".",currencyGroupSeparator:",",currencyGroups:[3],currencyMaxDecimals:2,currencyMinDecimals:2,percentPositivePattern:"n$",percentNegativePattern:"-n$",percentSymbol:"%",percentDecimalSeparator:".",percentGroupSeparator:",",percentGroups:[3],percentDisplayFactor:100,percentMaxDecimals:2,percentMinDecimals:2};$.ig.regional=$.ig.regional||{};$.ig.regional.defaults=$.ig._regional;$.ig.util.changeGlobalLanguage=function(language){$.ig.util.language=language;for(var i=0;i<$.ig.util.widgetStack.length;i++){$.ig.util.widgetStack[i].changeGlobalLanguage()}};$.ig.util.changeGlobalRegional=function(regional){$.ig.util.regional=regional;$.ig.regional.defaults=$.extend({},$.ig._regional,typeof regional==="string"?$.ig.regional[regional]:regional);for(var i=0;i<$.ig.util.widgetStack.length;i++){$.ig.util.widgetStack[i].changeGlobalRegional()}};$.ig.util.getLocaleValue=function(collection,key){var language=$.ig.util.language,locale=$.ig.locale[language]&&$.ig.locale[language][collection]||$.ig[collection]&&$.ig[collection].locale||$.ig[collection.toLowerCase()]&&$.ig[collection.toLowerCase()].locale;return locale[key]||""};$.ig.util.isIE=window.navigator.userAgent.indexOf("MSIE")>-1||!!window.navigator.userAgent.match(/trident/i);$.ig.util.isIEOld=$.ig.util.isIE&&!window.HTMLElement?true:false;if($.ig.util.isIE){$.ig.util.browserVersion=document.documentMode;$.ig.util.isIE7=$.ig.util.browserVersion<=7;$.ig.util.isIE8=$.ig.util.browserVersion===8;$.ig.util.isIE9=$.ig.util.browserVersion===9;$.ig.util.isIE10=$.ig.util.browserVersion===10;$.ig.util.isIE11=$.ig.util.browserVersion>=11}$.ig.util.isChrome=window.chrome;$.ig.util.isFF=window.mozInnerScreenX!==undefined;$.ig.util.isOpera=!!window.opera;$.ig.util.isSafari=Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor")>0||window.ApplePaySession?true:false;$.ig.util.isWebKit=!!window.webkitURL;$.ig.util.isEdge=window.navigator.userAgent.indexOf("Edge")>-1;if(typeof $.ig.useDefineProperty==="undefined"){$.ig.useDefineProperty=true}$.ig.util.isModernizrAvailable=typeof Modernizr==="object";$.ig.util.isTouch=$.ig.util.isModernizrAvailable&&(Modernizr.touch===true||Modernizr.touchevents===true||Modernizr.pointerevents===true);$.ig.util.isTouchDevice=function(){return"ontouchstart"in window||window.navigator.maxTouchPoints>0||window.navigator.msMaxTouchPoints>0};$.ig.extendNativePrototype=function(proto,propName,val){if($.ig.useDefineProperty){try{Object.defineProperty(proto,propName,{value:val,enumerable:false,configurable:true,writable:true})}catch(e){proto[propName]=val}}else{proto[propName]=val}};$.ig.util.stackPeek=function(array){return array[array.length-1]};$.ig.util.stackContains=function(array,item){for(var i=0;i<array.length;i++){if($.ig.Object.prototype.equalsStatic(array[i],item)){return true}}return false};$.ig.util.createString1=function(charArray){return charArray.join("")};$.ig.util.createString2=function(c,count){var ret="";for(var i=0;i<count;i++){ret=ret+c}return ret};$.ig.util.createString3=function(charArray,start,length){var ret="";for(var i=0;i<length;i++){ret=ret+charArray[start+i]}return ret};String.prototype.copyTo=function(sourceIndex,destination,destinationIndex,count){for(var i=destinationIndex;i<destinationIndex+count;i++){destination[i]=this.charAt(sourceIndex+i-destinationIndex)}};Date.prototype.stdTimezoneOffset=function(){var jan,jul,janOffset,julOffset;jan=new Date(this.getFullYear(),0,1);jul=new Date(this.getFullYear(),6,1);julOffset=jul.getTimezoneOffset();janOffset=jan.getTimezoneOffset();return Math.max(janOffset,julOffset)};Date.prototype.dst=function(){return this.getTimezoneOffset()<this.stdTimezoneOffset()};$.ig.findPath=function(dsObj,resKey){var resPath,ds=dsObj;resPath=resKey.split(".");if(resPath.length>0){for(var i=0;i<resPath.length;i++){if(ds){ds=ds[resPath[i]]}else{break}}}return ds};$.ig.nextHashCode=0;$.ig.util.ensureUniqueId=function(obj){if(!obj.getHashCode){var code=$.ig.nextHashCode++;obj.getHashCode=function(){return code}}};$.ig.typeIdentifierCache={};$.ig.nextTypeIdentifier=0;$.ig.Type=Class.extend({init:function(identifier,baseType,interfaces,staticInitializer){this.specializationCache={};this._staticInitializer=staticInitializer;this._fullName=identifier;this.name=identifier;var lastDotIndex=this.name.lastIndexOf(".");if(lastDotIndex>=0){this.name=this.name.substr(lastDotIndex+1)}this.typeArguments=null;this.baseType=null;this.interfaces=null;if(baseType){this.baseType=baseType}if(interfaces){this.interfaces=interfaces}if($.ig.typeIdentifierCache[identifier]){this.identifier=$.ig.typeIdentifierCache[identifier]}else{this.identifier=$.ig.nextTypeIdentifier++;$.ig.typeIdentifierCache[identifier]=this.identifier}if(baseType&&$.ig.Enum&&baseType==$.ig.Enum.prototype.$type){this.isEnumType=true}},typeName:function(){return this.name},fullName:function(){return this._fullName},getSpecId:function(types){if(types.length===1){if(!types[0]){return"undef"}else if(types[0]===-1){return undefined}else if(!types[0].typeName){return types[0].toString()}else if(types[0].stringId){return types[0].stringId}else{return types[0].identifier.toString()}}var ret="";for(var i=0;i<types.length;i++){var type=types[i];if(!type){ret+="undef"}else if(type==-1){return undefined}else if(!type.typeName){ret+=type.toString()}else if(type.stringId){ret+=type.stringId}else{ret+=type.identifier.toString()}}return ret},_isGenericType:null,isGenericType:function(){if(this._isGenericType===null){this._isGenericType=this.name.indexOf("$")>=0}return this._isGenericType},isGenericTypeDefinition:function(){return this.typeArguments===null&&this.isGenericType()},genericTypeArguments:function(){return this.typeArguments},_staticInitializer:null,_staticFields:null,getStaticFields:function(type){if(type===undefined){type=this}var t=this;while(t!=null){if(t===type||t._fullName==type._fullName){if(t._staticFields==null&&t._staticInitializer){t._staticFields={};t._staticInitializer.apply(t._staticFields,t.typeArguments)}return t._staticFields}t=t.baseType}return null},specializationCache:null,initSelfReferences:function(replacement){var i,j;if(replacement){if(this.typeArguments){var updateCache=false;for(j=0;j<this.typeArguments.length;j++){var typeArg=this.typeArguments[j];if(typeArg==-1){updateCache=true;this.typeArguments[j]=replacement}else if(typeArg&&typeArg.initSelfReferences){typeArg.initSelfReferences(replacement)}}if(updateCache){var specId=this.getSpecId(this.typeArguments);var ret=this.specializationCache[specId];if(!ret){this.specializationCache[specId]=this}}}}else{if(this.baseType){this.baseType.initSelfReferences(this)}if(this.interfaces){for(i=0;i<this.interfaces.length;i++){this.interfaces[i].initSelfReferences(this)}}}},specialize:function(){var i;if(!this.isGenericType()){return this}var specId=this.getSpecId(arguments);var ret=this.specializationCache[specId];if(ret){return ret}ret=new $.ig.Type(this._fullName,this.baseType,this.interfaces,this._staticInitializer);var placeholders=this.typeArguments;var hasPlaceholders=false;if(placeholders&&placeholders.length){hasPlaceholders=true}ret.typeArguments=[];if(hasPlaceholders){for(i=0;i<placeholders.length;i++){if(isFinite(placeholders[i])&&!isFinite(arguments[placeholders[i]])){ret.typeArguments[i]=arguments[placeholders[i]]}else if(placeholders[i]&&placeholders[i]!=arguments[i]&&placeholders[i].typeArguments){ret.typeArguments[i]=this.specialize.apply(placeholders[i],arguments)}else{ret.typeArguments[i]=placeholders[i]}}}else{for(i=0;i<arguments.length;i++){ret.typeArguments[i]=arguments[i]}}if(this.baseType&&this.baseType.typeArguments){ret.baseType=this.specialize.apply(this.baseType,ret.typeArguments)}if(this.interfaces){ret.interfaces=[];for(i=0;i<this.interfaces.length;i++){ret.interfaces[i]=this.specialize.apply(this.interfaces[i],ret.typeArguments)}}if(this._fullName=="Nullable$1"&&ret.typeArguments.length==1){ret.isNullable=true}if(specId){this.specializationCache[specId]=ret;ret.stringId=ret.generateString()}else{ret.specializationCache=this.specializationCache}var _self=this;ret.InstanceConstructor=function(){_self.InstanceConstructor.apply(this,ret.typeArguments.concat(Array.prototype.slice.call(arguments,0)));return this};ret.InstanceConstructor.prototype=this.InstanceConstructor.prototype;return ret},equals:function(other){if(!(other instanceof $.ig.Type)){return false}if(this.identifier!==other.identifier){return false}if(this.typeArguments===null&&other.typeArguments===null){return true}if(this.typeArguments===null&&other.typeArguments!==null){return false}if(this.typeArguments!==null&&other.typeArguments===null){return false}if(this.typeArguments.length!==other.typeArguments.length){return false}for(var i=0;i<this.typeArguments.length;i++){if(!$.ig.Type.prototype.checkEquals(this.typeArguments[i],other.typeArguments[i])){return false}}return true},checkEquals:function(type1,type2){if(type1 instanceof $.ig.Type){return type1.equals(type2)}else if(type2 instanceof $.ig.Type){return type2.equals(type1)}else{return type1===type2}},op_Equality:function(type1,type2){return type1.equals(type2)},op_Inequality:function(type1,type2){return!type1.equals(type2)},generateString:function(){if(!this.typeArguments||!this.typeArguments.length){return this.identifier.toString()}else{var ret=this.identifier.toString()+"[";var first=true;for(var i=0;i<this.typeArguments.length;i++){if(this.typeArguments[i]==undefined){continue}if(first){first=false}else{ret+=","}if(this.typeArguments[i].toString){ret+=this.typeArguments[i].toString()}else{ret+=this.typeArguments[i].identifier.toString()}}ret+="]";return ret}},isEnum:function(){return this.baseType===$.ig.Enum.prototype.$type},isValueType:function(){return this.baseType===$.ig.ValueType.prototype.$type},isAssignableFrom:function(tOther){if(this===tOther){return true}if(tOther.baseType&&this.isAssignableFrom(tOther.baseType)){return true}if(tOther.interfaces){for(var i=0;i<tOther.interfaces.length;i++){if(this.isAssignableFrom(tOther.interfaces[i])){return true}}}return false},isInstanceOfType:function(value){return $.ig.util.cast(this,value)!==null},isPrimitive:function(){return this===$.ig.Number.prototype.$type||this===$.ig.Boolean.prototype.$type}},true);$.ig.Object=Class.extend({init:function(){},equals:function(other){return this===other},equalsStatic:function(a,b){var aIsNull=a==null||!!a.isNullable&&!a.hasValue();var bIsNull=b==null||!!b.isNullable&&!b.hasValue();if(aIsNull||bIsNull){return aIsNull&&bIsNull}if(a.equals){return a.equals(b)}if(b.equals){return b.equals(a)}if($.ig.util.isNaN(a)&&$.ig.util.isNaN(b)){return true}return a==b&&typeof a==typeof b},memberwiseClone:function(){function Cons(){}Cons.prototype=this.$type.InstanceConstructor.prototype;var clone=new Cons;for(var prop in this){if(this.hasOwnProperty(prop)){clone[prop]=this[prop]}}return clone},referenceEquals:function(a,b){return a===b||a==null&&b==null},$type:new $.ig.Type("Object")},true);$.ig.$o=$.ig.Object;$.ig.$op=$.ig.Object.prototype;$.ig.$ot=$.ig.Object.prototype.$type;$.ig.Type.prototype.$type=new $.ig.Type("Type",$.ig.Object.prototype.$type);$.ig.IConvertible=Class.extend({$type:new $.ig.Type("IConvertible")},true);$.ig.IComparable=Class.extend({$type:new $.ig.Type("IComparable")},true);$.ig.IComparable$1=Class.extend({$type:new $.ig.Type("IComparable$1")},true);$.ig.IEquatable$1=Class.extend({$type:new $.ig.Type("IEquatable$1")},true);$.ig.Enum=Class.extend({parse:function(enumType,value,ignoreCase){var info=$.ig.util.getDefinedNameAndNamespace(enumType.fullName());if($.ig.util.canAssign(this.$type,enumType)){var p=info.namespace[info.name].prototype;var values=p.$type.InstanceConstructor._isEnum?p.$type.InstanceConstructor:p;if(values.hasOwnProperty(value)){return p.getBox(values[value])}else if(ignoreCase){var upper=value.toUpperCase();for(var x in values){if(x.toUpperCase()===upper){return p.getBox(values[x])}}}else{var firstChar=value.charAt(0);if(firstChar!="_"){value=firstChar.toLowerCase()+value.substr(1)}else{value="_"+value.charAt(1).toLowerCase()+value.substr(2)}if(values.hasOwnProperty(value)){return p.getBox(values[value])}}if(p.$renamed){var rVal=p.$renamed[ignoreCase?value.toUpperCase():value];if(rVal){return p.getBox(values[rVal])}}}throw new Error("Invalid "+info.name+" value: "+value)},getBox:function(v){if(!this._boxes){this._boxes={}}if(!this._boxes[v]){this._boxes[v]=new this.$type.InstanceConstructor(v)}return this._boxes[v]},toString:function(){return this.$type.InstanceConstructor.prototype.$getName(this._v)},getFlaggedName:function(v,getName){var names=[];var original=v;var zeroValueName;var value;var values=[];for(var p in this){if(this.hasOwnProperty(p)){value=this[p];if(typeof this[p]=="number"){values.push(p)}}}var _self=this;values.sort(function(a,b){return _self[a]-_self[b]});for(var i=values.length-1;i>=0;i--){value=this[values[i]];if(value===0){zeroValueName=getName(0)}else if((v&value)===value){v-=value;names.unshift(getName(value))}}if(v!==0){return original.toString()}if(original!==0){return names.join(", ")}return zeroValueName||"0"},getValues:function($t){var result=[];var p=$t.InstanceConstructor._isEnum?$t.InstanceConstructor:$t.InstanceConstructor.prototype;for(var member in p){if(p.hasOwnProperty(member)){if(typeof p[member]==="number"){result.push(p[member])}}}return result},getNames:function($t){var result=[];var p=$t.InstanceConstructor._isEnum?$t.InstanceConstructor:$t.InstanceConstructor.prototype;for(var member in p){if(p.hasOwnProperty(member)){if(typeof p[member]==="number"){result.push(member)}}}return result},isDefined:function($t,value){value=$.ig.util.getValue(value);var p=$t.InstanceConstructor._isEnum?$t.InstanceConstructor:$t.InstanceConstructor.prototype;for(var member in p){if(p.hasOwnProperty(member)){if(p[member]===value){return true}}}return false},toDouble:function(provider){return this.$value()},toObject:function($t,value){return value},tryParse$1:function($tEnum,value,ignoreCase,result){try{return{ret:true,p2:this.parse($tEnum,value,ignoreCase).$value()}}catch(e){result=$.ig.util.createInstance($tEnum);return{ret:false,p2:result}}},$type:new $.ig.Type("Enum",$.ig.Object.prototype.$type,[$.ig.IConvertible.prototype.$type])},true);$.ig.$e=$.ig.Enum;$.ig.$ep=$.ig.Enum.prototype;$.ig.$et=$.ig.Enum.prototype.$type;$.ig.ValueType=Class.extend({init:function(){},$type:new $.ig.Type("ValueType",$.ig.Object.prototype.$type)},true);$.ig.INotifyPropertyChanged=Class.extend({init:function(){},_PropertyChanged:function(){},$type:new $.ig.Type("INotifyPropertyChanged")},true);$.ig.PropertyChangedEventArgs=$.ig.Object.extend({init:function(propertyName){this._propertyName=propertyName},_propertyName:null,propertyName:function(value){if(arguments.length===0){return this._propertyName}else{this._propertyName=value}},$type:new $.ig.Type("PropertyChangedEventArgs",$.ig.Object.$type)},true);$.ig.XmlNodeType=Class.extend({_None:0,_Attribute:2,_CDATA:4,_Comment:8,_Document:9,_DocumentFragment:11,_DocumentType:10,_Element:1,_EndElement:15,_EndEntity:16,_Entity:6,_EntityReference:5,_Notation:12,_ProcessingInstruction:7,_SignificantWhitespace:14,_Text:3,_Whitespace:13,_XmlDeclaration:17,none:0,element:1,attribute:2,text:3,cDATA:4,entityReference:5,entity:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12,whitespace:13,significantWhitespace:14,endElement:15,endEntity:16,xmlDeclaration:17},true);$.ig.XmlDocumentParser=Class.extend({parse:function(markup){if(!window.DOMParser){var parsers=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var i=0;i<parsers.length;i++){try{var xmlDOM=new ActiveXObject(parsers[i]);xmlDOM.async=false;xmlDOM.loadXML(markup);xmlDOM.setProperty("SelectionLanguage","XPath");return xmlDOM}catch(ex){}}}else{try{var domParser=new DOMParser;return domParser.parseFromString(markup,"text/xml")}catch(ex){}}return null}},true);$.ig.Array=Array;$.ig.extendNativePrototype(Array.prototype,"add",function(item){this[this.length]=item});$.ig.addToArray=function(arr,item){arr[arr.length]=item};$.ig.indexInArray=function(arr,item){for(var i=0;i<arr.length;i++){if(arr[i]==item){return i}}return-1};$.ig.arrayContains=function(arr,item){var index=arr.indexOf(item);return index>=0};if(!Array.prototype.indexOf){$.ig.extendNativePrototype(Array.prototype,"indexOf",function(item){for(var i=0;i<this.length;i++){if(this[i]==item){return i}}return-1})}if(!Array.prototype.lastIndexOf){$.ig.extendNativePrototype(Array.prototype,"lastIndexOf",function(item){for(var i=this.length-1;i>=0;i--){if(this[i]==item){return i}}return-1})}$.ig.extendNativePrototype(Array.prototype,"copy",function(source,sourceIndex,dest,destIndex,count){for(var i=0;i<count;i++){dest[destIndex+i]=source[sourceIndex+i]}});$.ig.removeFromArray=function(arr,from,to){var rest=arr.slice((to||from)+1||arr.length);arr.length=from<0?arr.length+from:from;return arr.push.apply(arr,rest)};$.ig.extendNativePrototype(Array.prototype,"contains",function(item){var index=this.indexOf(item);return index>=0});$.ig.extendNativePrototype(Array.prototype,"insert",function(index,item){this.splice(index,0,item)});$.ig.extendNativePrototype(Array.prototype,"removeAt",function(i){this.splice(i,1)});$.ig.extendNativePrototype(Array.prototype,"removeItem",function(item){var index=this.indexOf(item);if(index>=0){this.splice(index,1);return true}return false});$.ig.extendNativePrototype(Array.prototype,"getEnumerator",function(){return new $.ig.ArrayEnumerator(this)});$.ig.extendNativePrototype(Array.prototype,"count",function(){return this.length});$.ig.extendNativePrototype(Array.prototype,"item",function(index,value){if(arguments.length===2){this[index]=value;return value}else{return this[index]}});$.ig.extendNativePrototype(Array.prototype,"getLength",function(dimension){var array=this;var dim=dimension;while(array){if(dim===0){return array.length}dim--;array=array[0]}return this.dimensionLength[dimension-1]});$.ig.extendNativePrototype(Array.prototype,"resize",function(){this.length=0});$.ig.ArrayEnumerator=Class.extend({init:function(array){this._array=array;this._index=-1},current:function(){return this._array[this._index]},moveNext:function(){this._index++;return this._index<this._array.length},reset:function(){this._index=-1},dispose:function(){}},true);$.ig.Date=Class.extend({init:function(){return new Date},fromOADate:function(value){var days=Math.floor(value);var result=new Date(1899,11,30+days);if(value!==days){result=new Date(+result+Math.round((value-days)*864e5))}return result},fromValues:function(year,month,day,hour,minute,second,millisecond){return new Date(year,month-1,day,hour,minute,second,millisecond)},fromTicks:function(ticks){return new Date(ticks)},addSeconds:function(value,seconds){return $.ig.Date.prototype.addDays(value,seconds/86400)},addMinutes:function(value,minutes){return $.ig.Date.prototype.addDays(value,minutes/1440)},addHours:function(value,hours){return $.ig.Date.prototype.addDays(value,hours/24)},addDays:function(value,days){var result=new Date(+value+days*864e5);if(value.dst){if(!value.dst()){if(result.dst()){result=new Date(+result-36e5)}}else{if(!result.dst()){result=new Date(+result+36e5)}}}return result},addMonths:function(value,num){var result=new Date(value.getTime());var currentMonth=result.getMonth()+result.getFullYear()*12;result.setMonth(result.getMonth()+num);var diff=result.getMonth()+result.getFullYear()*12-currentMonth;if(diff!=num){result.setDate(0)}return result},addYears:function(value,num){var result=new Date(value.getTime());result.setFullYear(result.getFullYear()+num);return result},daysInMonth:function(year,month){switch(month){case 1:return 31;case 2:return $.ig.Date.prototype.isLeapYear(year)?29:28;case 3:return 31;case 4:return 30;case 5:return 31;case 6:return 30;case 7:return 31;case 8:return 31;case 9:return 30;case 10:return 31;case 11:return 30;case 12:return 31}return 0},isLeapYear:function(year){return year%4===0&&year%100!==0},toFileTime:function(value){return(value-new Date(1600,11,31,19,0,0,0))*1e4},fromFileTime:function(value){return value/1e4+new Date(1600,11,31,19,0,0,0)},tryParse:function(s){var date=new Date(s);if(date==null||$.ig.util.isNaN(+date)){var r=/(\d{4})-(\d{2})-(\d{2})(?:T(\d{2}):(\d{2}):(\d{2}))?/.exec(s);if(r){if(r[4]){return{p1:new Date(+r[1],+r[2]-1,+r[3],+r[4],+r[5],+r[6]),ret:true}}else{return{p1:new Date(+r[1],+r[2]-1,+r[3]),ret:true}}}return{p1:null,ret:false}}if(date.getFullYear()<1930&&/\d+\/\d+\/\d\d(?!\d)/.test(s)){date.setFullYear(date.getFullYear()+100)}return{p1:date,ret:true}},parseExact:function(s,format,provider){var r=$.ig.Date.prototype.tryParse(s);if(!r.ret){throw new $.ig.FormatException("Unknown date format")}return r.p1},toLocalTime:function(value){return value},toUniversalTime:function(value){return value},getMonth:function(value){return value.getMonth()+1},today:function(value){var r=new Date;r.setHours(0,0,0,0);return r},getTimeOfDay:function(value){return value.getHours()*36e5+value.getMinutes()*6e4+value.getSeconds()*1e3+value.getMilliseconds()},getDate:function(value){var newDate=new Date(+value);newDate.setHours(0,0,0,0);return newDate},_requiresISOCorrection:!isNaN(+new Date("2000-01-01T00:00:00"))&&new Date("2000-01-01T00:00:00").getHours()!==0,_requiresISODateCorrection:!isNaN(new Date("2000-01-01"))&&new Date("2000-01-01").getHours()!==0,parse:function(s,provider){provider=provider||$.ig.CultureInfo.prototype.currentCulture();var result;var isoTest=/(\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2})(?:\.| )?(\d*)?/.exec(s);if(isoTest){result=$.ig.Date.prototype.parseExact(isoTest[1]);if(isoTest[2]){var ms=Number("0."+isoTest[2])*1e3;result=new Date(+result+ms)}if(!$.ig.Date.prototype._requiresISOCorrection){return result}}else{result=$.ig.Date.prototype.parseExact(s);if(!$.ig.Date.prototype._requiresISODateCorrection){return result}}return new Date(result.getUTCFullYear(),result.getUTCMonth(),result.getUTCDate(),result.getUTCHours(),result.getUTCMinutes(),result.getUTCSeconds(),result.getUTCMilliseconds())},_longDateFormatOptions:{weekday:"long",year:"numeric",month:"long",day:"numeric"},toLongDateString:function(value){return value.toLocaleString($.ig.CultureInfo.prototype.currentCulture().name(),this._longDateFormatOptions).replace(/\u200E/g,"")},_longTimeFormatOptions:{hour:"numeric",minute:"numeric",second:"numeric"},toLongTimeString:function(value){return value.toLocaleString($.ig.CultureInfo.prototype.currentCulture().name(),this._longTimeFormatOptions).replace(/\u200E/g,"")},resetDateToCurrentDate:function(value){if(!value||!value.getTime){return value}var currentDate=new Date;var result=new Date(currentDate.getFullYear(),currentDate.getMonth(),currentDate.getDate(),value.getHours(),value.getMinutes(),value.getSeconds(),value.getMilliseconds());return result},$type:new $.ig.Type("Date",$.ig.Object.$type)},true);$.ig.extendNativePrototype(Date.prototype,"toOADate",function(){var u1=Date.UTC(this.getFullYear(),this.getMonth(),this.getDate(),this.getHours(),this.getMinutes(),this.getSeconds(),this.getMilliseconds());var u2=Date.UTC(1899,11,30);return(u1-u2)/864e5});$.ig.extendNativePrototype(Date.prototype,"kind",function(){return $.ig.DateTimeKind.prototype.local});$.ig.Date.prototype.now=function(){return new Date};$.ig.Date.prototype.minValue=function(){return new Date(1,1,1,0,0,0,0)};$.ig.Date.prototype.maxValue=function(){return new Date(9999,12,31,23,59,59,.9999999)};$.ig.Date.prototype.fromMilliseconds=function(value){return value};$.ig.Date.prototype.toString=function(value,provider){return $.ig.Date.prototype.toStringFormat(value,"s",provider)};if(!Date.prototype.toISOString){if(!Date.prototype.toJSON){Date.prototype.toJSON=function(key){function f(n){return n<10?"0"+n:n}return this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z"}}Date.prototype.toISOString=Date.prototype.toJSON}if(!Element.hasOwnProperty("remove")){Object.defineProperty(Element,"remove",{configurable:true,enumerable:true,writable:true,value:function remove(){this.parentNode.removeChild(this)}})}if(Text&&!Text.hasOwnProperty("remove")){Object.defineProperty(Text,"remove",{configurable:true,enumerable:true,writable:true,value:function remove(){this.parentNode.removeChild(this)}})}$.ig.Date.prototype.toStringFormat=function(value,format,provider){var result;provider=provider||$.ig.CultureInfo.prototype.currentCulture();var mmm=function(value,provider){var cultureName=provider.name();if(cultureName=="ja-JP"){result=value.toLocaleString("en-US",{month:"numeric"}).replace(/\u200E/g,"")}else{result=value.toLocaleString(provider.name(),{month:"short"}).replace(/\u200E/g,"")}if(result.contains(" ")){return["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"][value.getMonth()]}return result};var tt=function(value,provider,abbr){var h=value.getHours();var designator=h<=11?"AM":"PM";if(window.Intl){var d=new Date(+value);d.setHours(h,0,0,0);var culture=provider.name();var r=/\d|[\u200E]/g;var withAmPm=new Intl.DateTimeFormat(culture,{hour12:true,hour:"2-digit"}).format(d).replace(r,"");var nonAmPm=new Intl.DateTimeFormat(culture,{hour12:false,hour:"2-digit"}).format(d).replace(r,"");var pattern=$.ig.util.escapeRegExp(nonAmPm);var amPm=withAmPm.replace(new RegExp("\\s*"+pattern+"\\s*"),"").trim();if(amPm.replace(/[.,:;]/g,"").length>0){designator=amPm}}if(abbr&&designator){designator=designator.charAt(0)}return designator};var applyFormat=function(options){if(window.Intl){var formatter=new Intl.DateTimeFormat(provider.name(),options);return formatter.format(value)}return value.toLocaleString(provider.name(),options)};switch(format){case"s":{var s=new Date(Date.UTC(value.getFullYear(),value.getMonth(),value.getDate(),value.getHours(),value.getMinutes(),value.getSeconds())).toISOString();var d=s.lastIndexOf(".");if(d<0){return s}return s.slice(0,d)}case"MMMM":return value.toLocaleString(provider.name(),{month:"long"}).replace(/\u200E/g,"");case"ddd":return value.toLocaleString(provider.name(),{weekday:"short"}).replace(/\u200E/g,"");case"dddd":result=value.toLocaleString(provider.name(),{weekday:"long"}).replace(/\u200E/g,"");if(result.contains(" ")){return["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][value.getDay()]}return result;case"%t":return tt(value,provider,true);case"d":return value.toLocaleDateString();case"D":return applyFormat({weekday:"long",month:"long",day:"numeric",year:"numeric"});case"f":return applyFormat({weekday:"long",month:"long",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric"});case"F":return applyFormat({weekday:"long",month:"long",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});case"g":return applyFormat({month:"numeric",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric"});case"G":return applyFormat({month:"numeric",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric",second:"numeric"});case"M":case"m":return applyFormat({month:"long",day:"numeric"});case"t":return applyFormat({hour:"numeric",minute:"numeric"});case"T":return value.toLocaleTimeString();case"Y":case"y":return applyFormat({year:"numeric",month:"long"})}result=format;var year=value.getFullYear().toString();result=result.replace("yyyy",year);result=result.replace("yy",year.substr(-2));result=result.replace("MMM",mmm(value,provider));result=result.replace("MM",(value.getMonth()+1).toString().replace(/^(\d)$/,"0$1"));result=result.replace("dd",value.getDate().toString().replace(/^(\d)$/,"0$1"));var hours=value.getHours();result=result.replace("HH",hours.toString().replace(/^(\d)$/,"0$1"));result=result.replace("hh",(hours%12==0?12:hours%12).toString().replace(/^(\d)$/,"0$1"));result=result.replace("tt",tt(value,provider,false));result=result.replace("mm",value.getMinutes().toString().replace(/^(\d)$/,"0$1"));result=result.replace("ss",value.getSeconds().toString().replace(/^(\d)$/,"0$1"));result=result.replace("ff",Math.round(value.getMilliseconds()/10).toString().replace(/^(\d)$/,"0$1"));return result};$.ig.util.canAssign=function(targetType,type){if(targetType.name==="Nullable$1"&&type.name!=="Nullable$1"){targetType=$.ig.Nullable.prototype.getUnderlyingType(targetType)}return $.ig.util.canAssignSimple(targetType,type)};$.ig.util.canAssignSimple=function(targetType,type){if(targetType===type||$.ig.Type.prototype.checkEquals(targetType,type)){return true}if(type.interfaces){for(var i=0;i<type.interfaces.length;i++){if($.ig.util.canAssignSimple(targetType,type.interfaces[i])){return true}}}if(type.baseType){return $.ig.util.canAssignSimple(targetType,type.baseType)}return false};$.ig.util.cast=function(targetType,obj){if(obj===undefined||obj===null){return null}if(targetType===Array){return obj instanceof Array?obj:null}if(targetType===String){targetType=$.ig.String.prototype.$type}var type=obj;if(obj.$type){type=obj.$type}else if(typeof obj==="number"){type=targetType===Number?Number:$.ig.Number.prototype.$type}else if(typeof obj==="string"){type=$.ig.String.prototype.$type}else if(typeof obj==="boolean"){type=$.ig.Boolean.prototype.$type}else if(obj instanceof Date){type=$.ig.Date.prototype.$type}else if(obj instanceof Array){if(targetType==$.ig.IEnumerable.prototype.$type){return obj}}if($.ig.util.canAssignSimple(targetType,type)){return obj}if(targetType.name==="Nullable$1"&&type.name!=="Nullable$1"){targetType=$.ig.Nullable.prototype.getUnderlyingType(targetType);if($.ig.util.canAssignSimple(targetType,type)){return $.ig.util.toNullable(targetType,obj)}return $.ig.util.toNullable(targetType,null)}return null};$.ig.Dictionary=Class.extend({init:function(){this.proxy={};this.keysHolder=this.proxy;this._count=0},$type:new $.ig.Type("Dictionary",$.ig.Object.prototype.$type),proxy:null},true);$.ig.Dictionary.prototype.getDictionary=function(o){var dict=new $.ig.Dictionary;dict.proxy=o;dict.keysHolder=o;return dict};$.ig.Dictionary.prototype.containsKey=function(key){return this.proxy[key]!==undefined};$.ig.Dictionary.prototype.count=function(){return this._count};$.ig.Dictionary.prototype.item=function(key,value){if(arguments.length===1){return this.proxy[key]}else{if(!this.proxy[key]){this._count++}this.proxy[key]=value}};$.ig.Dictionary.prototype.add=function(key,value){if(!this.proxy[key]){this._count++}this.proxy[key]=value};$.ig.Dictionary.prototype.remove=function(key){delete this.proxy[key];this._count--};$.ig.Dictionary.prototype.keys=function(){return new $.ig.KeyEnumerator(this)};$.ig.Dictionary.prototype.values=function(){return new $.ig.ValueEnumerator(this)};$.ig.Dictionary.prototype.clear=function(){this.proxy={};this.keysHolder=this.proxy;this._count=0};$.ig.EventArgs=$.ig.Object.extend({init:function(){}},true);$.ig.String=Class.extend({$type:new $.ig.Type("String",$.ig.Object.prototype.$type,[$.ig.IConvertible.prototype.$type,$.ig.IComparable.prototype.$type])},true);$.ig.String.prototype.isDigit=function(str,index){index=index||0;var ch=str.charAt(index);if(ch>="0"&&ch<="9"){return true}return false};$.ig.String.prototype.charMaxValue=function(s){return"￿"};$.ig.String.prototype.charMinValue=function(s){return"\0"};$.ig.Boolean=Class.extend({tryParse:function(value){value=value.toLowerCase();if(value=="true"){return{p1:true,ret:true}}else if(value=="false"){return{p1:false,ret:true}}return{p1:false,ret:false}},$type:new $.ig.Type("Boolean",$.ig.Object.prototype.$type,[$.ig.IConvertible.prototype.$type,$.ig.IComparable.prototype.$type])},true);$.ig.Number=Class.extend({$type:new $.ig.Type("Number",$.ig.Object.prototype.$type,[$.ig.IConvertible.prototype.$type,$.ig.IComparable.prototype.$type])},true);$.ig.Number.prototype.parseInt=function(a,b){return parseInt(a,b)};$.ig.Number.prototype.log10=function(x){return Math.log(x)/Math.log(10)};if(!Number.isPrimitive){Number.isPrimitive=function(){return true}}if(!String.isPrimitive){String.isPrimitive=function(){return false}}$.ig.extendNativePrototype(String.prototype,"toDateTime",function(provider){var result=new Date(this);if(!isNaN(+result)){return result}if(/^((([0-9]{1,4})\s*(\s+((a|p)m?)\s*))|(([0-9]{1,4})\s*:\s*([0-9]?[0-9])\s*(:\s*([0-9]?[0-9])\s*(.\s*([0-9]{0,4})[0-9]*\s*)?)?(\s+((a|p)m?)\s*)?)|(\s*([0-9]?[0-9])\s*:\s*([0-9]?[0-9])\s*.\s*([0-9]{0,4})[0-9]*\s*(\s+((a|p)m?)\s*)?))$/i.test(this)){return new Date((new Date).toDateString()+" "+this)}throw new $.ig.FormatException(1,"The string cannot be converted to a date")});$.ig.extendNativePrototype(String.prototype,"toDecimal",function(provider){var result=+this;if($.ig.util.isNaN(result)){throw new $.ig.FormatException(1,"The string cannot be converted to a number")}return result});$.ig.extendNativePrototype(String.prototype,"toString1",function(provider){return this.toString()});String.isInstanceOfType=function(value){return typeof value=="string"};$.ig.extendNativePrototype(Number.prototype,"toDecimal",function(provider){return+this});$.ig.extendNativePrototype(Number.prototype,"toDouble",function(provider){return+this});$.ig.extendNativePrototype(Number.prototype,"toString1",function(provider){return this.toLocaleString(provider.name(),{useGrouping:false})});$.ig.extendNativePrototype(Date.prototype,"getType",function(provider){return $.ig.Date.prototype.$type});$.ig.extendNativePrototype(Date.prototype,"equals",function(other){return other instanceof Date&&+this===+other});$.ig.extendNativePrototype(Boolean.prototype,"getHashCode",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toByte",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toSByte",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toInt16",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toUInt16",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toInt32",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toUInt32",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toInt64",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toUInt64",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toSingle",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toDouble",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toDecimal",function(provider){return+this});$.ig.extendNativePrototype(Boolean.prototype,"toBoolean",function(provider){return!!+this});$.ig.extendNativePrototype(Boolean.prototype,"toString1",function(provider){return this.toString()});$.ig.extendNativePrototype(Boolean.prototype,"compareTo",function(other){return $.ig.util.boolCompare(this,other)});$.ig.extendNativePrototype(Number.prototype,"compareTo",function(other){return $.ig.util.compareSimple(+this,other)});$.ig.Single=Class.extend({},true);$.ig.Single.prototype.parseFloat=function(s){return parseFloat(s)};$.ig.Single.prototype.isInfinity=function(s){return s===Infinity||s===-Infinity};$.ig.Int32=Class.extend({$type:new $.ig.Type("Int32",$.ig.Object.prototype.$type,[$.ig.IComparable.prototype.$type,$.ig.IComparable$1.prototype.$type.specialize(-1),$.ig.IEquatable$1.prototype.$type.specialize(-1)])},true);$.ig.Int32.prototype.$type.initSelfReferences();$.ig.Double=Class.extend({$type:new $.ig.Type("Double",$.ig.Object.prototype.$type)},true);$.ig.Delegate=Class.extend({$type:new $.ig.Type("Delegate",$.ig.Object.prototype.$type)},true);$.ig.Delegate.prototype.combine=function(del1,del2){if(!del1){return del2}if(!del2){return del1}var ret=function(){del1.apply(null,arguments);return del2.apply(null,arguments)};ret.enumerate=function(arr){if(del1){if(del1.enumerate){del1.enumerate(arr)}else{arr.push(del1)}}if(del2){if(del2.enumerate){del2.enumerate(arr)}else{arr.push(del2)}}};return ret};$.ig.Delegate.prototype.remove=function(del1,del2){if(!del1){return null}if(!del2){return del1}var arr=[];var del=null;if(del1.enumerate){del1.enumerate(arr)}else{arr.push(del1)}for(var i=0;i<arr.length;i++){if(del2.original){if(arr[i].original==del2.original&&arr[i].target==del2.target){continue}}if(arr[i]==del2){continue}del=$.ig.Delegate.prototype.combine(del,arr[i])}return del};$.ig.ReflectionUtil=Class.extend({$type:new $.ig.Type("ReflectionUtil",$.ig.Object.prototype.$type)},true);$.ig.ReflectionUtil.prototype.getPropertyGetter=function(type,propertyName){if(typeof type.prototype[propertyName]==="function"){return function(instance){return type.prototype[propertyName].apply(instance,arguments)}}return function(instance){return instance[propertyName]}};$.ig.IEnumerable=Class.extend({$type:new $.ig.Type("IEnumerable",null)},true);$.ig.IEnumerator=Class.extend({$type:new $.ig.Type("IEnumerator",null)},true);$.ig.IEqualityComparer$1=Class.extend({$type:new $.ig.Type("IEqualityComparer",$.ig.Object.prototype.$type)},true);$.ig.IList=Class.extend({$type:new $.ig.Type("IList",null,[$.ig.IEnumerable.prototype.$type])},true);$.ig.IEnumerable$1=Class.extend({$type:new $.ig.Type("IEnumerable$1",null,[$.ig.IEnumerable.prototype.$type])},true);$.ig.ICollection$1=Class.extend({$type:new $.ig.Type("ICollection$1",null,[$.ig.IEnumerable$1.prototype.$type.specialize(0),$.ig.IEnumerable.prototype.$type])},true);$.ig.IList$1=Class.extend({$type:new $.ig.Type("IList$1",null,[$.ig.ICollection$1.prototype.$type.specialize(0),$.ig.IEnumerable$1.prototype.$type.specialize(0),$.ig.IEnumerable.prototype.$type])},true);$.ig.IEnumerator$1=Class.extend({$type:new $.ig.Type("IEnumerator$1",null,[$.ig.IEnumerator.prototype.$type])},true);$.ig.Error=Class.extend({init:function(initNumber){if(initNumber>0){switch(initNumber){case 1:this.init1.apply(this,arguments);break;case 2:this.init2.apply(this,arguments);break}return}this.__message=null;this.__innerException=null},init1:function(initNumber,message){this.__message=message},init2:function(initNumber,message,innerException){this.__message=message;this.__innerException=innerException},toString:function(){return this.message()},$type:new $.ig.Type("Error",$.ig.Object.prototype.$type)},true);$.ig.Error.prototype.message=function(){return this.__message};$.ig.Error.prototype.innerException=function(){return this.__innerException};$.ig.IDictionary=Class.extend({$type:new $.ig.Type("IDictionary",null)},true);$.ig.ValueEnumerator=Class.extend({init:function(dict){this._dict=dict;this._index=-1;this._count=0;this._values=[];for(var item in this._dict.proxy){if(this._dict.proxy.hasOwnProperty(item)){this._values[this._count]=this._dict.proxy[item];this._count++}}},current:function(){return this._values[this._index]},dispose:function(){},moveNext:function(){this._index++;return this._index<this._count},reset:function(){this._index=-1},getEnumerator:function(){this.reset();return this},$type:new $.ig.Type("ValueEnumerator",$.ig.Object.prototype.$type,[$.ig.IEnumerable.prototype.$type])},true);$.ig.KeyEnumerator=Class.extend({init:function(dict){this._dict=dict;this._index=-1;this._count=0;this._keys=[];for(var item in this._dict.proxy){if(this._dict.proxy.hasOwnProperty(item)){this._keys[this._count]=item;this._count++}}},current:function(){return this._keys[this._index]},moveNext:function(){this._index++;return this._index<this._count},reset:function(){this._index=-1},getEnumerator:function(){this.reset();return this},$type:new $.ig.Type("KeyEnumerator",$.ig.Object.prototype.$type,[$.ig.IEnumerable.prototype.$type])},true);$.ig.truncate=function(val){if(val>=0){return Math.floor(val)}else{return Math.ceil(val)}};$.ig.intDivide=function(int1,int2){var result=int1/int2;return $.ig.truncate(result)};$.ig.Nullable=Class.extend({getUnderlyingType:function(nullableType){if(nullableType.isGenericType!==undefined&&nullableType.isGenericType()&&!nullableType.isGenericTypeDefinition()&&$.ig.Nullable$1.prototype.$type.typeName()==nullableType.typeName()){return nullableType.genericTypeArguments()[0]}return null},$type:new $.ig.Type("Nullable",$.ig.Object.prototype.$type)},true);$.ig.Nullable$1=Class.extend({$t:null,init:function($t,value){this.$t=$t;this.$type=this.$type.specialize(this.$t);$.ig.Object.prototype.init.call(this);if(value!==undefined){this._value=value}},equals:function(value){return $.ig.util.nullableEquals(this,value)},getHashCode:function(){return this._value===null?0:this._value.getHashCode()},hasValue:function(){return this._value!==null},toString:function(){return this._value===null?"":this._value.toString()},_value:null,value:function(value){if(arguments.length===1){this._value=value;return value}else{return this._value}},getValueOrDefault:function(){if(this.hasValue()){return this._value}else{return this.getDefaultValue()}},getDefaultValue:function(){if($.ig.util.canAssign($.ig.Number.prototype.$type,this.$t)){return 0}else if($.ig.util.canAssign($.ig.Boolean.prototype.$type,this.$t)){return false}else if(this.$t.baseType==$.ig.ValueType.prototype.$type){return $.ig.util.createInstance(this.$t)}else{return null}},getValueOrDefault1:function(defaultValue){if(this.hasValue()){return this._value}else{return defaultValue}},preIncrement:function(){if(!this.hasValue()){return this}this._value++;return this},preDecrement:function(){if(!this.hasValue()){return this}this._value--;return this},postIncrement:function(){if(!this.hasValue()){return this}var originalValue=this._value;this._value++;return new $.ig.Nullable$1(this.$t,originalValue)},postDecrement:function(){if(!this.hasValue()){return this}var originalValue=this._value;this._value--;return new $.ig.Nullable$1(this.$t,originalValue)},isNullable:true,$type:new $.ig.Type("Nullable$1",$.ig.Object.prototype.$type)},true);$.ig.util.toNullable=function(t,value){if(value==null){return t._$nullNullable||(t._$nullNullable=new $.ig.Nullable$1(t,value))}else if(value.isNullable){return value}return new $.ig.Nullable$1(t,value)};$.ig.util.toLowerCase=function(c){return c.toLowerCase()};$.ig.util.isLower=function(c){return c===c.toLowerCase()};$.ig.util.isLetterOrDigit=function(c){var charCode=c.charCodeAt(0);if(97<=charCode&&charCode<=122){return true}if(65<=charCode&&charCode<=90){return true}if(48<=charCode&&charCode<=57){return true}if(charCode<=127){return false}return $.ig.unicode_hack("(\\p{L}|\\p{Nd})").test(c)};$.ig.util.isLetter=function(c){var charCode=c.charCodeAt(0);if(97<=charCode&&charCode<=122){return true}if(65<=charCode&&charCode<=90){return true}if(charCode<=127){return false}return $.ig.unicode_hack("\\p{L}").test(c)};$.ig.util.isDigit1=function(c,index){return $.ig.util.isDigit(c[index])};$.ig.util.isDigit=function(c){var charCode=c.charCodeAt(0);if(48<=charCode&&charCode<=57){return true}if(charCode<=127){return false}return $.ig.unicode_hack("\\p{Nd}").test(c)};$.ig.util.isNumber=function(c){var charCode=c.charCodeAt(0);if(48<=charCode&&charCode<=57){return true}if(charCode<=127){return false}return $.ig.unicode_hack("\\p{N}").test(c)};$.ig.util.toUpperCase=function(c){return c.toUpperCase()};$.ig.util.concat=function(v1,v2){if(v1==null){v1=""}else if(!!v1.isNullable){v1=v1.getValueOrDefault1("")}if(v2==null){v2=""}else if(!!v2.isNullable){v2=v2.getValueOrDefault1("")}return v1.toString()+v2.toString()};$.ig.util.nullableAdd=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return null}if(v2.isNullable&&!v2.hasValue()){return null}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return $.ig.util.toNullable($.ig.Number.prototype.$type,val1+val2)};$.ig.util.nullableSubtract=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return null}if(v2.isNullable&&!v2.hasValue()){return null}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return $.ig.util.toNullable($.ig.Number.prototype.$type,val1-val2)};$.ig.util.nullableMultiply=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return null}if(v2.isNullable&&!v2.hasValue()){return null}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return $.ig.util.toNullable($.ig.Number.prototype.$type,val1*val2)};$.ig.util.nullableDivide=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return null}if(v2.isNullable&&!v2.hasValue()){return null}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return $.ig.util.toNullable($.ig.Number.prototype.$type,val1/val2)};$.ig.util.nullableModulus=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return null}if(v2.isNullable&&!v2.hasValue()){return null}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return $.ig.util.toNullable($.ig.Number.prototype.$type,val1%val2)};$.ig.util.nullableGreaterThan=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return false}if(v2.isNullable&&!v2.hasValue()){return false}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.isNullable){val2=v2.value()}return val1>val2};$.ig.util.nullableGreaterThanOrEqual=function(v1,v2){if(v1.isNullable&&!v1.hasValue()){return false}if(v2.isNullable&&!v2.hasValue()){return false}var val1=v1;var val2=v2;if(v1.isNullable){val1=v1.value()}if(v2.i