This one really looks like it's been done before... having trouble finding exactly where though, besides this: