Class BinaryOperatorMult
    Inherits IntrinsicOperatorTests
    Shared Function Main As Integer
        Try
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int16
            M(bool * bool, "bool * bool")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int16
            M(bool * b, "bool * b")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.SByte
            M(bool * sb, "bool * sb")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int16
            M(bool * s, "bool * s")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int32
            M(bool * us, "bool * us")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int32
            M(bool * i, "bool * i")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int64
            M(bool * ui, "bool * ui")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Int64
            M(bool * l, "bool * l")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Decimal
            M(bool * ul, "bool * ul")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Decimal
            M(bool * dec, "bool * dec")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Single
            M(bool * sng, "bool * sng")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Double
            M(bool * dbl, "bool * dbl")
#End If
#If Boolean_ERRORS
            M(bool * chr, "bool * chr")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Double
            M(bool * str, "bool * str")
#End If
#If Boolean_ERRORS
            M(bool * dt, "bool * dt")
#End If
#If Boolean_ERRORS
            M(bool * dbnull, "bool * dbnull")
#End If
#If Not STRICT Or Boolean_ERRORS
            expected_tc = TypeCode.Object
            M(bool * obj, "bool * obj")
#End If
#If Not STRICT Or Byte_ERRORS
            expected_tc = TypeCode.Int16
            M(b * bool, "b * bool")
#End If
            expected_tc = TypeCode.Byte
            M(b * b, "b * b")
            expected_tc = TypeCode.Int16
            M(b * sb, "b * sb")
            expected_tc = TypeCode.Int16
            M(b * s, "b * s")
            expected_tc = TypeCode.UInt16
            M(b * us, "b * us")
            expected_tc = TypeCode.Int32
            M(b * i, "b * i")
            expected_tc = TypeCode.UInt32
            M(b * ui, "b * ui")
            expected_tc = TypeCode.Int64
            M(b * l, "b * l")
            expected_tc = TypeCode.UInt64
            M(b * ul, "b * ul")
            expected_tc = TypeCode.Decimal
            M(b * dec, "b * dec")
            expected_tc = TypeCode.Single
            M(b * sng, "b * sng")
            expected_tc = TypeCode.Double
            M(b * dbl, "b * dbl")
#If Byte_ERRORS
            M(b * chr, "b * chr")
#End If
#If Not STRICT Or Byte_ERRORS
            expected_tc = TypeCode.Double
            M(b * str, "b * str")
#End If
#If Byte_ERRORS
            M(b * dt, "b * dt")
#End If
#If Byte_ERRORS
            M(b * dbnull, "b * dbnull")
#End If
#If Not STRICT Or Byte_ERRORS
            expected_tc = TypeCode.Object
            M(b * obj, "b * obj")
#End If
#If Not STRICT Or SByte_ERRORS
            expected_tc = TypeCode.SByte
            M(sb * bool, "sb * bool")
#End If
            expected_tc = TypeCode.Int16
            M(sb * b, "sb * b")
            expected_tc = TypeCode.SByte
            M(sb * sb, "sb * sb")
            expected_tc = TypeCode.Int16
            M(sb * s, "sb * s")
            expected_tc = TypeCode.Int32
            M(sb * us, "sb * us")
            expected_tc = TypeCode.Int32
            M(sb * i, "sb * i")
            expected_tc = TypeCode.Int64
            M(sb * ui, "sb * ui")
            expected_tc = TypeCode.Int64
            M(sb * l, "sb * l")
            expected_tc = TypeCode.Decimal
            M(sb * ul, "sb * ul")
            expected_tc = TypeCode.Decimal
            M(sb * dec, "sb * dec")
            expected_tc = TypeCode.Single
            M(sb * sng, "sb * sng")
            expected_tc = TypeCode.Double
            M(sb * dbl, "sb * dbl")
#If SByte_ERRORS
            M(sb * chr, "sb * chr")
#End If
#If Not STRICT Or SByte_ERRORS
            expected_tc = TypeCode.Double
            M(sb * str, "sb * str")
#End If
#If SByte_ERRORS
            M(sb * dt, "sb * dt")
