Add ciruclar reference detection (broken)