changed splitting strategy to columns, easier to implement