{-# LANGUAGE InstanceSigs, DataKinds, KindSignatures, GADTs #-}

data DayKind = Work | Rest

data Day :: DayKind -> * where
  Mon :: Day Work
  Sat :: Day Rest

instance Num (Day c) where
  fromInteger :: Int -> Day p
  fromInteger 1 = Mon
  fromInteger 6 = Sat
