Refactor, total suck