úÎ19      !"#$%&'()*+,-./012345678  Same as Data.Foldable.foldl1 *Default value is the mempty from a monoid   Same as Data.Foldable.foldr1  *Default value is the mempty from a monoid   Same as Data.Foldable.find *Default value is the mempty from a monoid    portable in-progress&http://community.haskell.org/~ndm/safe/9:;<  tailDef [12] [] = [12]  tailDef [12] [1,3,4] = [3,4]   tailMay [] = Nothing  tailMay [1,3,4] = Just [3,4]  E tail "help me" [] = error "Pattern match failure, tail [], help me"  tail "help me" [1,3,4] = [3,4]   tailSafe [] = []  tailSafe [1,3,4] = [3,4]  !"#$%&'(See fromMaybe )*+Same as (!!), but better error message ,-./012 ( lookupJust key = fromJust . lookup key 345 " findJust op = fromJust . find op 678Exactly the same as error+. Use this for instances where the program J has decided to exit because of invalid user input, or the user pressed  quit etc. This allows error- to be reserved for genuine coding mistakes. + !"#$%&'()*+,-./012345678+ !"#$%&'()*+,-./012345678+ !"#$%&'()*+,-./012345678=      !"#$   %&'()*+,-./01 234567 safe-0.3.2 Safe.FoldableSafemfl foldl1Note foldl1Def foldl1May foldl1Safemfr foldr1Note foldr1Def foldr1May foldr1SafefindJust findJustDef findJustNote findJustSafetailDeftailMaytailNotetailSafeinitDefinitMayinitNoteinitSafeheadDefheadMayheadNotelastDeflastMaylastNote minimumDef minimumMay minimumNote maximumDef maximumMay maximumNote fromJustDef fromJustNote assertNoteatatDefatMayatNotereadDefreadMayreadNote lookupJust lookupJustDeflookupJustNoteabortliftDefliftMayliftNoteliftSafe