clearer progress calculation