fixed circular dependency in models