improved and better discribed button input