adding strategy implementation