Replaced `GeneralizedNewtypeDeriving` with explicit instances