text: function loupe_cls(ctor, props) {
  
  	try {
  		for(var p in props) {
  			if (!Object.prototype.hasOwnProperty.call(ctor, p)) {
  				Object.defineProperty(ctor.prototype, p, {
  					value: props[p]
  				});
  			}
  		}		
  	}
  	catch(e) {
  		loupe_extend(ctor.prototype, props);
  	}
  }
  
  loupe_extend(loupe, {
  
  	extend: loupe_cls
  })