genOpt f l = fmap (maybe mempty $ fromLens l . f) . optional . OB.option str
genOpt f l = fmap (maybe mempty $ fromLens l . f) . optional . OB.option str
genOpt f l = fmap (maybe mempty $ fromLens l . f) . optional . OB.option str