Composite(hierarchy) and flyweight (city) patterns