moved more Input class detailed implementations to end of application file