úÎ [ÄNone+-./0CThe 4 function takes a default value, a function, and a  value. If the inner  value is  g, the function returns the default value. Otherwise, it applies the function to the value inside the   and returns the result.The & function takes a default value and a  value. If the inner  is  R, it returns the default value; otherwise, it returns the value contained within.The '(<>)' for  is   if either$ of the operands are, whereas here both must be.     both_D6tsIsGbxOKFZ6STzYQTMB Data.BothBothgetBothbothfromBoth $fZeroBoth $fMonoidBoth$fSemigroupBothbaseGHC.BaseMaybeNothingJust