public static IType FindConstructedType(IType type, IType definition)
{
IType result = null;
foreach (IType candidate in FindConstructedTypes(type, definition))
{
if (result == null) result = candidate;
else if (result != candidate) return null;
}
return result;
}