fn check() -> Result<(), String>
Reads everything kept, as Sioul would, and says where it would go wrong.