Kotlin, Kotlin Design Patterns, Kotlin Flyweight, Kotlin Flyweight Pattern.
Structural Design Patterns  Purpose of the pattern The pattern is mostly used to balance memory usage in your app. It’s all about object reusability (note that I’ve used the word Object, not Class). Instead of creating new objects each time, you have a pool of similar objects that can be reused.