optional input processing