public static bool operator ==(Variant v1, VariantType v2)
{
if ((v1 as object) == null) return false;
return v2 == VariantType.Numberic
? v1.ValueType == VariantType.SByte ||
v1.ValueType == VariantType.Int16 ||
v1.ValueType == VariantType.Int32 ||
v1.ValueType == VariantType.Int64 ||
v1.ValueType == VariantType.UInt16 ||
v1.ValueType == VariantType.UInt32 ||
v1.ValueType == VariantType.UInt64 ||
v1.ValueType == VariantType.Double ||
v1.ValueType == VariantType.Byte
: v1.ValueType == v2;
}