úÎes     SafewAn abstract distance. Use the provided smart constructors to create a meaningful distance. Note that on first sight a  † instance might seem desirable, but this would defeat the purpose of having transparent and explicitly constructed distances due to .  An empty  is 0, and  is defined as addition          'distance-0.1.0.0-ABci6kGxPiTGSXqgf6MWgw Data.DistanceDistancemeters centimeters millimeters kilometerstoMeters toCentimeters toMillimeters toKilometers$fMonoidDistance$fShowDistance $fEqDistance $fOrdDistancebaseGHC.NumNum fromIntegerGHC.Basemappend unDistance