Changed local implementation to give back Q if requested. Uses the most stable method of calculating Q as it goes.