def self.search(query)
    return self if query.blank?

    query = query.split(/\s+/).join("%")
    joins(micro_clusters: :collected_pens).where(<<~SQL, "%#{query}%").group(