function bind() { var args = arguments; var __method = args[0]; var object = args[1]; var new_args = args[2] || []; return function() { return __method.apply(object, new_args); } } function bindAsEventListener() { var args = arguments; var __method = args[0]; var object = args[1]; return function(event) { return __method.call(object, event || window.event); } } function getLastScript() { var scripts = document.getElementsByTagName('SCRIPT'); return scripts[scripts.length - 1]; } var constructor = function() { return function() { this.init.apply(this, arguments); } }