Wholly broken code, but you can see where I'm going with this