Суть в том что циклы не создают контекстов, и отслеживать положение функции мы ни как не можем значит с циклами облом.. тогда просто нужно добавить им имена)))))
типа not(3,'id1') вот так мы сможем идентефицировать)) но эт не так круто как хотелось бы)