Input processing