Here's the source code.

And here's Dori Smith's timing example.