use longs when calculating % complete to avoid getting negative answers