public Object put(Object key, double probability) { return super.put(key, new Double(probability));
public Object put(Object key, Object value) { throw new UnsupportedOperationException();
  public Object put(Object key, double probability) {    return super.put(key, new Double(probability));  }