protected final function implementationsFor(array $data)
{
$implementations = [];
foreach (\Pinq\Iterators\SchemeProvider::getAvailableSchemes() as $scheme) {
$implementations = array_merge($implementations, [[new \Pinq\Traversable($data, $scheme), $data], [(new \Pinq\Providers\Traversable\Provider(new \Pinq\Traversable($data, $scheme)))->createQueryable(), $data]]);
}
return $implementations;
}