QuickCheck project solution