public static ConcreteFlyweight getInstance(String key) {
		ConcreteFlyweight flyweight = null;
		if (pool.containsKey(key)) {
			flyweight = pool.get(key);
		} else {
			System.out.println("create an instance.");
			flyweight = new ConcreteFlyweight(key);
			pool.put(key, flyweight);
		}
		return flyweight;
	}