import unicodedata


def _really_normalize_char(char):
    """
    Use NFKD normalization to `char`. Return ``?`` if character couldn't be
    normalized.

    Args:
        char (unicode): Unicode character which should be normalized.

    Returns:
        unicode: Normalized character.
    """
    new_char = unicodedata.normalize('NFKD', char)
    new_char = new_char.encode('ascii', errors='replace')

    # 'Ǎ' is normalized to 'A?' and I want only 'A'
    if len(new_char) == 2:
        return new_char[0]

    return new_char