enum -> input logic