a bug fixed in iterate