+instance Arbitrary Day where
+ arbitrary = ModifiedJulianDay <$> arbitrary
+
+instance Arbitrary TimeOfDay where
+ arbitrary
+ = do h ← choose (0, 23)
+ m ← choose (0, 59)
+ s ← choose (0, 60)
+ return $ TimeOfDay h m (fromIntegral (s ∷ Int))
+
+instance Arbitrary LocalTime where
+ arbitrary = LocalTime <$> arbitrary ⊛ arbitrary
+