some todo items, and prevent misusage of button