Search reimplementation