no self loop (p=1)