Thanks to the following people for their contributions (in alphabetical order):

ericjperry
jenthebest
Yuav