possible circular dependency fix