input proc