remove circular dependency