improved input yet again >.>