docs: @Override
      @SuppressWarnings("unchecked")
      public <T> T get(Contextual<T> contextual, CreationalContext<T> creationalContext) {
          Bean bean = (Bean) contextual;
          // you can store the bean somewhere
          if (somewhere.containsKey(bean.getName())) {
              return (T) somewhere.get(bean.getName());
          } else {
              T t = (T) bean.create(creationalContext);
              somewhere.put(bean.getName(), t);
              return t;
          }
      }