This could turn out to be a fun one.

I'll go with baldrick's answer. Saves me typing out my own version of the same thing.