new input method
add nice output