more circular dependencies...