add remove all listener function
redesign change mode logic
redesign
redesign mode add breakpoint logic
commit gitignore
add diff function