bug fix & source refactoring