fixed circular dependency error