fixed % calc bug