fix & refactoring
fix