@SuppressWarnings("unchecked")
  @Override
  public <T> T getUserData(final Key<T> key) {
    return myUserMap == null ? null : (T)myUserMap.get(key);
  }
@SuppressWarnings("unchecked")
  @Override
  public <T> T getUserData(final Key<T> key)