protected function determineModelReferenceStrategy(Model $model, $strategy = null)
    {
        if (null !== $strategy) {
            $strategy = $this->makeReferenceStrategyInstance($strategy);
        }

        if ( ! $strategy) {
            $strategy = $this->makeReferenceStrategy($model);
        }

        if ( ! $strategy) {
            $strategy = $this->getDefaultReferenceStrategyInstance();
        }

        return $strategy;
    }