#End If
#If SByte_ERRORS
            M(sb * dbnull, "sb * dbnull")
#End If
#If Not STRICT Or SByte_ERRORS
            expected_tc = TypeCode.Object
            M(sb * obj, "sb * obj")
#End If
#If Not STRICT Or Int16_ERRORS
            expected_tc = TypeCode.Int16
            M(s * bool, "s * bool")
#End If
            expected_tc = TypeCode.Int16
            M(s * b, "s * b")
            expected_tc = TypeCode.Int16
            M(s * sb, "s * sb")
            expected_tc = TypeCode.Int16
            M(s * s, "s * s")
            expected_tc = TypeCode.Int32
            M(s * us, "s * us")
            expected_tc = TypeCode.Int32
            M(s * i, "s * i")
            expected_tc = TypeCode.Int64
            M(s * ui, "s * ui")
            expected_tc = TypeCode.Int64
            M(s * l, "s * l")
            expected_tc = TypeCode.Decimal
            M(s * ul, "s * ul")
            expected_tc = TypeCode.Decimal
            M(s * dec, "s * dec")
            expected_tc = TypeCode.Single
            M(s * sng, "s * sng")
            expected_tc = TypeCode.Double
            M(s * dbl, "s * dbl")
#If Int16_ERRORS
            M(s * chr, "s * chr")
#End If
#If Not STRICT Or Int16_ERRORS
            expected_tc = TypeCode.Double
            M(s * str, "s * str")
#End If
#If Int16_ERRORS
            M(s * dt, "s * dt")
#End If
#If Int16_ERRORS
            M(s * dbnull, "s * dbnull")
#End If
#If Not STRICT Or Int16_ERRORS
            expected_tc = TypeCode.Object
            M(s * obj, "s * obj")
#End If
#If Not STRICT Or UInt16_ERRORS
            expected_tc = TypeCode.Int32
            M(us * bool, "us * bool")
#End If
            expected_tc = TypeCode.UInt16
            M(us * b, "us * b")
            expected_tc = TypeCode.Int32
            M(us * sb, "us * sb")
            expected_tc = TypeCode.Int32
            M(us * s, "us * s")
            expected_tc = TypeCode.UInt16
            M(us * us, "us * us")
            expected_tc = TypeCode.Int32
            M(us * i, "us * i")
            expected_tc = TypeCode.UInt32
            M(us * ui, "us * ui")
            expected_tc = TypeCode.Int64
            M(us * l, "us * l")
            expected_tc = TypeCode.UInt64
            M(us * ul, "us * ul")
            expected_tc = TypeCode.Decimal
            M(us * dec, "us * dec")
            expected_tc = TypeCode.Single
            M(us * sng, "us * sng")
            expected_tc = TypeCode.Double
            M(us * dbl, "us * dbl")
#If UInt16_ERRORS
            M(us * chr, "us * chr")
#End If
#If Not STRICT Or UInt16_ERRORS
            expected_tc = TypeCode.Double
            M(us * str, "us * str")
#End If
#If UInt16_ERRORS
            M(us * dt, "us * dt")
#End If
#If UInt16_ERRORS
            M(us * dbnull, "us * dbnull")
#End If
#If Not STRICT Or UInt16_ERRORS
            expected_tc = TypeCode.Object
            M(us * obj, "us * obj")
#End If
#If Not STRICT Or Int32_ERRORS
            expected_tc = TypeCode.Int32
            M(i * bool, "i * bool")
#End If
            expected_tc = TypeCode.Int32
            M(i * b, "i * b")
            expected_tc = TypeCode.Int32
            M(i * sb, "i * sb")
            expected_tc = TypeCode.Int32
            M(i * s, "i * s")
            expected_tc = TypeCode.Int32
            M(i * us, "i * us")
            expected_tc = TypeCode.Int32
            M(i * i, "i * i")
            expected_tc = TypeCode.Int64
            M(i * ui, "i * ui")
            expected_tc = TypeCode.Int64
            M(i * l, "i * l")
            expected_tc = TypeCode.Decimal
            M(i * ul, "i * ul")
            expected_tc = TypeCode.Decimal
            M(i * dec, "i * dec")
            expected_tc = TypeCode.Single
            M(i * sng, "i * sng")
            expected_tc = TypeCode.Double
            M(i * dbl, "i * dbl")
