poop
got a fast, accurate implementation now