add more gest..clean some code