small change to division attemping to fix overflow, not working
trying to use bit operation for calculations to prevent overflow?