function mixin(ctor, methods) {
	    var keyCopier = function(key ) { ctor.prototype[key] = methods[key]; };
	    Object.keys(methods).forEach(keyCopier);
	    Object.getOwnPropertySymbols &&
	      Object.getOwnPropertySymbols(methods).forEach(keyCopier);
	    return ctor;
	  }
function mixin(ctor, methods) {
	    var keyCopier = function(key ) { ctor.prototype[key] = methods[key]; };
	    Object.keys(methods).forEach(keyCopier);
	    Object.getOwnPropertySymbols &&
	      Object.getOwnPropertySymbols(methods).forEach(keyCopier);
	    return ctor;
	  }
function mixin ( ctor , methods ) { var keyCopier = function ( key ) { ctor . prototype [ key ] = methods [ key ] ; } ; Object . keys ( methods ) . forEach ( keyCopier ) ; Object . getOwnPropertySymbols && Object . getOwnPropertySymbols ( methods ) . forEach ( keyCopier ) ; return ctor ; }
Contributes additional methods to a constructor
Contributes additional methods to a constructor