Not smart, changing type casts and not updating either the prototype or the function :p