add button check
lots of changes