better calculation, witout -ve percentage