Input system rewrite