class Proxies {

  @SuppressWarnings("unchecked")
  static <T> T newProxyInstance(T o, InvocationHandler h) {
    checkNotNull(o);
    checkNotNull(h);

    return (T) Proxy.newProxyInstance(o.getClass().getClassLoader(), Proxies.getInterfaces(o), h);
  }

  private  Proxies();

}