code: def find_cards(self, source=None, **filters):
  		
  		if not filters:
  			new_filters = self.filters.copy()
  		else:
  			new_filters = filters.copy()
  
  		for k, v in new_filters.items():
  			if isinstance(v, LazyValue):
  				new_filters[k] = v.evaluate(source)
  
  		from .. import cards
  		return cards.filter(**new_filters)
docs: Generate a card pool with all cards matching specified filters