implemented reinvesting