avoid infinite loop. how evil.