def METHOD_NAME(self, stamp=None, extension=None):
    """Compute the S3 key in the source bucket.
    It is built from the document ID + ID of the image.
    Parameters
    ----------
    stamp: Type[string]
        Passing a value for this argument will return the source S3 key for the image
        assuming its active stamp is set to this value. This is not for versioning but
        so client can upload the file to S3 and the confirmation lambda can set the
        `uploaded_on` field to this value only after the file upload and processing
        is successful.
    Returns
    -------
    string
        The S3 key for the image file in the source bucket, where uploaded files are
        stored before they are converted and copied to the destination bucket.
    """
    stamp = stamp or to_timestamp(self.uploaded_on)
    # We don't want to deal with None value, so we set it with an empty string
    extension = extension or ""
    # We check if the extension starts with a leading dot or not. If it's not the case we add
    # it at the beginning of the string
    if extension and extension[:1] != ".":
        extension = "." + extension
    return (
        f"{self.markdown_document_id}/markdown-image/"
        f"{self.pk}/{stamp}{extension}"
    )