refactoring, new UI code, new Input code