I've already posted it here, check my posting history.
Since you are the 2nd person to ask, I might even put it on github!