small fix
refactor codes
add refactor codes