implement new non-natural loop detection method