wrap up modes and include section on generics