logical or working; keyboard interrupt handled; work in progress - error handling