finalized input system