generalized quaternion groups