refactor music service