figured out iteration