Gathers columns correctly, needs refactoring