new input structure