this has to require `\ArrayAccess` instance.