just some refactoring...