Started blocking out refactor