Introduce Array1DMap, Array2DMap and use it as appropriate