def is_mixed_script(string, allowed_aliases=['COMMON']):
    """Checks if ``string`` contains mixed-scripts content, excluding script
    blocks aliases in ``allowed_aliases``.

    E.g. ``B. C`` is not considered mixed-scripts by default: it contains characters
    from **Latin** and **Common**, but **Common** is excluded by default.

    >>> confusables.is_mixed_script('Abç')
    False
    >>> confusables.is_mixed_script('ρτ.τ')
    False
    >>> confusables.is_mixed_script('ρτ.τ', allowed_aliases=[])
    True
    >>> confusables.is_mixed_script('Alloτ')
    True

    :param string: A unicode string
    :type string: str
    :param allowed_aliases: Script blocks aliases not to consider.
    :type allowed_aliases: list(str)
    :return: Whether ``string`` is considered mixed-scripts or not.
    :rtype: bool
    """
    allowed_aliases = [a.upper() for a in allowed_aliases]
    cats = unique_aliases(string) - set(allowed_aliases)
    return len(cats) > 1
Checks if ``string`` contains mixed-scripts content, excluding script
    blocks aliases in ``allowed_aliases``.

    E.g. ``B. C`` is not considered mixed-scripts by default: it contains characters
    from **Latin** and **Common**, but **Common** is excluded by default.

    >>> confusables.is_mixed_script('Abç')
    False
    >>> confusables.is_mixed_script('ρτ.τ')
    False
    >>> confusables.is_mixed_script('ρτ.τ', allowed_aliases=[])
    True
    >>> confusables.is_mixed_script('Alloτ')
    True

    :param string: A unicode string
    :type string: str
    :param allowed_aliases: Script blocks aliases not to consider.
    :type allowed_aliases: list(str)
    :return: Whether ``string`` is considered mixed-scripts or not.
    :rtype: bool