Made the bounds for generics a little more flexible.