implement an ArrayBase for each rank