Created this for Jouster. Took me about 3 hours.