@@ -0,0 +1,395 @@
+package org.joda.time;%0A%0Aimport java.util.HashMap;%0A%0Apublic class GenericPool%3CT%3E %7B%0A%0A  private HashMap%3CInteger, T%3E pool;%0A%0A  public GenericPool() %7B%0A    this.pool = new HashMap%3CInteger, T%3E();%0A  %7D%0A%0A  protected void add(int numeral, T type) %7B%0A    pool.put(new Integer(numeral), type);%0A  %7D%0A%0A  protected T obtain(int numeral)%7B%0A    T instance = pool.get(new Integer(numeral));%0A%0A    return instance;%0A  %7D%0A%7D%0A

add GenericPool in order to remove duplication of Pool