add flyweight design mode