private function removeIrrelevant(Node $input, RecommendationEngine $engine, Recommendations $recommendations, array $blacklist)
{
foreach ($recommendations->getItems() as $recommendation) {
if (array_key_exists($recommendation->item()->identity(), $blacklist)) {
$recommendations->remove($recommendation);
} else {
foreach ($engine->filters() as $filter) {
if (!$filter->doInclude($input, $recommendation->item())) {
$recommendations->remove($recommendation);
break;
}
}
}
}
}