/*! Jahcode v1.1.0 | jahcode.com | Copyright 2011-2013 by Florian Buecklers | MIT license */ !function(t){var e=Object.getPrototypeOf({constructor:String})==String.prototype;Function.prototype.extend||(Function.prototype.extend=function(t,e){e||(e=t,t=this);for(name in e)e.hasOwnProperty(name)&&(t[name]=e[name]);return t}),Object.extend(Function.prototype,{linearizedTypes:[Object],inherit:function(){for(var t=function(e){return this instanceof t?(this.initialize&&(arguments.length?this.initialize.apply(this,arguments):this.initialize.call(this)),void 0):t.asInstance(e)},e=arguments[arguments.length-1],n=Object.createPrototypeChain(t,this,Array.prototype.slice.call(arguments,0,arguments.length-1)),r=Object.getOwnPropertyNames(e),i=0;i