@kusto/language-service-next
Version:
Azure Data Explorer (a.k.a Kusto) language service for javascript
7 lines • 1.02 MB
JavaScript
/**
* @version : 17.10.1 - Bridge.NET
* @author : Object.NET, Inc. http://bridge.net/
* @copyright : Copyright 2008-2019 Object.NET, Inc. http://object.net/
* @license : See license.txt and https://github.com/bridgedotnet/Bridge/blob/master/LICENSE.md
*/
(function(n){"use strict";var d,at,f,h,vt,k,yt,t;typeof module!="undefined"&&module.exports&&(n=global);d={global:n,isNode:Object.prototype.toString.call(typeof process!="undefined"?process:0)==="[object process]",emptyFn:function(){},identity:function(n){return n},Deconstruct:function(n){for(var i=Array.prototype.slice.call(arguments,1),t=0;t<i.length;t++)i[t].v=t==7?n.Rest:n["Item"+(t+1)]},toString:function(n){var t,i;if(n==null)throw new System.ArgumentNullException;return(t=Bridge.$toStringGuard[Bridge.$toStringGuard.length-1],n.toString===Object.prototype.toString||t&&t===n)?Bridge.Reflection.getTypeFullName(n):(Bridge.$toStringGuard.push(n),i=n.toString(),Bridge.$toStringGuard.pop(),i)},geti:function(n,t,i){if(n[t]!==undefined)return t;if(i&&n[i]!=undefined)return i;var r=i||t,u=r.lastIndexOf("$");return/\$\d+$/g.test(r)&&(u=r.lastIndexOf("$",u-1)),r.substr(u+1)},box:function(n,t,i,r){return n&&n.$boxed?n:n==null?n:(n.$clone&&(n=n.$clone()),{$boxed:!0,fn:{toString:i,getHashCode:r},v:n,type:t,constructor:t,getHashCode:function(){return this.fn.getHashCode?this.fn.getHashCode(this.v):Bridge.getHashCode(this.v)},equals:function(n){var t,i;return this===n?!0:(t=this.equals,this.equals=null,i=Bridge.equals(this.v,n),this.equals=t,i)},valueOf:function(){return this.v},toString:function(){return this.fn.toString?this.fn.toString(this.v):this.v.toString()}})},unbox:function(n,t){var r,f,u,e,i;if(t&&Bridge.isFunction(t)&&(r=t,t=!1),n&&n.$boxed){if(f=n.v,u=n.type,r&&r.$nullable&&(r=r.$nullableType),r&&r.$kind==="enum"&&(r=System.Enum.getUnderlyingType(r)),u.$nullable&&(u=u.$nullableType),u.$kind==="enum"&&(u=System.Enum.getUnderlyingType(u)),r&&r!==u&&!Bridge.isObject(r))throw new System.InvalidCastException.$ctor1("Specified cast is not valid.");return!t&&f&&f.$clone&&(f=f.$clone()),f}if(Bridge.isArray(n))for(e=0;e<n.length;e++)i=n[e],i&&i.$boxed?(i=i.v,i.$clone&&(i=i.$clone())):!t&&i&&i.$clone&&(i=i.$clone()),n[e]=i;return n&&!t&&n.$clone&&(n=n.$clone()),n},virtualc:function(n){return Bridge.virtual(n,!0)},virtual:function(n,t){var i=Bridge.unroll(n),r;return i&&Bridge.isFunction(i)||(r=Bridge.Class.staticInitAllow,i=t?Bridge.define(n):Bridge.definei(n),Bridge.Class.staticInitAllow=!0,i.$staticInit&&i.$staticInit(),Bridge.Class.staticInitAllow=r),i},safe:function(n){try{return n()}catch(t){}return!1},literal:function(n,t){return t.$getType=function(){return n},t},isJSObject:function(n){return Object.prototype.toString.call(n)==="[object Object]"},isPlainObject:function(n){if(typeof n=="object"&&n!==null){if(typeof Object.getPrototypeOf=="function"){var t=Object.getPrototypeOf(n);return t===Object.prototype||t===null}return Object.prototype.toString.call(n)==="[object Object]"}return!1},toPlain:function(n){var i,t,r,u,f;if(!n||Bridge.isPlainObject(n)||typeof n!="object")return n;if(typeof n.toJSON=="function")return n.toJSON();if(Bridge.isArray(n)){for(i=[],t=0;t<n.length;t++)i.push(Bridge.toPlain(n[t]));return i}r={};for(f in n)u=n[f],Bridge.isFunction(u)||(r[f]=u);return r},ref:function(n,t){Bridge.isArray(t)&&(t=System.Array.toIndex(n,t));var i={};return Object.defineProperty(i,"v",{get:function(){return t==null?n:n[t]},set:function(i){t==null&&(i&&i.$clone?i.$clone(n):n=i);n[t]=i}}),i},ensureBaseProperty:function(n,t,i){var f=Bridge.getType(n),s=f.$descriptors||[],o,u,r,e;if(n.$propMap=n.$propMap||{},n.$propMap[t])return n;if((!f.$descriptors||f.$descriptors.length===0)&&i)r={},e="$"+i+"$"+t,r.get=function(){return n[t]},r.set=function(i){n[t]=i},Bridge.property(n,e,r,!1,f,!0);else for(o=0;o<s.length;o++)u=s[o],u.name===t&&(r={},e="$"+Bridge.getTypeAlias(u.cls)+"$"+t,u.get&&(r.get=u.get),u.set&&(r.set=u.set),Bridge.property(n,e,r,!1,f,!0));return n.$propMap[t]=!0,n},property:function(n,t,i,r,u,f){var e={enumerable:f?!1:!0,configurable:!0},o;return i&&i.get&&(e.get=i.get),i&&i.set&&(e.set=i.set),i&&(i.get||i.set)||(o=Bridge.getTypeAlias(u)+"$"+t,u.$init=u.$init||{},r&&(u.$init[o]=i),function(n,t,i,r){n.get=function(){var n=this.$init[i];return n===undefined?r:n};n.set=function(n){this.$init[i]=n}}(e,n,o,i)),Object.defineProperty(n,t,e),e},event:function(n,t,i,r){n[t]=i;var s=t.charAt(0)==="$",f=s?t.slice(1):t,e="add"+f,o="remove"+f,u=t.lastIndexOf("$"),h=u>0&&t.length-u-1>0&&!isNaN(parseInt(t.substr(u+1)));h&&(u=t.substring(0,u-1).lastIndexOf("$"));u>0&&u!==t.length-1&&(e=t.substring(0,u)+"add"+t.substr(u+1),o=t.substring(0,u)+"remove"+t.substr(u+1));n[e]=function(n,t,i){return i?function(i){t[n]=Bridge.fn.combine(t[n],i)}:function(t){this[n]=Bridge.fn.combine(this[n],t)}}(t,n,r);n[o]=function(n,t,i){return i?function(i){t[n]=Bridge.fn.remove(t[n],i)}:function(t){this[n]=Bridge.fn.remove(this[n],t)}}(t,n,r)},createInstance:function(n,t,i){var r,e,u,f,o;if(Bridge.isArray(t)&&(i=t,t=!1),n===System.Decimal)return System.Decimal.Zero;if(n===System.Int64)return System.Int64.Zero;if(n===System.UInt64)return System.UInt64.Zero;if(n===System.Double||n===System.Single||n===System.Byte||n===System.SByte||n===System.Int16||n===System.UInt16||n===System.Int32||n===System.UInt32||n===Bridge.Int)return 0;if(typeof n.createInstance=="function")return n.createInstance();else if(typeof n.getDefaultValue=="function")return n.getDefaultValue();else if(n===Boolean||n===System.Boolean)return!1;else if(n===System.DateTime)return System.DateTime.getDefaultValue();else if(n===Date)return new Date;else if(n===Number)return 0;else if(n===String||n===System.String)return"";else if(n&&n.$literal)return n.ctor();else if(i&&i.length>0)return Bridge.Reflection.applyConstructor(n,i);if(n.$kind==="interface")throw new System.MissingMethodException.$ctor1("Default constructor not found for type "+Bridge.getTypeName(n));if(r=Bridge.Reflection.getMembers(n,1,54),r.length>0){for(e=r.filter(function(n){return!n.isSynthetic&&!n.sm}),u=0;u<e.length;u++)if(f=e[u],o=(f.pi||[]).length===0,o){if(t||f.a===2)return Bridge.Reflection.invokeCI(f,[]);throw new System.MissingMethodException.$ctor1("Default constructor not found for type "+Bridge.getTypeName(n));}if(n.$$name&&!(r.length==1&&r[0].isSynthetic))throw new System.MissingMethodException.$ctor1("Default constructor not found for type "+Bridge.getTypeName(n));}return new n},clone:function(n){if(n==null)return n;if(Bridge.isArray(n))return System.Array.clone(n);if(Bridge.isString(n))return n;var t;return Bridge.isFunction(Bridge.getProperty(n,t="System$ICloneable$clone"))?n[t]():Bridge.is(n,System.ICloneable)?n.clone():Bridge.isFunction(n.$clone)?n.$clone():null},copy:function(n,t,i,r){typeof i=="string"&&(i=i.split(/[,;\s]+/));for(var u,f=0,e=i?i.length:0;f<e;f++)u=i[f],(r!==!0||n[u]==undefined)&&(n[u]=Bridge.is(t[u],System.ICloneable)?Bridge.clone(t[u]):t[u]);return n},get:function(n){return n&&n.$staticInit!==null&&n.$staticInit(),n},ns:function(n,t){var r=n.split("."),i=0;for(t||(t=Bridge.global),i=0;i<r.length;i++)typeof t[r[i]]=="undefined"&&(t[r[i]]={}),t=t[r[i]];return t},ready:function(n,t){var i=function(){t?n.apply(t):n()};if(typeof Bridge.global.jQuery!="undefined")Bridge.global.jQuery(i);else if(typeof Bridge.global.document=="undefined"||Bridge.global.document.readyState==="complete"||Bridge.global.document.readyState==="loaded"||Bridge.global.document.readyState==="interactive")i();else Bridge.on("DOMContentLoaded",Bridge.global.document,i)},on:function(n,t,i,r){var u=function(n){var t=i.apply(r||this,arguments);return t===!1&&(n.stopPropagation(),n.preventDefault()),t},f=function(){var n=i.call(r||t,Bridge.global.event);return n===!1&&(Bridge.global.event.returnValue=!1,Bridge.global.event.cancelBubble=!0),n};t.addEventListener?t.addEventListener(n,u,!1):t.attachEvent("on"+n,f)},addHash:function(n,t,i){if(isNaN(t)&&(t=17),isNaN(i)&&(i=23),Bridge.isArray(n)){for(var r=0;r<n.length;r++)t=t+((t*i|0)+(n[r]==null?0:Bridge.getHashCode(n[r])))|0;return t}return t+((t*i|0)+(n==null?0:Bridge.getHashCode(n)))|0},getHashCode:function(n,t,i){var o,s,u,r,f,c,e;if(n&&n.$boxed&&n.type.getHashCode)return n.type.getHashCode(Bridge.unbox(n,!0));if(n=Bridge.unbox(n,!0),Bridge.isEmpty(n,!0)){if(t)return 0;throw new System.InvalidOperationException.$ctor1("HashCode cannot be calculated for empty value");}if(n.getHashCode&&Bridge.isFunction(n.getHashCode)&&!n.__insideHashCode&&n.getHashCode.length===0)return n.__insideHashCode=!0,o=n.getHashCode(),delete n.__insideHashCode,o;if(Bridge.isBoolean(n))return n?1:0;if(Bridge.isDate(n))return s=n.ticks!==undefined?n.ticks:System.DateTime.getTicks(n),s.toNumber()&4294967295;if(n===Number.POSITIVE_INFINITY)return 2146435072;if(n===Number.NEGATIVE_INFINITY)return 4293918720;if(Bridge.isNumber(n)){if(Math.floor(n)===n)return n;n=n.toExponential()}if(Bridge.isString(n))if(Math.imul){for(u=0,r=0;u<n.length;u++)r=Math.imul(31,r)+n.charCodeAt(u)|0;return r}else{var r=0,h=n.length,u=0;if(h>0)while(u<h)r=(r<<5)-r+n.charCodeAt(u++)|0;return r}if(n.$$hashCode)return n.$$hashCode;if(i!==!1&&n.hasOwnProperty("Item1")&&Bridge.isPlainObject(n)&&(i=!0),i&&typeof n=="object"){f=0;for(e in n)n.hasOwnProperty(e)&&(c=Bridge.isEmpty(n[e],!0)?0:Bridge.getHashCode(n[e]),f=29*f+c);if(f!==0)return n.$$hashCode=f,f}return n.$$hashCode=Math.random()*4294967296|0,n.$$hashCode},getDefaultValue:function(n){if(n==null)throw new System.ArgumentNullException.$ctor1("type");else if(n.getDefaultValue&&n.getDefaultValue.length===0)return n.getDefaultValue();else if(Bridge.Reflection.isEnum(n))return System.Enum.parse(n,0);else if(n===Boolean||n===System.Boolean)return!1;else if(n===System.DateTime)return System.DateTime.getDefaultValue();else if(n===Date)return new Date;else if(n===Number)return 0;return null},$$aliasCache:[],getTypeAlias:function(n){var t,i,f,r,u,e;if(n.$$alias)return n.$$alias;if(t=n.$$name||typeof n=="function"?n:Bridge.getType(n),t.$$alias)return t.$$alias;if(i=Bridge.$$aliasCache[t],i)return i;if(t.$isArray)return f=Bridge.getTypeAlias(t.$elementType),i=f+"$Array"+(t.$rank>1?"$"+t.$rank:""),t.$$name?t.$$alias=i:Bridge.$$aliasCache[t]=i,i;if(r=n.$$name||Bridge.getTypeName(n),t.$typeArguments&&!t.$isGenericTypeDefinition)for(r=t.$genericTypeDefinition.$$name,u=0;u<t.$typeArguments.length;u++)e=t.$typeArguments[u],r+="$"+Bridge.getTypeAlias(e);return i=r.replace(/[\.\(\)\,\+]/g,"$"),t.$module&&(i=t.$module+"$"+i),t.$$name?t.$$alias=i:Bridge.$$aliasCache[t]=i,i},getTypeName:function(n){return Bridge.Reflection.getTypeFullName(n)},hasValue:function(n){return Bridge.unbox(n,!0)!=null},hasValue$1:function(){if(arguments.length===0)return!1;var n=0;for(n;n<arguments.length;n++)if(Bridge.unbox(arguments[n],!0)==null)return!1;return!0},isObject:function(n){return n===Object||n===System.Object},is:function(n,t,i,r){var f,u,e,o,s;if(n==null)return!!r;if(t===System.Object&&(t=Object),f=typeof t,f==="boolean")return t;if(n.$boxed){if(n.type.$kind==="enum"&&(n.type.prototype.$utype===t||t===System.Enum||t===System.IFormattable||t===System.IComparable))return!0;else if(!Bridge.Reflection.isInterface(t)&&!t.$nullable)return n.type===t||Bridge.isObject(t)||t===System.ValueType&&Bridge.Reflection.isValueType(n.type);if(i!==!0&&t.$is)return t.$is(Bridge.unbox(n,!0));if(Bridge.Reflection.isAssignableFrom(t,n.type))return!0;n=Bridge.unbox(n,!0)}if(u=n.constructor===Object&&n.$getType?n.$getType():Bridge.Reflection.convertType(n.constructor),t.constructor===Function&&n instanceof t||u===t||Bridge.isObject(t))return!0;if(e=u.$kind||u.$$inherits,o=t.$kind,e||o){if(s=t.$isInterface,s){if(e)return u.$isArrayEnumerator?System.Array.is(n,t):t.isAssignableFrom?t.isAssignableFrom(u):Bridge.Reflection.getInterfaces(u).indexOf(t)>=0;if(Bridge.isArray(n,u))return System.Array.is(n,t)}return i!==!0&&t.$is?t.$is(n):t.$literal&&Bridge.isPlainObject(n)?n.$getType?Bridge.Reflection.isAssignableFrom(t,n.$getType()):!0:!1}if(f==="string"&&(t=Bridge.unroll(t)),f==="function"&&Bridge.getType(n).prototype instanceof t)return!0;if(i!==!0){if(typeof t.$is=="function")return t.$is(n);if(typeof t.isAssignableFrom=="function")return t.isAssignableFrom(Bridge.getType(n))}return Bridge.isArray(n)?System.Array.is(n,t):f==="object"&&(u===t||n instanceof t)},as:function(n,t,i){return Bridge.is(n,t,!1,i)?n!=null&&n.$boxed&&t!==Object&&t!==System.Object?n.v:n:null},cast:function(n,t,i){if(n==null)return n;var r=Bridge.is(n,t,!1,i)?n:null;if(r===null)throw new System.InvalidCastException.$ctor1("Unable to cast type "+(n?Bridge.getTypeName(n):"'null'")+" to type "+Bridge.getTypeName(t));return n.$boxed&&t!==Object&&t!==System.Object?n.v:r},apply:function(n,t,i){for(var f=Bridge.getPropertyNames(t,!0),r,u=0;u<f.length;u++)r=f[u],typeof n[r]=="function"&&typeof t[r]!="function"?n[r](t[r]):n[r]=t[r];return i&&i.call(n,n),n},copyProperties:function(n,t){for(var u=Bridge.getPropertyNames(t,!1),r=0;r<u.length;r++){var i=u[r],e=t.hasOwnProperty(i),f=i.split("$").length;e&&(f===1||f===2&&i.match("$d+$"))&&(n[i]=t[i])}return n},merge:function(n,t,i,r){var u,f,p,w,o,y,h,a,e,c,l,s,v;if(n==null)return t;if(n instanceof System.Decimal&&typeof t=="number")return new System.Decimal(t);if(n instanceof System.Int64&&Bridge.isNumber(t))return new System.Int64(t);if(n instanceof System.UInt64&&Bridge.isNumber(t))return new System.UInt64(t);if(n instanceof Boolean||Bridge.isBoolean(n)||typeof n=="number"||n instanceof String||Bridge.isString(n)||n instanceof Function||Bridge.isFunction(n)||n instanceof Date||Bridge.isDate(n)||Bridge.getType(n).$number)return t;if(Bridge.isArray(t)&&Bridge.isFunction(n.add||n.push))for(w=Bridge.isArray(n)?n.push:n.add,e=0;e<t.length;e++)o=t[e],Bridge.isArray(o)||(o=[typeof r=="undefined"?o:Bridge.merge(r(),o)]),w.apply(n,o);else if(y=Bridge.getType(n),h=y&&y.$descriptors,t)for(u in t){if(f=t[u],a=null,h)for(e=h.length-1;e>=0;e--)if(h[e].name===u){a=h[e];break}if(a!=null)a.set?n[u]=Bridge.merge(n[u],f):Bridge.merge(n[u],f);else if(typeof n[u]=="function")u.match(/^\s*get[A-Z]/)?Bridge.merge(n[u](),f):n[u](f);else if(c="set"+u.charAt(0).toUpperCase()+u.slice(1),l="set"+u,typeof n[c]=="function"&&typeof f!="function")s="g"+c.slice(1),typeof n[s]=="function"?n[c](Bridge.merge(n[s](),f)):n[c](f);else if(typeof n[l]=="function"&&typeof f!="function")s="g"+l.slice(1),typeof n[s]=="function"?n[l](Bridge.merge(n[s](),f)):n[l](f);else if(f&&f.constructor===Object&&n[u])p=n[u],Bridge.merge(p,f);else{if(v=Bridge.isNumber(t),n[u]instanceof System.Decimal&&v)return new System.Decimal(t);if(n[u]instanceof System.Int64&&v)return new System.Int64(t);if(n[u]instanceof System.UInt64&&v)return new System.UInt64(t);n[u]=f}}else return i&&i.call(n,n),t;return i&&i.call(n,n),n},getEnumerator:function(n,t,i){if(typeof n=="string"&&(n=System.String.toCharArray(n)),arguments.length===2&&Bridge.isFunction(t)&&(i=t,t=null),t&&n&&n[t])return n[t].call(n);if(!i&&n&&n.GetEnumerator)return n.GetEnumerator();var r;if(i&&Bridge.isFunction(Bridge.getProperty(n,r="System$Collections$Generic$IEnumerable$1$"+Bridge.getTypeAlias(i)+"$GetEnumerator"))||i&&Bridge.isFunction(Bridge.getProperty(n,r="System$Collections$Generic$IEnumerable$1$GetEnumerator"))||Bridge.isFunction(Bridge.getProperty(n,r="System$Collections$IEnumerable$GetEnumerator")))return n[r]();if(i&&n&&n.GetEnumerator)return n.GetEnumerator();if(Object.prototype.toString.call(n)==="[object Array]"||n&&Bridge.isDefined(n.length))return new Bridge.ArrayEnumerator(n,i);throw new System.InvalidOperationException.$ctor1("Cannot create Enumerator.");},getPropertyNames:function(n,t){var i=[];for(var r in n)(t||typeof n[r]!="function")&&i.push(r);return i},getProperty:function(n,t){return Bridge.isHtmlAttributeCollection(n)&&!this.isValidHtmlAttributeName(t)?undefined:n[t]},isValidHtmlAttributeName:function(n){if(!n||!n.length)return!1;var t=/^[a-zA-Z_][\w\-]*$/;return t.test(n)},isHtmlAttributeCollection:function(n){return typeof n!="undefined"&&Object.prototype.toString.call(n)==="[object NamedNodeMap]"},isDefined:function(n,t){return typeof n!="undefined"&&(t?n!==null:!0)},isEmpty:function(n,t){return typeof n=="undefined"||n===null||(t?!1:n==="")||(!t&&Bridge.isArray(n)?n.length===0:!1)},toArray:function(n){var t,r,u,i=[];if(Bridge.isArray(n))for(t=0,u=n.length;t<u;++t)i.push(n[t]);else for(t=Bridge.getEnumerator(n);t.moveNext();)r=t.Current,i.push(r);return i},toList:function(n,t){return new(System.Collections.Generic.List$1(t||System.Object).$ctor1)(n)},arrayTypes:[n.Array,n.Uint8Array,n.Int8Array,n.Int16Array,n.Uint16Array,n.Int32Array,n.Uint32Array,n.Float32Array,n.Float64Array,n.Uint8ClampedArray],isArray:function(n,t){var i=t||(n!=null?n.constructor:null);return i?Bridge.arrayTypes.indexOf(i)>=0||i.$isArray||Array.isArray(n):!1},isFunction:function(n){return typeof n=="function"},isDate:function(n){return n instanceof Date||Object.prototype.toString.call(n)==="[object Date]"},isNull:function(n){return n===null||n===undefined},isBoolean:function(n){return typeof n=="boolean"},isNumber:function(n){return typeof n=="number"&&isFinite(n)},isString:function(n){return typeof n=="string"},unroll:function(n,t){var i,u;if(Bridge.isArray(n)){for(i=0;i<n.length;i++)u=n[i],Bridge.isString(u)&&(n[i]=Bridge.unroll(u,t));return}var f=n.split("."),r=(t||Bridge.global)[f[0]],i=1;for(i;i<f.length;i++){if(!r)return null;r=r[f[i]]}return r},referenceEquals:function(n,t){return Bridge.hasValue(n)?n===t:!Bridge.hasValue(t)},staticEquals:function(n,t){return Bridge.hasValue(n)?Bridge.hasValue(t)?Bridge.equals(n,t):!1:!Bridge.hasValue(t)},equals:function(n,t){var i,r,u;return n==null&&t==null?!0:(i=Bridge.$equalsGuard[Bridge.$equalsGuard.length-1],i&&i.a===n&&i.b===t)?n===t:(Bridge.$equalsGuard.push({a:n,b:t}),r=function(n,t){if(n&&n.$boxed&&n.type.equals&&n.type.equals.length===2)return n.type.equals(n,t);if(t&&t.$boxed&&t.type.equals&&t.type.equals.length===2)return t.type.equals(t,n);if(n&&Bridge.isFunction(n.equals)&&n.equals.length===1)return n.equals(t);if(t&&Bridge.isFunction(t.equals)&&t.equals.length===1)return t.equals(n);if(Bridge.isFunction(n)&&Bridge.isFunction(t))return Bridge.fn.equals.call(n,t);else if(Bridge.isDate(n)&&Bridge.isDate(t))return n.kind!==undefined&&n.ticks!==undefined&&t.kind!==undefined&&t.ticks!==undefined?n.ticks.equals(t.ticks):n.valueOf()===t.valueOf();else if(Bridge.isNull(n)&&Bridge.isNull(t))return!0;else if(Bridge.isNull(n)!==Bridge.isNull(t))return!1;var i=n===t;return!i&&typeof n=="object"&&typeof t=="object"&&n!==null&&t!==null&&n.$kind==="struct"&&t.$kind==="struct"&&n.$$name===t.$$name?Bridge.getHashCode(n)===Bridge.getHashCode(t)&&Bridge.objectEquals(n,t):!i&&n&&t&&n.hasOwnProperty("Item1")&&Bridge.isPlainObject(n)&&t.hasOwnProperty("Item1")&&Bridge.isPlainObject(t)?Bridge.objectEquals(n,t,!0):i},u=r(n,t),Bridge.$equalsGuard.pop(),u)},objectEquals:function(n,t,i){Bridge.$$leftChain=[];Bridge.$$rightChain=[];var r=Bridge.deepEquals(n,t,i);return delete Bridge.$$leftChain,delete Bridge.$$rightChain,r},deepEquals:function(n,t,i){if(typeof n=="object"&&typeof t=="object"){if(n===t)return!0;if(Bridge.$$leftChain.indexOf(n)>-1||Bridge.$$rightChain.indexOf(t)>-1)return!1;for(var r in t)if(t.hasOwnProperty(r)!==n.hasOwnProperty(r))return!1;else if(typeof t[r]!=typeof n[r])return!1;for(r in n){if(t.hasOwnProperty(r)!==n.hasOwnProperty(r))return!1;else if(typeof n[r]!=typeof t[r])return!1;if(n[r]===t[r])continue;else if(typeof n[r]!="object"||i){if(!Bridge.equals(n[r],t[r]))return!1}else{if(Bridge.$$leftChain.push(n),Bridge.$$rightChain.push(t),!Bridge.deepEquals(n[r],t[r]))return!1;Bridge.$$leftChain.pop();Bridge.$$rightChain.pop()}}return!0}else return Bridge.equals(n,t)},numberCompare:function(n,t){return n<t?-1:n>t?1:n==t?0:isNaN(n)?isNaN(t)?0:-1:1},compare:function(n,t,i,r){if(n&&n.$boxed&&(n=Bridge.unbox(n,!0)),t&&t.$boxed&&(t=Bridge.unbox(t,!0)),typeof n=="number"&&typeof t=="number")return Bridge.numberCompare(n,t);if(Bridge.isDefined(n,!0)){if(Bridge.isString(n))return System.String.compare(n,t);else if(Bridge.isNumber(n)||Bridge.isBoolean(n))return n<t?-1:n>t?1:0;else if(Bridge.isDate(n))return n.kind!==undefined&&n.ticks!==undefined?Bridge.compare(System.DateTime.getTicks(n),System.DateTime.getTicks(t)):Bridge.compare(n.valueOf(),t.valueOf())}else{if(i)return 0;throw new System.NullReferenceException;}var u;if(r&&Bridge.isFunction(Bridge.getProperty(n,u="System$IComparable$1$"+Bridge.getTypeAlias(r)+"$compareTo"))||r&&Bridge.isFunction(Bridge.getProperty(n,u="System$IComparable$1$compareTo"))||Bridge.isFunction(Bridge.getProperty(n,u="System$IComparable$compareTo")))return n[u](t);if(Bridge.isFunction(n.compareTo))return n.compareTo(t);if(r&&Bridge.isFunction(Bridge.getProperty(t,u="System$IComparable$1$"+Bridge.getTypeAlias(r)+"$compareTo"))||r&&Bridge.isFunction(Bridge.getProperty(t,u="System$IComparable$1$compareTo"))||Bridge.isFunction(Bridge.getProperty(t,u="System$IComparable$compareTo")))return-t[u](n);if(Bridge.isFunction(t.compareTo))return-t.compareTo(n);if(i)return 0;throw new System.Exception("Cannot compare items");},equalsT:function(n,t,i){if(n&&n.$boxed&&n.type.equalsT&&n.type.equalsT.length===2)return n.type.equalsT(n,t);if(t&&t.$boxed&&t.type.equalsT&&t.type.equalsT.length===2)return t.type.equalsT(t,n);if(Bridge.isDefined(n,!0)){if(Bridge.isNumber(n)||Bridge.isString(n)||Bridge.isBoolean(n))return n===t;else if(Bridge.isDate(n))return n.kind!==undefined&&n.ticks!==undefined?System.DateTime.getTicks(n).equals(System.DateTime.getTicks(t)):n.valueOf()===t.valueOf()}else throw new System.NullReferenceException;var r;return i&&n!=null&&Bridge.isFunction(Bridge.getProperty(n,r="System$IEquatable$1$"+Bridge.getTypeAlias(i)+"$equalsT"))?n[r](t):i&&t!=null&&Bridge.isFunction(Bridge.getProperty(t,r="System$IEquatable$1$"+Bridge.getTypeAlias(i)+"$equalsT"))?t[r](n):Bridge.isFunction(n)&&Bridge.isFunction(t)?Bridge.fn.equals.call(n,t):n.equalsT?n.equalsT(t):t.equalsT(n)},format:function(n,t,i){if(n&&n.$boxed)if(n.type.$kind==="enum")return System.Enum.format(n.type,n.v,t);else if(n.type===System.Char)return System.Char.format(Bridge.unbox(n,!0),t,i);else if(n.type.format)return n.type.format(Bridge.unbox(n,!0),t,i);if(Bridge.isNumber(n))return Bridge.Int.format(n,t,i);else if(Bridge.isDate(n))return System.DateTime.format(n,t,i);var r;return Bridge.isFunction(Bridge.getProperty(n,r="System$IFormattable$format"))?n[r](t,i):n.format(t,i)},getType:function(n,t){var r,i;if(n&&n.$boxed)return n.type;if(n==null)throw new System.NullReferenceException.$ctor1("instance is null");if(t)return r=Bridge.getType(n),Bridge.Reflection.isAssignableFrom(t,r)?r:t;if(typeof n=="number")return!isNaN(n)&&isFinite(n)&&Math.floor(n,0)===n?System.Int32:System.Double;if(n.$type)return n.$type;if(n.$getType)return n.$getType();i=null;try{i=n.constructor}catch(o){i=Object}if(i===Object){var f=n.toString(),u=/\[object (.{1,})\]/.exec(f),e=u&&u.length>1?u[1]:"Object";e!="Object"&&(i=n)}return Bridge.Reflection.convertType(i)},isLower:function(n){var t=String.fromCharCode(n);return t===t.toLowerCase()&&t!==t.toUpperCase()},isUpper:function(n){var t=String.fromCharCode(n);return t!==t.toLowerCase()&&t===t.toUpperCase()},coalesce:function(n,t){return Bridge.hasValue(n)?n:t},fn:{equals:function(n){if(this===n)return!0;if(n==null||this.constructor!==n.constructor)return!1;if(this.$invocationList&&n.$invocationList){if(this.$invocationList.length!==n.$invocationList.length)return!1;for(var t=0;t<this.$invocationList.length;t++)if(this.$invocationList[t]!==n.$invocationList[t])return!1;return!0}return this.equals&&this.equals===n.equals&&this.$method&&this.$method===n.$method&&this.$scope&&this.$scope===n.$scope},call:function(n,t){var i=Array.prototype.slice.call(arguments,2);return n=n||Bridge.global,n[t].apply(n,i)},makeFn:function(n,t){switch(t){case 0:return function(){return n.apply(this,arguments)};case 1:return function(t){return n.apply(this,arguments)};case 2:return function(t,i){return n.apply(this,arguments)};case 3:return function(t,i,r){return n.apply(this,arguments)};case 4:return function(t,i,r,u){return n.apply(this,arguments)};case 5:return function(t,i,r,u,f){return n.apply(this,arguments)};case 6:return function(t,i,r,u,f,e){return n.apply(this,arguments)};case 7:return function(t,i,r,u,f,e,o){return n.apply(this,arguments)};case 8:return function(t,i,r,u,f,e,o,s){return n.apply(this,arguments)};case 9:return function(t,i,r,u,f,e,o,s,h){return n.apply(this,arguments)};case 10:return function(t,i,r,u,f,e,o,s,h,c){return n.apply(this,arguments)};case 11:return function(t,i,r,u,f,e,o,s,h,c,l){return n.apply(this,arguments)};case 12:return function(t,i,r,u,f,e,o,s,h,c,l,a){return n.apply(this,arguments)};case 13:return function(t,i,r,u,f,e,o,s,h,c,l,a,v){return n.apply(this,arguments)};case 14:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y){return n.apply(this,arguments)};case 15:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p){return n.apply(this,arguments)};case 16:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w){return n.apply(this,arguments)};case 17:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b){return n.apply(this,arguments)};case 18:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k){return n.apply(this,arguments)};case 19:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k,d){return n.apply(this,arguments)};default:return function(t,i,r,u,f,e,o,s,h,c,l,a,v,y,p,w,b,k,d,g){return n.apply(this,arguments)}}},cacheBind:function(n,t,i,r){return Bridge.fn.bind(n,t,i,r,!0)},bind:function(n,t,i,r,u){var e,f;if(t&&t.$method===t&&t.$scope===n)return t;if(n&&u&&n.$$bind)for(e=0;e<n.$$bind.length;e++)if(n.$$bind[e].$method===t)return n.$$bind[e];return f=arguments.length===2?Bridge.fn.makeFn(function(){Bridge.caller.unshift(this);var i=null;try{i=t.apply(n,arguments)}finally{Bridge.caller.shift(this)}return i},t.length):Bridge.fn.makeFn(function(){var u=i||arguments,f;r===!0?(u=Array.prototype.slice.call(arguments,0),u=u.concat(i)):typeof r=="number"&&(u=Array.prototype.slice.call(arguments,0),r===0?u.unshift.apply(u,i):r<u.length?u.splice.apply(u,[r,0].concat(i)):u.push.apply(u,i));Bridge.caller.unshift(this);f=null;try{f=t.apply(n,u)}finally{Bridge.caller.shift(this)}return f},t.length),n&&u&&(n.$$bind=n.$$bind||[],n.$$bind.push(f)),f.$method=t,f.$scope=n,f.equals=Bridge.fn.equals,f},bindScope:function(n,t){var i=Bridge.fn.makeFn(function(){var i=Array.prototype.slice.call(arguments,0),r;i.unshift.apply(i,[n]);Bridge.caller.unshift(this);r=null;try{r=t.apply(n,i)}finally{Bridge.caller.shift(this)}return r},t.length);return i.$method=t,i.$scope=n,i.equals=Bridge.fn.equals,i},$build:function(n){if(!n||n.length===0)return null;var t=function(){for(var i=null,r,t=0;t<n.length;t++)r=n[t],i=r.apply(null,arguments);return i};return t.$invocationList=n?Array.prototype.slice.call(n,0):[],n=t.$invocationList.slice(),t},combine:function(n,t){var i,r,u;return!n||!t?(i=n||t,i?Bridge.fn.$build([i]):i):(r=n.$invocationList?n.$invocationList:[n],u=t.$invocationList?t.$invocationList:[t],Bridge.fn.$build(r.concat(u)))},getInvocationList:function(n){if(n==null)throw new System.ArgumentNullException;return n.$invocationList||(n.$invocationList=[n]),n.$invocationList},remove:function(n,t){if(!n||!t)return n||null;for(var i=n.$invocationList?n.$invocationList.slice(0):[n],r=t.$invocationList?t.$invocationList:[t],e=[],o,f=-1,u=i.length-r.length;u>=0;u--)if(Bridge.fn.equalInvocationLists(i,r,u,r.length))return i.length-r.length==0?null:i.length-r.length==1?i[u!=0?0:i.length-1]:(i.splice(u,r.length),Bridge.fn.$build(i));return n},equalInvocationLists:function(n,t,i,r){for(var u=0;u<r;u=u+1|0)if(!Bridge.equals(n[System.Array.index(i+u|0,n)],t[System.Array.index(u,t)]))return!1;return!0}},sleep:function(n,t){if(Bridge.hasValue(t)&&(n=t.getTotalMilliseconds()),isNaN(n)||n<-1||n>2147483647)throw new System.ArgumentOutOfRangeException.$ctor4("timeout","Number must be either non-negative and less than or equal to Int32.MaxValue or -1");n==-1&&(n=2147483647);for(var i=(new Date).getTime();(new Date).getTime()-i<n;)if((new Date).getTime()-i>2147483647)break},getMetadata:function(n){return n.$getMetadata?n.$getMetadata():n.$metadata},loadModule:function(n,t){var f=n.amd,i=n.cjs,h=n.fn,s=new System.Threading.Tasks.TaskCompletionSource,e=Bridge.global[h||"require"],o,u,r;if(f&&f.length>0)e(f,function(){var r=Array.prototype.slice.call(arguments,0),n;if(i&&i.length>0)for(n=0;n<i.length;n++)r.push(e(i[n]));t.apply(Bridge.global,r);s.setResult()});else if(i&&i.length>0){for(r=new System.Threading.Tasks.Task,r.status=System.Threading.Tasks.TaskStatus.ranToCompletion,o=[],u=0;u<i.length;u++)o.push(e(i[u]));return t.apply(Bridge.global,o),r}else return r=new System.Threading.Tasks.Task,r.status=System.Threading.Tasks.TaskStatus.ranToCompletion,r;return s.task}};d.setImmediate=n.setImmediate?n.setImmediate.bind(n):function(){function r(t){if(t.data==i){n=n.next;var r=n.func;delete n.func;r()}}var n={},t=n,i=Math.random();return typeof window!="undefined"&&(window.addEventListener?window.addEventListener("message",r):window.attachEvent("onmessage",r)),function(n){t=t.next={func:n};typeof window!="undefined"&&window.postMessage(i,"*")}}();n.Bridge=d;n.Bridge.caller=[];n.Bridge.$equalsGuard=[];n.Bridge.$toStringGuard=[];n.console&&(n.Bridge.Console=n.console);n.System={};n.System.Diagnostics={};n.System.Diagnostics.Contracts={};n.System.Threading={};var i=function(n){return Bridge.global.navigator&&n.test(Bridge.global.navigator.userAgent.toLowerCase())},tt=Bridge.global.document&&Bridge.global.document.compatMode==="CSS1Compat",v=function(n,t){var i;return Bridge.global.navigator&&n&&(i=t.exec(navigator.userAgent.toLowerCase()))?parseFloat(i[1]):0},r=Bridge.global.document?Bridge.global.document.documentMode:null,p=i(/opera/),pt=p&&i(/version\/10\.5/),it=i(/\bchrome\b/),g=i(/webkit/),c=!it&&i(/safari/),wt=c&&i(/applewebkit\/4/),bt=c&&i(/version\/3/),kt=c&&i(/version\/4/),dt=c&&i(/version\/5\.0/),gt=c&&i(/version\/5/),u=!p&&(i(/msie/)||i(/trident/)),o=u&&(i(/msie 7/)&&r!==8&&r!==9&&r!==10||r===7),s=u&&(i(/msie 8/)&&r!==7&&r!==9&&r!==10||r===8),l=u&&(i(/msie 9/)&&r!==7&&r!==8&&r!==10||r===9),w=u&&(i(/msie 10/)&&r!==7&&r!==8&&r!==9||r===10),rt=u&&(i(/trident\/7\.0/)&&r!==7&&r!==8&&r!==9&&r!==10||r===11),e=u&&i(/msie 6/),y=!g&&!u&&i(/gecko/),b=y&&i(/rv:1\.9/),ni=y&&i(/rv:2\.0/),ti=y&&i(/rv:5\./),ii=y&&i(/rv:10\./),ri=b&&i(/rv:1\.9\.0/),ui=b&&i(/rv:1\.9\.1/),fi=b&&i(/rv:1\.9\.2/),ut=i(/windows|win32/),ft=i(/macintosh|mac os x/),et=i(/linux/),pi=null,ei=v(!0,/\bchrome\/(\d+\.\d+)/),a=v(!0,/\bfirefox\/(\d+\.\d+)/),oi=v(u,/msie (\d+\.\d+)/),si=v(p,/version\/(\d+\.\d+)/),hi=v(c,/version\/(\d+\.\d+)/),ci=v(g,/webkit\/(\d+\.\d+)/),li=Bridge.global.location?/^https/i.test(Bridge.global.location.protocol):!1,ot=Bridge.global.navigator&&/iPhone/i.test(Bridge.global.navigator.platform),st=Bridge.global.navigator&&/iPod/i.test(Bridge.global.navigator.platform),nt=Bridge.global.navigator&&/iPad/i.test(Bridge.global.navigator.userAgent),ai=Bridge.global.navigator&&/Blackberry/i.test(Bridge.global.navigator.userAgent),ht=Bridge.global.navigator&&/Android/i.test(Bridge.global.navigator.userAgent),ct=ft||ut||et&&!ht,lt=nt,vi=!ct&&!lt,yi={isStrict:tt,isIEQuirks:u&&!tt&&(e||o||s||l),isOpera:p,isOpera10_5:pt,isWebKit:g,isChrome:it,isSafari:c,isSafari3:bt,isSafari4:kt,isSafari5:gt,isSafari5_0:dt,isSafari2:wt,isIE:u,isIE6:e,isIE7:o,isIE7m:e||o,isIE7p:u&&!e,isIE8:s,isIE8m:e||o||s,isIE8p:u&&!(e||o),isIE9:l,isIE9m:e||o||s||l,isIE9p:u&&!(e||o||s),isIE10:w,isIE10m:e||o||s||l||w,isIE10p:u&&!(e||o||s||l),isIE11:rt,isIE11m:e||o||s||l||w||rt,isIE11p:u&&!(e||o||s||l||w),isGecko:y,isGecko3:b,isGecko4:ni,isGecko5:ti,isGecko10:ii,isFF3_0:ri,isFF3_5:ui,isFF3_6:fi,isFF4:4<=a&&a<5,isFF5:5<=a&&a<6,isFF10:10<=a&&a<11,isLinux:et,isWindows:ut,isMac:ft,chromeVersion:ei,firefoxVersion:a,ieVersion:oi,operaVersion:si,safariVersion:hi,webKitVersion:ci,isSecure:li,isiPhone:ot,isiPod:st,isiPad:nt,isBlackberry:ai,isAndroid:ht,isDesktop:ct,isTablet:lt,isPhone:vi,iOS:ot||nt||st,standalone:Bridge.global.navigator?!!Bridge.global.navigator.standalone:!1};Bridge.Browser=yi;at={_initialize:function(){this.$init||(this.$init={},this.$staticInit&&this.$staticInit(),this.$initMembers&&this.$initMembers())},initConfig:function(n,t,i,r,u,f){var v,e,l=r?u:u.ctor,s=l.$descriptors,w=l.$aliases,y,o,h,p,a,c;if(i.fields)for(e in i.fields)u[e]=i.fields[e];if(y=i.properties,y)for(e in y){if(o=y[e],o!=null&&Bridge.isPlainObject(o)&&(!o.get||!o.set)){for(a=0;a<s.length;a++)s[a].name===e&&(h=s[a]);h&&h.get&&!o.get&&(o.get=h.get);h&&h.set&&!o.set&&(o.set=h.set)}p=Bridge.property(r?u:f,e,o,r,l);p.name=e;p.cls=l;s.push(p)}if(i.events)for(e in i.events)Bridge.event(u,e,i.events[e],r);if(i.alias)for(c=0;c<i.alias.length;c++)(function(n,t,i,r){for(var l,c,e,o=null,h=s.length-1;h>=0;h--)if(s[h].name===t){o=s[h];break}for(l=Array.isArray(i)?i:[i],c=0;c<l.length;c++)i=l[c],o!=null?(Object.defineProperty(n,i,o),w.push({alias:i,descriptor:o})):(u.hasOwnProperty(t)||!f?(e=u[t],e===undefined&&f&&(e=f[t])):(e=f[t],e===undefined&&(e=u[t])),Bridge.isFunction(e)?(n[i]=e,w.push({fn:t,alias:i})):(o={get:function(){return this[t]},set:function(n){this[t]=n}},Object.defineProperty(n,i,o),w.push({alias:i,descriptor:o})))})(r?u:f,i.alias[c],i.alias[c+1],l),c++;i.init&&(v=i.init);(v||n&&!r&&t.$initMembers)&&(u.$initMembers=function(){n&&!r&&t.$initMembers&&t.$initMembers.call(this);v&&v.call(this)})},convertScheme:function(n){var t={},i=function(n,t){for(var u,i,r,o=["fields","methods","events","props","properties","alias","ctors"],e=Object.keys(n),f=0;f<e.length;f++)u=e[f],o.indexOf(u)===-1&&(t[u]=n[u]);n.fields&&Bridge.apply(t,n.fields);n.methods&&Bridge.apply(t,n.methods);i={};r=!1;n.props?(i.properties=n.props,r=!0):n.properties&&(i.properties=n.properties,r=!0);n.events&&(i.events=n.events,r=!0);n.alias&&(i.alias=n.alias,r=!0);n.ctors&&(n.ctors.init&&(i.init=n.ctors.init,r=!0,delete n.ctors.init),Bridge.apply(t,n.ctors));r&&(t.$config=i)};return n.main&&(t.$main=n.main,delete n.main),i(n,t),(n.statics||n.$statics)&&(t.$statics={},i(n.statics||n.$statics,t.$statics)),t},definei:function(n,t,i){(i===!0||!i)&&t?t.$kind="interface":i?i.$kind="interface":t={$kind:"interface"};var r=Bridge.define(n,t,i);return r.$kind="interface",r.$isInterface=!0,r},define:function(n,t,i,r){var v=!1,l,rt,u,et,g,vt,a,b,nt,tt,it,c,ot;if(i===!0?(v=!0,i=t,t=Bridge.global):i||(i=t,t=Bridge.global),Bridge.isFunction(i))return l=function(){var t,r,f,u;return(r=Bridge.Class.getCachedType(l,arguments),r)?r.type:(t=Array.prototype.slice.call(arguments),f=i.apply(null,t),u=Bridge.define(Bridge.Class.genericName(n,t),f,!0,{fn:l,args:t}),Bridge.Class.staticInitAllow||Bridge.Class.queueIsBlocked||Bridge.Class.$queue.push(u),Bridge.get(u))},l.$cache=[],Bridge.Class.generic(n,t,l,i);v||(Bridge.Class.staticInitAllow=!1);i=i||{};i.$kind=i.$kind||"class";rt=!1;i.$kind.match("^nested ")!==null&&(rt=!0,i.$kind=i.$kind.substr(7));i.$kind!=="enum"||i.inherits||(i.inherits=[System.IComparable,System.IFormattable]);var ut=["fields","events","props","ctors","methods"],st=Bridge.isFunction(i.main)?0:1,ht=function(n){if(n.config&&Bridge.isPlainObject(n.config)||n.$main&&Bridge.isFunction(n.$main)||n.hasOwnProperty("ctor")&&Bridge.isFunction(n.ctor))return st=1,!1;if(n.alias&&Bridge.isArray(n.alias)&&n.alias.length>0&&n.alias.length%2==0)return!0;for(var t=0;t<ut.length;t++)if(n[ut[t]]&&Bridge.isPlainObject(n[ut[t]]))return!0;return!1},w=ht(i);!w&&i.statics&&(w=ht(i.statics));w||(w=st==0);w&&(i=Bridge.Class.convertScheme(i));var f=i.$inherits||i.inherits,s=i.$statics||i.statics,ct=i.$entryPoint,y,e,lt=i.$scope||t||Bridge.global,k=Bridge.global.System&&Bridge.global.System.Object||Object,h,at,d,p,o,ft=!0;if(i.$kind==="enum"&&(f=[System.Enum]),i.$noRegister===!0&&(ft=!1,delete i.$noRegister),i.$inherits?delete i.$inherits:delete i.inherits,ct&&delete i.$entryPoint,Bridge.isFunction(s)?s=null:i.$statics?delete i.$statics:delete i.statics,a=i.hasOwnProperty("ctor")&&i.ctor,a?u=a:(u=i.$literal?function(n){return n=n||{},n.$getType=function(){return u},n}:function(){this.$initialize();u.$base&&(u.$$inherits&&u.$$inherits.length>0&&u.$$inherits[0].$staticInit&&u.$$inherits[0].$staticInit(),u.$base.ctor?u.$base.ctor.call(this):Bridge.isFunction(u.$base.constructor)&&u.$base.constructor.call(this))},i.ctor=u),i.$literal&&(s&&s.createInstance||(u.createInstance=function(){var n={};return n.$getType=function(){return u},n}),u.$literal=!0,delete i.$literal),!v&&ft&&(lt=Bridge.Class.set(lt,n,u)),r&&r.fn.$cache.push({type:u,args:r.args}),u.$$name=n,rt&&(et=u.$$name.lastIndexOf("."),u.$$name=u.$$name.substr(0,et)+"+"+u.$$name.substr(et+1)),u.$kind=i.$kind,i.$module&&(u.$module=i.$module),i.$metadata&&(u.$metadata=i.$metadata),r&&v){for(u.$genericTypeDefinition=r.fn,u.$typeArguments=r.args,u.$assembly=r.fn.$assembly||Bridge.$currentAssembly,g=Bridge.Reflection.getTypeFullName(r.fn),h=0;h<r.args.length;h++)g+=(h===0?"[":",")+"["+Bridge.Reflection.getTypeQName(r.args[h])+"]";g+="]";u.$$fullname=g}else u.$$fullname=u.$$name;f&&Bridge.isFunction(f)&&(f=f());Bridge.Class.createInheritors(u,f);vt=f?f[0].$kind==="interface":!0;vt&&(f=null);y=f?f[0].prototype:this.prototype;u.$base=y;f&&!f[0].$$initCtor?(a=f[0],b=function(){},b.prototype=a.prototype,b.prototype.constructor=a,b.prototype.$$fullname=Bridge.Reflection.getTypeFullName(a),e=new b):e=f?new f[0].$$initCtor:k.$$initCtor?new k.$$initCtor:new k;u.$$initCtor=function(){};u.$$initCtor.prototype=e;u.$$initCtor.prototype.constructor=u;u.$$initCtor.prototype.$$fullname=r&&v?u.$$fullname:u.$$name;s&&(nt=s.$config||s.config,nt&&!Bridge.isFunction(nt)&&(Bridge.Class.initConfig(f,y,nt,!0,u),s.$config?delete s.$config:delete s.config));tt=i.$config||i.config;tt&&!Bridge.isFunction(tt)?(Bridge.Class.initConfig(f,y,tt,!1,i,e),i.$config?delete i.$config:delete i.config):f&&y.$initMembers&&(i.$initMembers=function(){y.$initMembers.call(this)});i.$initialize=Bridge.Class._initialize;it=[];for(o in i)it.push(o);for(h=0;h<it.length;h++)o=it[h],at=i[o],d=o==="ctor",p=o,Bridge.isFunction(at)&&(d||o.match("^\\$ctor")!==null)&&(d=!0),c=i[o],d?(u[p]=c,u[p].prototype=e,u[p].prototype.constructor=u,e[p]=c):e[p]=c;if(e.$$name=n,e.toJSON||(e.toJSON=Bridge.Class.toJSON),s){for(o in s)c=s[o],o==="ctor"?u.$ctor=c:(i.$kind!=="enum"||Bridge.isFunction(c)||o.charAt(0)==="$"||(u.$names=u.$names||[],u.$names.push({name:o,value:c})),u[o]=c);i.$kind==="enum"&&u.$names&&(u.$names=u.$names.sort(function(n,t){return Bridge.isFunction(n.value.eq)?n.value.sub(t.value).sign():n.value-t.value}).map(function(n){return n.name}))}return f||(f=[k].concat(u.$interfaces)),Bridge.Class.setInheritors(u,f),l=function(){Bridge.Class.staticInitAllow&&!u.$isGenericTypeDefinition&&(u.$staticInit=null,u.$initMembers&&u.$initMembers(),u.$ctor&&u.$ctor())},(ct||Bridge.isFunction(e.$main))&&(e.$main&&(ot=e.$main.name||"Main",u[ot]||(u[ot]=e.$main)),Bridge.Class.$queueEntry.push(u)),u.$staticInit=l,!v&&ft&&Bridge.Class.registerType(n,u),Bridge.Reflection&&(u.$getMetadata=Bridge.Reflection.getMetadata),u.$kind==="enum"&&(u.prototype.$utype||(u.prototype.$utype=System.Int32),u.$is=function(n){var t=u.prototype.$utype;return t===String?typeof n=="string":t&&t.$is?t.$is(n):typeof n=="number"},u.getDefaultValue=function(){var n=u.prototype.$utype;return n===String||n===System.String?null:0}),u.$kind==="interface"&&(u.prototype.$variance&&(u.isAssignableFrom=Bridge.Class.varianceAssignable),u.$isInterface=!0),u},toCtorString:function(){return Bridge.Reflection.getTypeName(this)},createInheritors:function(n,t){var c=[],f=[],l=[],a=[],e,i,u;if(t)for(e=0;e<t.length;e++){var r=t[e],o=(r.$interfaces||[]).concat(r.$baseInterfaces||[]),s=r.$descriptors,h=r.$aliases;if(s&&s.length>0)for(i=0;i<s.length;i++)l.push(s[i]);if(h&&h.length>0)for(i=0;i<h.length;i++)a.push(h[i]);if(o.length>0)for(u=0;u<o.length;u++)f.indexOf(o[u])<0&&f.push(o[u]);r.$kind==="interface"&&c.push(r)}n.$descriptors=l;n.$aliases=a;n.$baseInterfaces=f;n.$interfaces=c;n.$allInterfaces=c.concat(f)},toJSON:function(){var e={},o=Bridge.getType(this),i=o.$descriptors||[],n,r,u,t,f;for(n in this){if(r=this.hasOwnProperty(n),u=null,!r)for(t=i.length-1;t>=0;t--)if(i[t].name===n){u=i[t];break}f=n.split("$").length;(r||u!=null)&&(f===1||f===2&&n.match("$d+$"))&&(e[n]=this[n])}return e},setInheritors:function(n,t){var i,r;for(n.$$inherits=t,i=0;i<t.length;i++)r=t[i],r.$$inheritors||(r.$$inheritors=[]),r.$$inheritors.push(n)},varianceAssignable:function(n){var r=function(n,t){var i;if(t.$genericTypeDefinition===n.$genericTypeDefinition&&t.$typeArguments.length===n.$typeArguments.length){for(i=0;i<n.$typeArguments.length;i++){var f=n.prototype.$variance[i],r=n.$typeArguments[i],u=t.$typeArguments[i];switch(f){case 1:if(!Bridge.Reflection.isAssignableFrom(r,u))return!1;break;case 2:if(!Bridge.Reflection.isAssignableFrom(u,r))return!1;break;default:if(u!==r)return!1}}return!0}return!1},i,t;if(n.$kind==="interface"&&r(this,n))return!0;for(i=Bridge.Reflection.getInterfaces(n),t=0;t<i.length;t++)if(i[t]===this||r(this,i[t]))return!0;return!1},registerType:function(n,t){Bridge.$currentAssembly&&(Bridge.$currentAssembly.$types[n]=t,t.$assembly=Bridge.$currentAssembly)},addExtend:function(n,t){var f,i,r,u;for(Array.prototype.push.apply(n.$$inherits,t),n.$interfaces=n.$interfaces||[],n.$baseInterfaces=n.$baseInterfaces||[],f=0;f<t.length;f++){if(i=t[f],i.$$inheritors||(i.$$inheritors=[]),i.$$inheritors.push(n),r=(i.$interfaces||[]).concat(i.$baseInterfaces||[]),r.length>0)for(u=0;u<r.length;u++)n.$baseInterfaces.indexOf(r[u])<0&&n.$baseInterfaces.push(r[u]);i.$kind==="interface"&&n.$interfaces.push(i)}n.$allInterfaces=n.$interfaces.concat(n.$baseInterfaces)},set:function(n,t,i,r){for(var u=t.split("."),o,h,e,s,f=0;f<u.length-1;f++)typeof n[u[f]]=="undefined"&&(n[u[f]]={}),n=n[u[f]];if(o=u[u.length-1],e=n[o],e){if(e.$$name===t)throw"Class '"+t+"' is already defined";for(h in e)s=e[h],typeof s=="function"&&s.$$name&&function(n,t,i){Object.defineProperty(n,t,{get:function(){return Bridge.Class.staticInitAllow&&(i.$staticInit&&i.$staticInit(),Bridge.Class.defineProperty(n,t,i)),i},set:function(n){i=n},enumerable:!0,configurable:!0})}(i,h,s)}return r!==!0?function(n,t,i){Object.defineProperty(n,t,{get:function(){return Bridge.Class.staticInitAllow&&(i.$staticInit&&i.$staticInit(),Bridge.Class.defineProperty(n,t,i)),i},set:function(n){i=n},enumerable:!0,configurable:!0})}(n,o,i):n[o]=i,n},defineProperty:function(n,t,i){Object.defineProperty(n,t,{value:i,enumerable:!0,configurable:!0})},genericName:function(n,t){for(var r,u=n,i=0;i<t.length;i++)r=t[i],u+="$"+(r.$$name||Bridge.getTypeName(r));return u},getCachedType:function(n,t){for(var e=n.$cache,o=e.length,i,f,r,u=0;u<o;u++)if(i=e[u],i.args.length===t.length){for(f=!0,r=0;r<i.args.length;r++)if(i.args[r]!==t[r]){f=!1;break}if(f)return i}return null},generic:function(n,t,i,r){return i.$$name=n,i.$kind="class",Bridge.Class.set(t,n,i,!0),Bridge.Class.registerType(n,i),i.$typeArgumentCount=r.length,i.$isGenericTypeDefinition=!0,i.$getMetadata=Bridge.Reflection.getMetadata,i.$staticInit=function(){var f,e,t,n,u,o;i.$typeArguments=Bridge.Reflection.createTypeParams(r);f=Bridge.Class.staticInitAllow;e=Bridge.Class.queueIsBlocked;Bridge.Class.staticInitAllow=!1;Bridge.Class.queueIsBlocked=!0;t=r.apply(null,i.$typeArguments);n=t.$inherits||t.inherits;Bridge.Class.staticInitAllow=f;Bridge.Class.queueIsBlocked=e;n&&Bridge.isFunction(n)&&(n=n());Bridge.Class.createInheritors(i,n);u=Bridge.global.System&&Bridge.global.System.Object||Object;n||(n=[u].concat(i.$interfaces));Bridge.Class.setInheritors(i,n);o=n?n[0].$$initCtor?new n[0].$$initCtor:new n[0]:new u;i.prototype=o;i.prototype.constructor=i;i.$kind=t.$kind||"class";t.$module&&(i.$module=t.$module)},Bridge.Class.$queue.push(i),i},init:function(n){var u,f,r,o,e,t,i;if(Bridge.Reflection&&(u=Bridge.Reflection.deferredMeta,f=u.length,f>0))for(Bridge.Reflection.deferredMeta=[],t=0;t<f;t++)r=u[t],Bridge.setMetadata(r.typeName,r.metadata,r.ns);if(n){o=Bridge.Class.staticInitAllow;Bridge.Class.staticInitAllow=!0;n();Bridge.Class.staticInitAllow=o;return}for(Bridge.Class.staticInitAllow=!0,e=Bridge.Class.$queue.concat(Bridge.Class.$queueEntry),Bridge.Class.$queue.length=0,Bridge.Class.$queueEntry.length=0,t=0;t<e.length;t++)i=e[t],i.$staticInit&&i.$staticInit(),i.prototype.$main&&(function(n,t){Bridge.ready(function(){var i=n[t]();i&&i.continueWith&&i.continueWith(function(){setTimeout(function(){i.getAwaitedResult()},0)})})}(i,i.prototype.$main.name||"Main"),i.prototype.$main=null)}};Bridge.Class=at;Bridge.Class.$queue=[];Bridge.Class.$queueEntry=[];Bridge.define=Bridge.Class.define;Bridge.definei=Bridge.Class.definei;Bridge.init=Bridge.Class.init;Bridge.assembly=function(n,t,i,r){var u,f,e;i||(i=t,t={});n=n||"Bridge.$Unknown";u=System.Reflection.Assembly.assemblies[n];u?Bridge.apply(u.res,t||{}):u=new System.Reflection.Assembly(n,t);f=Bridge.$currentAssembly;Bridge.$currentAssembly=u;i&&(e=Bridge.Class.staticInitAllow,Bridge.Class.staticInitAllow=!1,i.call(Bridge.global,u,Bridge.global),Bridge.Class.staticInitAllow=e);Bridge.init();r&&(Bridge.$currentAssembly=f)};Bridge.define("System.Reflection.Assembly",{statics:{assemblies:{}},ctor:function(n,t){this.$initialize();this.name=n;this.res=t||{};this.$types={};this.$={};System.Reflection.Assembly.assemblies[n]=this},toString:function(){return this.name},getManifestResourceNames:function(){return Object.keys(this.res)},getManifestResourceDataAsBase64:function(n,t){return arguments.length===1&&(t=n,n=null),n&&(t=Bridge.Reflection.getTypeNamespace(n)+"."+t),this.res[t]||null},getManifestResourceData:function(n,t){arguments.length===1&&(t=n,n=null);n&&(t=Bridge.Reflection.getTypeNamespace(n)+"."+t);var i=this.res[t];return i?System.Convert.fromBase64String(i):null},getCustomAttributes:function(n){return this.attr&&n&&!Bridge.isBoolean(n)?this.attr.filter(function(t){return Bridge.is(t,n)}):this.attr||[]}});Bridge.$currentAssembly=new System.Reflection.Assembly("mscorlib");Bridge.SystemAssembly=Bridge.$currentAssembly;Bridge.SystemAssembly.$types["System.Reflection.Assembly"]=System.Reflection.Assembly;System.Reflection.Assembly.$assembly=Bridge.SystemAssembly;f=Bridge.$currentAssembly;Bridge.define("System.Object",{});Bridge.define("System.Void",{$kind:"struct",statics:{methods:{getDefaultValue:function(){return new System.Void}}},methods:{$clone:function(n){return this}}});Bridge.init(function(){Bridge.SystemAssembly.version="17.10.1";Bridge.SystemAssembly.compiler="17.10.1"});Bridge.define("Bridge.Utils.SystemAssemblyVersion");Bridge.Reflection={deferredMeta:[],setMetadata:function(n,t,i){if(Bridge.isString(n)){var r=n;if(n=Bridge.unroll(r),n==null){Bridge.Reflection.deferredMeta.push({typeName:r,metadata:t,ns:i});return}}i=Bridge.unroll(i);n.$getMetadata=Bridge.Reflection.getMetadata;n.$metadata=t},initMetaData:function(n,t){var u,i,r;if(t.m)for(u=0;u<t.m.length;u++)if(i=t.m[u],i.td=n,i.ad&&(i.ad.td=n),i.r&&(i.r.td=n),i.g&&(i.g.td=n),i.s&&(i.s.td=n),i.tprm&&Bridge.isArray(i.tprm))for(r=0;r<i.tprm.length;r++)i.tprm[r]=Bridge.Reflection.createTypeParam(i.tprm[r],n,i,r);n.$metadata=t;n.$initMetaData=!0},getMetadata:function(){var n,t;return!this.$metadata&&this.$genericTypeDefinition&&(this.$metadata=this.$genericTypeDefinition.$factoryMetadata||this.$genericTypeDefinition.$metadata),n=this.$metadata,typeof n=="function"&&(this.$isGenericTypeDefinition&&!this.$factoryMetadata&&(this.$factoryMetadata=this.$metadata),this.$typeArguments?n=this.$metadata.apply(null,this.$typeArguments):this.$isGenericTypeDefinition?(t=Bridge.Reflection.createTypeParams(this.$metadata),this.$typeArguments=t,n=this.$metadata.apply(null,t)):n=this.$metadata()),!this.$initMetaData&&n&&Bridge.Reflection.initMetaData(this,n),n},createTypeParams:function(n,t){for(var f=[],u=n.toString(),r=u.slice(u.indexOf("(")+1,u.indexOf(")")).match(/([^\s,]+)/g)||[],i=0;i<r.length;i++)f.push(Bridge.Reflection.createTypeParam(r[i],t,null,i));return f},createTypeParam:function(n,t,i,r){var u=function(){};return u.$$name=n,u.$isTypeParameter=!0,t&&(u.td=t),i&&(u.md=i),r!=null&&(u.gPrmPos=r),u},load:function(n){return System.Reflection.Assembly.assemblies[n]||require(n)},getGenericTypeDefinition:function(n){if(n.$isGenericTypeDefinition)return n;if(!n.$genericTypeDefinition)throw new System.InvalidOperationException.$ctor1("This operation is only valid on generic types.");return n.$genericTypeDefinition},getGenericParameterCount:function(n){return n.$typeArgumentCount||0},getGenericArguments:function(n){return n.$typeArguments||[]},getMethodGenericArguments:function(n){return n.tprm||[]},isGenericTypeDefinition:function(n){return n.$isGenericTypeDefinition||!1},isGenericType:function(n){return n.$genericTypeDefinition!=null||Bridge.Reflection.isGenericTypeDefinition(n)},convertType:function(n){return n===Boolean?System.Boolean:n===String?System.String:n===Object?System.Object:n===Date?System.DateTime:n},getBaseType:function(n){var t,i;if(Bridge.isObject(n)||Bridge.Reflection.isInterface(n)||n.prototype==null)return null;else if(Object.getPrototypeOf)return Bridge.Reflection.convertType(Object.getPrototypeOf(n.prototype).constructor);else{if(t=n.prototype,Object.prototype.hasOwnProperty.call(t,"constructor"))try{return i=t.constructor,delete t.constructor,Bridge.Reflection.convertType(t.constructor)}finally{t.constructor=i}return Bridge.Reflection.convertType(t.constructor)}},getTypeFullName:function(n){var t,u,r,f,i,e;if(n.$$fullname?t=n.$$fullname:n.$$name&&(t=n.$$name),t)return u=Bridge.Reflection.getTypeNamespace(n,t),u&&(r=t.indexOf("["),i=t.substring(u.length+1,r===-1?t.length:r),new RegExp(/[\.\$]/).test(i)&&(t=u+"."+i.replace(/\.|\$/g,function(n){return n==="."?"+":"`"})+(r===-1?"":t.substring(r)))),t;if(n.constructor===Object)return t=n.toString(),f=/\[object (.{1,})\]/.exec(t),i=f&&f.length>1?f[1]:"Object",i=="Object"?"System.Object":