Some changes... not enough to refactor, will do so on a new iteration