input patterns