use generator