need ncurses for better io