The fact that it is protected forbids you to apply such performance improvements, as you have no guarantee that ``$keys`` and ``$values`` are kept in sync (child classes can modify ``$values`` directly). this is exactly why they are private in 2.x