add switch-case ........
merge