docs: public void into(@NonNull ImageView target, @Nullable Callback callback) {
      long started = System.nanoTime();
      checkMain();
  
      if (target == null) {
        throw new IllegalArgumentException("Target must not be null.");
      }
  
      if (!data.hasImage()) {
        picasso.cancelRequest(target);
        if (setPlaceholder) {
          setPlaceholder(target, getPlaceholderDrawable());
        }
        return;
      }
  
      if (deferred) {
        if (data.hasSize()) {
          throw new IllegalStateException("Fit cannot be used with resize.");
        }
        int width = target.getWidth();
        int height = target.getHeight();
        if (width == 0 || height == 0) {
          if (setPlaceholder) {
            setPlaceholder(target, getPlaceholderDrawable());
          }
          picasso.defer(target, new DeferredRequestCreator(this, target, callback));
          return;
        }
        data.resize(width, height);
      }
  
      Request request = createRequest(started);
  
      if (shouldReadFromMemoryCache(request.memoryPolicy)) {
        Bitmap bitmap = picasso.quickMemoryCacheCheck(request.key);
        if (bitmap != null) {
          picasso.cancelRequest(target);
          RequestHandler.Result result = new RequestHandler.Result(bitmap, MEMORY);
          setResult(target, picasso.context, result, noFade, picasso.indicatorsEnabled);
          if (picasso.loggingEnabled) {
            log(OWNER_MAIN, VERB_COMPLETED, request.plainId(), "from " + MEMORY);
          }
          if (callback != null) {
            callback.onSuccess();
          }
          return;
        }
      }
  
      if (setPlaceholder) {
        setPlaceholder(target, getPlaceholderDrawable());
      }
  
      Action action = new ImageViewAction(picasso, target, request, errorDrawable, errorResId, noFade,
          callback);
      picasso.enqueueAndSubmit(action);
    }