def partition_scopes(scopes: [str]):
    """
    partition_scopes partitions a set of scopes into four sets:
        - Exclude exact
        - Include exact
        - Exclude
        - Include
    """
    exclude_exact = []
    include_exact = []
    exclude = []
    include = []
    for scope in scopes:
        if scope.startswith('-='):
            exclude_exact.append(scope)
        elif scope.startswith('='):
            include_exact.append(scope)
        elif scope.startswith('-'):
            exclude.append(scope)
        else:
            include.append(scope)
    return [exclude_exact, include_exact, exclude, include]