#If Int32_ERRORS
            M(i * chr, "i * chr")
#End If
#If Not STRICT Or Int32_ERRORS
            expected_tc = TypeCode.Double
            M(i * str, "i * str")
#End If
#If Int32_ERRORS
            M(i * dt, "i * dt")
#End If
#If Int32_ERRORS
            M(i * dbnull, "i * dbnull")
#End If
#If Not STRICT Or Int32_ERRORS
            expected_tc = TypeCode.Object
            M(i * obj, "i * obj")
#End If
#If Not STRICT Or UInt32_ERRORS
            expected_tc = TypeCode.Int64
            M(ui * bool, "ui * bool")
#End If
            expected_tc = TypeCode.UInt32
            M(ui * b, "ui * b")
            expected_tc = TypeCode.Int64
            M(ui * sb, "ui * sb")
            expected_tc = TypeCode.Int64
            M(ui * s, "ui * s")
            expected_tc = TypeCode.UInt32
            M(ui * us, "ui * us")
            expected_tc = TypeCode.Int64
            M(ui * i, "ui * i")
            expected_tc = TypeCode.UInt32
            M(ui * ui, "ui * ui")
            expected_tc = TypeCode.Int64
            M(ui * l, "ui * l")
            expected_tc = TypeCode.UInt64
            M(ui * ul, "ui * ul")
            expected_tc = TypeCode.Decimal
            M(ui * dec, "ui * dec")
            expected_tc = TypeCode.Single
            M(ui * sng, "ui * sng")
            expected_tc = TypeCode.Double
            M(ui * dbl, "ui * dbl")
#If UInt32_ERRORS
            M(ui * chr, "ui * chr")
#End If
#If Not STRICT Or UInt32_ERRORS
            expected_tc = TypeCode.Double
            M(ui * str, "ui * str")
#End If
#If UInt32_ERRORS
            M(ui * dt, "ui * dt")
#End If
#If UInt32_ERRORS
            M(ui * dbnull, "ui * dbnull")
#End If
#If Not STRICT Or UInt32_ERRORS
            expected_tc = TypeCode.Object
            M(ui * obj, "ui * obj")
#End If
#If Not STRICT Or Int64_ERRORS
            expected_tc = TypeCode.Int64
            M(l * bool, "l * bool")
#End If
            expected_tc = TypeCode.Int64
            M(l * b, "l * b")
            expected_tc = TypeCode.Int64
            M(l * sb, "l * sb")
            expected_tc = TypeCode.Int64
            M(l * s, "l * s")
            expected_tc = TypeCode.Int64
            M(l * us, "l * us")
            expected_tc = TypeCode.Int64
            M(l * i, "l * i")
            expected_tc = TypeCode.Int64
            M(l * ui, "l * ui")
            expected_tc = TypeCode.Int64
            M(l * l, "l * l")
            expected_tc = TypeCode.Decimal
            M(l * ul, "l * ul")
            expected_tc = TypeCode.Decimal
            M(l * dec, "l * dec")
            expected_tc = TypeCode.Single
            M(l * sng, "l * sng")
            expected_tc = TypeCode.Double
            M(l * dbl, "l * dbl")
#If Int64_ERRORS
            M(l * chr, "l * chr")
#End If
#If Not STRICT Or Int64_ERRORS
            expected_tc = TypeCode.Double
            M(l * str, "l * str")
#End If
#If Int64_ERRORS
            M(l * dt, "l * dt")
#End If
#If Int64_ERRORS
            M(l * dbnull, "l * dbnull")
#End If
#If Not STRICT Or Int64_ERRORS
            expected_tc = TypeCode.Object
            M(l * obj, "l * obj")
#End If
#If Not STRICT Or UInt64_ERRORS
            expected_tc = TypeCode.Decimal
            M(ul * bool, "ul * bool")
