NP loop