:: (a -> Bool) -> [a] -> [[a]] package:speculate