fixed circular reference