some refactors
little refactor
little refactor