no empty inputs