allowed arbitrary amount of rows and columns