Use (fmap join . traverse ..) instead of explicit pattern matching
Oops: Param Ids need to be randomized when picking a result