add understand about generator