Refactored how weight and results are passed in