public BoundType FindBoundType(Type type) { return DerivedTypes.FirstOrDefault(b => b.Type == type); } }