switched these up to avoid extending built-in prototypes