<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def of_file(path: str, root_directory: str = None) -> dict: """ Returns a dictionary containing status information for the specified file including when its name relative to the root directory, when it was last modified and its size. :param path: The absolute path to the file for which the status information should be generated :param root_directory: The directory to use for creating relative path names for the returned status. If this argument is None the path in the status will be the absolute path argument. :return: A dictionary containing the status information for the file at the specified path. If no such file exists, then the dictionary will contain -1 values for both the file size and the last modified time. """


    slug = (
        path
        if root_directory is None
        else path[len(root_directory):].lstrip(os.sep)
    )

    if not os.path.exists(path) or os.path.isdir(path):
        return dict(
            size=-1,
            modified=-1,
            path=slug
        )

    size = os.path.getsize(path)
    modified = max(os.path.getmtime(path), os.path.getctime(path))

    return dict(
        modified=modified,
        path=slug,
        size=size
    )