removed circular dependency