#End If
            expected_tc = TypeCode.UInt64
            M(ul * b, "ul * b")
            expected_tc = TypeCode.Decimal
            M(ul * sb, "ul * sb")
            expected_tc = TypeCode.Decimal
            M(ul * s, "ul * s")
            expected_tc = TypeCode.UInt64
            M(ul * us, "ul * us")
            expected_tc = TypeCode.Decimal
            M(ul * i, "ul * i")
            expected_tc = TypeCode.UInt64
            M(ul * ui, "ul * ui")
            expected_tc = TypeCode.Decimal
            M(ul * l, "ul * l")
            expected_tc = TypeCode.UInt64
            M(ul * ul, "ul * ul")
            expected_tc = TypeCode.Decimal
            M(ul * dec, "ul * dec")
            expected_tc = TypeCode.Single
            M(ul * sng, "ul * sng")
            expected_tc = TypeCode.Double
            M(ul * dbl, "ul * dbl")
#If UInt64_ERRORS
            M(ul * chr, "ul * chr")
#End If
#If Not STRICT Or UInt64_ERRORS
            expected_tc = TypeCode.Double
            M(ul * str, "ul * str")
#End If
#If UInt64_ERRORS
            M(ul * dt, "ul * dt")
#End If
#If UInt64_ERRORS
            M(ul * dbnull, "ul * dbnull")
#End If
#If Not STRICT Or UInt64_ERRORS
            expected_tc = TypeCode.Object
            M(ul * obj, "ul * obj")
#End If
#If Not STRICT Or Decimal_ERRORS
            expected_tc = TypeCode.Decimal
            M(dec * bool, "dec * bool")
#End If
            expected_tc = TypeCode.Decimal
            M(dec * b, "dec * b")
            expected_tc = TypeCode.Decimal
            M(dec * sb, "dec * sb")
            expected_tc = TypeCode.Decimal
            M(dec * s, "dec * s")
            expected_tc = TypeCode.Decimal
            M(dec * us, "dec * us")
            expected_tc = TypeCode.Decimal
            M(dec * i, "dec * i")
            expected_tc = TypeCode.Decimal
            M(dec * ui, "dec * ui")
            expected_tc = TypeCode.Decimal
            M(dec * l, "dec * l")
            expected_tc = TypeCode.Decimal
            M(dec * ul, "dec * ul")
            expected_tc = TypeCode.Decimal
            M(dec * dec, "dec * dec")
            expected_tc = TypeCode.Single
            M(dec * sng, "dec * sng")
            expected_tc = TypeCode.Double
            M(dec * dbl, "dec * dbl")
#If Decimal_ERRORS
            M(dec * chr, "dec * chr")
#End If
#If Not STRICT Or Decimal_ERRORS
            expected_tc = TypeCode.Double
            M(dec * str, "dec * str")
#End If
#If Decimal_ERRORS
            M(dec * dt, "dec * dt")
#End If
#If Decimal_ERRORS
            M(dec * dbnull, "dec * dbnull")
#End If
#If Not STRICT Or Decimal_ERRORS
            expected_tc = TypeCode.Object
            M(dec * obj, "dec * obj")
#End If
#If Not STRICT Or Single_ERRORS
            expected_tc = TypeCode.Single
            M(sng * bool, "sng * bool")
#End If
            expected_tc = TypeCode.Single
            M(sng * b, "sng * b")
            expected_tc = TypeCode.Single
            M(sng * sb, "sng * sb")
            expected_tc = TypeCode.Single
            M(sng * s, "sng * s")
            expected_tc = TypeCode.Single
            M(sng * us, "sng * us")
            expected_tc = TypeCode.Single
            M(sng * i, "sng * i")
            expected_tc = TypeCode.Single
            M(sng * ui, "sng * ui")
            expected_tc = TypeCode.Single
            M(sng * l, "sng * l")
            expected_tc = TypeCode.Single
            M(sng * ul, "sng * ul")
            expected_tc = TypeCode.Single
            M(sng * dec, "sng * dec")
            expected_tc = TypeCode.Single
            M(sng * sng, "sng * sng")
            expected_tc = TypeCode.Double
            M(sng * dbl, "sng * dbl")
