Because if the iterate variable is a tuple, scope directive will say it can be declare in the For directive so if we add it in a private clause we are using an undeclared variable.