This one took a while.

~Cross