some small work on input