completed flyweight
some classes