at :: FunMap k v -> k -> v
FunMap f `at` x = maybe err id $ f x
    where err = error "Error: element with key" ++ x ++ "not found in the FunMap."


-- | Safe way to return an element from the FunMap.
at :: FunMap k v -> k -> v
FunMap f `at` x = maybe err id $ f x
    where err = error "Error: element with key" ++ x ++ "not found in the FunMap."


-- | Safe way to return an element from the FunMap.
FunMap f `at` x = maybe err id $ f x
    where err = error "Error: element with key" ++ x ++ "not found in the FunMap."


-- | Safe way to return an element from the FunMap.