public function scopeFindByNameOrAlias(Builder $query, ?string $search = null): Builder 	{ 		$search = preg_replace('/\s+/', ' ', strtoupper($search));  		return $query->where(function (Builder $query) use ($search) { 			$query->whereRaw('UPPER(name) = ?', $search)->orWhereHas('tags', function (object $query) use ($search): void { 				$query->whereHas('tag', function (object $query) use ($search): void { 					$query->whereRaw('UPPER(name) = ?', $search); 				}); 			}); 		}); 	}