implementing Array