def METHOD_NAME(self, submission_token) -> Submission:
    """
    Resolve submission from authentication token
    Args:
        submission_token: authentication token in correct format
    Raises:
        AuthenticationFailed if authentication failed
    """
    token_parts = submission_token.split('.', 1)
    if len(token_parts) != 2:
        raise AuthenticationFailed("Submission token isn't in correct format.")
    submission_id, submission_hash = token_parts
    try:
        submission_id = int(submission_id, 16)
    except ValueError as exc:
        raise AuthenticationFailed("Submission token isn't in correct format.") from exc
    try:
        submission = Submission.objects.get(id=submission_id, hash=submission_hash)
    except Submission.DoesNotExist as exc:
        raise AuthenticationFailed("No valid submission for submission token.") from exc
    return submission