some refactoring and buddies module