support undo
rename main class