code: private Constructor<T> getWrapper() {
          Class<T> clazz;
          synchronized (cWrapperCache) {
              clazz = (Class<T>) cWrapperCache.get(mType);
              if (clazz == null) {
                  clazz = createWrapper();
                  cWrapperCache.put(mType, clazz);
              }
          }
  
          try {
              return clazz.getConstructor(AtomicReference.class);
          } catch (NoSuchMethodException e) {
              ThrowUnchecked.fire(e);
              return null;
          }
      }
docs: Returns a Constructor that accepts an AtomicReference to the wrapped
  object.