clean code
bug fixed