added base class for mapped array io