public GenericRequestBuilder<ModelType, DataType, ResourceType, TranscodeType> thumbnail(
            GenericRequestBuilder<?, ?, ?, TranscodeType> thumbnailRequest) {
        if (this.equals(thumbnailRequest)) {
            throw new IllegalArgumentException("You cannot set a request as a thumbnail for itself. Consider using "
                    + "clone() on the request you are passing to thumbnail()");
        }
        this.thumbnailRequestBuilder = thumbnailRequest;

        return this;
    }
Loads and displays the resource retrieved by the given thumbnail request if it finishes before this request.
Best used for loading thumbnail resources that are smaller and will be loaded more quickly than the full size
resource. There are no guarantees about the order in which the requests will actually finish. However, if the
thumb request completes after the full request, the thumb resource will never replace the full resource.

@see #thumbnail(float)

<p>
    Recursive calls to thumbnail are supported.
</p>

@param thumbnailRequest The request to use to load the thumbnail.
@return This request builder.
core/src/main/java/com/bumptech/glide/GenericRequestBuilder.java