The Flyweight Pattern