Tweak the rows() method and add ArrayAccess