Im shy of my code... little bit of refactoring