public function find()
 {
     if (Input::exists('search')) {
         $search = Input::get('search');
         $result = $this->pokemonRepository->findByPartialName($search);
         if (!$result) {
             return $this->blankSuccess();
         }
         $result = $this->pokemonTransformer->transform($result);
         return $this->success($result);
     } else {
         // instruct calculators to eager load
         $this->typeEfficacyComparator->preloadAllData();
         $this->statRepository->preloadStats();
         $result = $this->pokemonRepository->getAll()->map(function (Pokemon $pokemon) {
             return $this->pokemonTransformer->transform($pokemon);
         });
         return $this->success($result);
     }
 }