solved recursion addad balanceVolume