generate input