#If Single_ERRORS
            M(sng * chr, "sng * chr")
#End If
#If Not STRICT Or Single_ERRORS
            expected_tc = TypeCode.Double
            M(sng * str, "sng * str")
#End If
#If Single_ERRORS
            M(sng * dt, "sng * dt")
#End If
#If Single_ERRORS
            M(sng * dbnull, "sng * dbnull")
#End If
#If Not STRICT Or Single_ERRORS
            expected_tc = TypeCode.Object
            M(sng * obj, "sng * obj")
#End If
#If Not STRICT Or Double_ERRORS
            expected_tc = TypeCode.Double
            M(dbl * bool, "dbl * bool")
#End If
            expected_tc = TypeCode.Double
            M(dbl * b, "dbl * b")
            expected_tc = TypeCode.Double
            M(dbl * sb, "dbl * sb")
            expected_tc = TypeCode.Double
            M(dbl * s, "dbl * s")
            expected_tc = TypeCode.Double
            M(dbl * us, "dbl * us")
            expected_tc = TypeCode.Double
            M(dbl * i, "dbl * i")
            expected_tc = TypeCode.Double
            M(dbl * ui, "dbl * ui")
            expected_tc = TypeCode.Double
            M(dbl * l, "dbl * l")
            expected_tc = TypeCode.Double
            M(dbl * ul, "dbl * ul")
            expected_tc = TypeCode.Double
            M(dbl * dec, "dbl * dec")
            expected_tc = TypeCode.Double
            M(dbl * sng, "dbl * sng")
            expected_tc = TypeCode.Double
            M(dbl * dbl, "dbl * dbl")
#If Double_ERRORS
            M(dbl * chr, "dbl * chr")
#End If
#If Not STRICT Or Double_ERRORS
            expected_tc = TypeCode.Double
            M(dbl * str, "dbl * str")
#End If
#If Double_ERRORS
            M(dbl * dt, "dbl * dt")
#End If
#If Double_ERRORS
            M(dbl * dbnull, "dbl * dbnull")
#End If
#If Not STRICT Or Double_ERRORS
            expected_tc = TypeCode.Object
            M(dbl * obj, "dbl * obj")
#End If
#If Char_ERRORS
            M(chr * bool, "chr * bool")
#End If
#If Char_ERRORS
            M(chr * b, "chr * b")
#End If
#If Char_ERRORS
            M(chr * sb, "chr * sb")
#End If
#If Char_ERRORS
            M(chr * s, "chr * s")
#End If
#If Char_ERRORS
            M(chr * us, "chr * us")
#End If
#If Char_ERRORS
            M(chr * i, "chr * i")
#End If
#If Char_ERRORS
            M(chr * ui, "chr * ui")
#End If
#If Char_ERRORS
            M(chr * l, "chr * l")
#End If
#If Char_ERRORS
            M(chr * ul, "chr * ul")
#End If
#If Char_ERRORS
            M(chr * dec, "chr * dec")
#End If
#If Char_ERRORS
            M(chr * sng, "chr * sng")
#End If
#If Char_ERRORS
            M(chr * dbl, "chr * dbl")
#End If
#If Char_ERRORS
            M(chr * chr, "chr * chr")
#End If
#If Char_ERRORS
            M(chr * str, "chr * str")
#End If
#If Char_ERRORS
            M(chr * dt, "chr * dt")
#End If
#If Char_ERRORS
            M(chr * dbnull, "chr * dbnull")
#End If
#If Char_ERRORS
            M(chr * obj, "chr * obj")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * bool, "str * bool")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * b, "str * b")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * sb, "str * sb")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * s, "str * s")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * us, "str * us")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * i, "str * i")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * ui, "str * ui")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * l, "str * l")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * ul, "str * ul")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * dec, "str * dec")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * sng, "str * sng")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * dbl, "str * dbl")
#End If
#If String_ERRORS
            M(str * chr, "str * chr")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Double
            M(str * str, "str * str")
#End If
#If String_ERRORS
            M(str * dt, "str * dt")
#End If
#If String_ERRORS
            M(str * dbnull, "str * dbnull")
