$.fn.before = function(value){
    var ret = this.__before.apply(this, arguments);
    value.trigger("as::before", Array.prototype.slice.call(arguments));
    return ret;
};