I came across the ink storage Mapping data structure. The official doc seems to explain how to use it but not why it's needed. It seems more complicated to initialize and work with.