Some cumbersome generics added