Rewrote, faster