Already been done. Much better.