private function reduceFirst(\Closure $callback) { return array_reduce($this->searchProviderChain->getProviders(), function ($found, $provider) use($callback) { return $found ?: $callback($provider); }, null); }