#End If
#If Not STRICT Or String_ERRORS
            expected_tc = TypeCode.Object
            M(str * obj, "str * obj")
#End If
#If DateTime_ERRORS
            M(dt * bool, "dt * bool")
#End If
#If DateTime_ERRORS
            M(dt * b, "dt * b")
#End If
#If DateTime_ERRORS
            M(dt * sb, "dt * sb")
#End If
#If DateTime_ERRORS
            M(dt * s, "dt * s")
#End If
#If DateTime_ERRORS
            M(dt * us, "dt * us")
#End If
#If DateTime_ERRORS
            M(dt * i, "dt * i")
#End If
#If DateTime_ERRORS
            M(dt * ui, "dt * ui")
#End If
#If DateTime_ERRORS
            M(dt * l, "dt * l")
#End If
#If DateTime_ERRORS
            M(dt * ul, "dt * ul")
#End If
#If DateTime_ERRORS
            M(dt * dec, "dt * dec")
#End If
#If DateTime_ERRORS
            M(dt * sng, "dt * sng")
#End If
#If DateTime_ERRORS
            M(dt * dbl, "dt * dbl")
#End If
#If DateTime_ERRORS
            M(dt * chr, "dt * chr")
#End If
#If DateTime_ERRORS
            M(dt * str, "dt * str")
#End If
#If DateTime_ERRORS
            M(dt * dt, "dt * dt")
#End If
#If DateTime_ERRORS
            M(dt * dbnull, "dt * dbnull")
#End If
#If DateTime_ERRORS
            M(dt * obj, "dt * obj")
#End If
#If DBNull_ERRORS
            M(dbnull * bool, "dbnull * bool")
#End If
#If DBNull_ERRORS
            M(dbnull * b, "dbnull * b")
#End If
#If DBNull_ERRORS
            M(dbnull * sb, "dbnull * sb")
#End If
#If DBNull_ERRORS
            M(dbnull * s, "dbnull * s")
#End If
#If DBNull_ERRORS
            M(dbnull * us, "dbnull * us")
#End If
#If DBNull_ERRORS
            M(dbnull * i, "dbnull * i")
#End If
#If DBNull_ERRORS
            M(dbnull * ui, "dbnull * ui")
#End If
#If DBNull_ERRORS
            M(dbnull * l, "dbnull * l")
#End If
#If DBNull_ERRORS
            M(dbnull * ul, "dbnull * ul")
#End If
#If DBNull_ERRORS
            M(dbnull * dec, "dbnull * dec")
#End If
#If DBNull_ERRORS
            M(dbnull * sng, "dbnull * sng")
#End If
#If DBNull_ERRORS
            M(dbnull * dbl, "dbnull * dbl")
#End If
#If DBNull_ERRORS
            M(dbnull * chr, "dbnull * chr")
#End If
#If DBNull_ERRORS
            M(dbnull * str, "dbnull * str")
#End If
#If DBNull_ERRORS
            M(dbnull * dt, "dbnull * dt")
#End If
#If DBNull_ERRORS
            M(dbnull * dbnull, "dbnull * dbnull")
#End If
#If DBNull_ERRORS
            M(dbnull * obj, "dbnull * obj")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * bool, "obj * bool")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * b, "obj * b")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * sb, "obj * sb")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * s, "obj * s")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * us, "obj * us")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * i, "obj * i")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * ui, "obj * ui")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * l, "obj * l")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * ul, "obj * ul")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * dec, "obj * dec")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * sng, "obj * sng")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * dbl, "obj * dbl")
#End If
#If Object_ERRORS
            M(obj * chr, "obj * chr")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * str, "obj * str")
#End If
#If Object_ERRORS
            M(obj * dt, "obj * dt")
#End If
#If Object_ERRORS
            M(obj * dbnull, "obj * dbnull")
#End If
#If Not STRICT Or Object_ERRORS
            expected_tc = TypeCode.Object
            M(obj * obj, "obj * obj")
#End If
        If failures > 0 Then Return 1
    Catch ex As Exception
        Console.WriteLine ("Exception: {0}", ex)
        Return 2
    End Try
    Return 0
    End Function
End Class
