Begin;
Initialize;
InitializeSession "TESTDB";
Command "create database TESTDB";
TerminateSession;
InitializeSession "TESTDB";
Command "create table T_1 (dec1 decimal(2, 0), int2 int)";
Command "insert T_1 values (0, 123)";
Command "select dec1 + int2 from T_1";
Command "select int2 + dec1 from T_1";
Command "drop table T_1";
Command "create table T_2 (dec1 decimal(2, 0), int2 int)";
Command "insert T_2 values (0, 2147483647)";
Command "select dec1 - int2 from T_2";
Command "select int2 - dec1 from T_2";
Command "drop table T_2";
Command "create table T_3 (dec1 decimal(2, 0), int2 int)";
Command "insert T_3 values (0, -2147483648)";
Command "select dec1 * int2 from T_3";
Command "select int2 * dec1 from T_3";
Command "drop table T_3";
Command "create table T_4 (dec1 decimal(10, 5), int2 int)";
Command "insert T_4 values (-1, 2147483647)";
Command "select dec1 + int2 from T_4";
Command "select int2 + dec1 from T_4";
Command "drop table T_4";
Command "create table T_5 (dec1 decimal(10, 5), int2 int)";
Command "insert T_5 values (-1, 123)";
Command "select dec1 - int2 from T_5";
Command "select int2 - dec1 from T_5";
Command "drop table T_5";
Command "create table T_6 (dec1 decimal(10, 5), int2 int)";
Command "insert T_6 values (-1, 123)";
Command "select dec1 * int2 from T_6";
Command "select int2 * dec1 from T_6";
Command "drop table T_6";
Command "create table T_7 (dec1 decimal(10, 5), int2 int)";
Command "insert T_7 values (-1, -2147483648)";
Command "select dec1 / int2 from T_7";
Command "select int2 / dec1 from T_7";
Command "drop table T_7";
Command "create table T_8 (dec1 decimal(36, 36), int2 int)";
Command "insert T_8 values (0.000000000000000000000000000000000001, -2147483648)";
Command "select dec1 + int2 from T_8";
Command "select 0.000000000000000000000000000000000001 + int2 from T_8";
Command "select int2 + dec1 from T_8";
Command "select int2 + 0.000000000000000000000000000000000001 from T_8";
Command "drop table T_8";
Command "create table T_9 (dec1 decimal(36, 36), int2 int)";
Command "insert T_9 values (0.000000000000000000000000000000000001, 123)";
Command "select dec1 - int2 from T_9";
Command "select 0.000000000000000000000000000000000001 - int2 from T_9";
Command "select int2 - dec1 from T_9";
Command "select int2 - 0.000000000000000000000000000000000001 from T_9";
Command "drop table T_9";
Command "create table T_10 (dec1 decimal(36, 36), int2 int)";
Command "insert T_10 values (0.000000000000000000000000000000000001, 2147483647)";
Command "select dec1 * int2 from T_10";
Command "select 0.000000000000000000000000000000000001 * int2 from T_10";
Command "select int2 * dec1 from T_10";
Command "select int2 * 0.000000000000000000000000000000000001 from T_10";
Command "drop table T_10";
Command "create table T_11 (dec1 decimal(2, 1), int2 int)";
Command "insert T_11 values (-6.5, -2147483648)";
Command "select dec1 - int2 from T_11";
Command "select int2 - dec1 from T_11";
Command "drop table T_11";
Command "create table T_12 (dec1 decimal(2, 1), int2 int)";
Command "insert T_12 values (-6.5, 123)";
Command "select dec1 / int2 from T_12";
Command "select int2 / dec1 from T_12";
Command "drop table T_12";
Command "create table T_13 (dec1 decimal(2, 1), int2 int)";
Command "insert T_13 values (-6.5, 2147483647)";
Command "select dec1 + int2 from T_13";
Command "select int2 + dec1 from T_13";
Command "drop table T_13";
Command "create table T_14 (dec1 decimal(36, 0), int2 int)";
Command "insert T_14 values (-1, 2147483647)";
Command "select dec1 / int2 from T_14";
Command "select -1 / int2 from T_14";
Command "select int2 / dec1 from T_14";
Command "select int2 / -1 from T_14";
Command "drop table T_14";
Command "create table T_15 (dec1 decimal(36, 0), int2 int)";
Command "insert T_15 values (-1, 123)";
Command "select dec1 + int2 from T_15";
Command "select -1 + int2 from T_15";
Command "select int2 + dec1 from T_15";
Command "select int2 + -1 from T_15";
Command "drop table T_15";
Command "create table T_16 (dec1 decimal(36, 0), int2 int)";
Command "insert T_16 values (-1, -2147483648)";
Command "select dec1 - int2 from T_16";
Command "select -1 - int2 from T_16";
Command "select int2 - dec1 from T_16";
Command "select int2 - -1 from T_16";
Command "drop table T_16";
Command "create table T_17 (dec1 decimal(36, 18), int2 int)";
Command "insert T_17 values (654321098765432109.876543210987654321, -2147483648)";
Command "select dec1 + int2 from T_17";
Command "select 654321098765432109.876543210987654321 + int2 from T_17";
Command "select int2 + dec1 from T_17";
Command "select int2 + 654321098765432109.876543210987654321 from T_17";
Command "drop table T_17";
Command "create table T_18 (dec1 decimal(36, 18), int2 int)";
Command "insert T_18 values (654321098765432109.876543210987654321, 2147483647)";
Command "select dec1 - int2 from T_18";
Command "select 654321098765432109.876543210987654321 - int2 from T_18";
Command "select int2 - dec1 from T_18";
Command "select int2 - 654321098765432109.876543210987654321 from T_18";
Command "drop table T_18";
Command "create table T_19 (dec1 decimal(36, 18), int2 int)";
Command "insert T_19 values (654321098765432109.876543210987654321, 123)";
Command "select dec1 * int2 from T_19";
Command "select 654321098765432109.876543210987654321 * int2 from T_19";
Command "select int2 * dec1 from T_19";
Command "select int2 * 654321098765432109.876543210987654321 from T_19";
Command "drop table T_19";
Command "create table T_20 (dec1 decimal(2, 1), int2 int)";
Command "insert T_20 values (-0.1, 2147483647)";
Command "select dec1 * int2 from T_20";
Command "select int2 * dec1 from T_20";
Command "drop table T_20";
Command "create table T_21 (dec1 decimal(2, 1), int2 int)";
Command "insert T_21 values (-0.1, 123)";
Command "select dec1 / int2 from T_21";
Command "select int2 / dec1 from T_21";
Command "drop table T_21";
Command "create table T_22 (dec1 decimal(2, 1), int2 int)";
Command "insert T_22 values (-0.1, -2147483648)";
Command "select dec1 + int2 from T_22";
Command "select int2 + dec1 from T_22";
Command "drop table T_22";
Command "create table T_23 (dec1 decimal(36, 18), int2 int)";
Command "insert T_23 values (0, -2147483648)";
Command "select dec1 * int2 from T_23";
Command "select 0 * int2 from T_23";
Command "select int2 * dec1 from T_23";
Command "select int2 * 0 from T_23";
Command "drop table T_23";
Command "create table T_24 (dec1 decimal(36, 18), int2 int)";
Command "insert T_24 values (0, 2147483647)";
Command "select dec1 / int2 from T_24";
Command "select 0 / int2 from T_24";
Command "drop table T_24";
Command "create table T_25 (dec1 decimal(36, 18), int2 int)";
Command "insert T_25 values (0, 123)";
Command "select dec1 + int2 from T_25";
Command "select 0 + int2 from T_25";
Command "select int2 + dec1 from T_25";
Command "select int2 + 0 from T_25";
Command "drop table T_25";
Command "create table T_26 (dec1 decimal(10, 0), int2 int)";
Command "insert T_26 values (-6543210987, -2147483648)";
Command "select dec1 / int2 from T_26";
Command "select int2 / dec1 from T_26";
Command "drop table T_26";
Command "create table T_27 (dec1 decimal(10, 0), int2 int)";
Command "insert T_27 values (-6543210987, 2147483647)";
Command "select dec1 + int2 from T_27";
Command "select int2 + dec1 from T_27";
Command "drop table T_27";
Command "create table T_28 (dec1 decimal(10, 0), int2 int)";
Command "insert T_28 values (-6543210987, 123)";
Command "select dec1 - int2 from T_28";
Command "select int2 - dec1 from T_28";
Command "drop table T_28";
Command "create table T_29 (dec1 decimal(10, 10), int2 int)";
Command "insert T_29 values (0.6543210987, 2147483647)";
Command "select dec1 - int2 from T_29";
Command "select int2 - dec1 from T_29";
Command "drop table T_29";
Command "create table T_30 (dec1 decimal(10, 10), int2 int)";
Command "insert T_30 values (0.6543210987, 123)";
Command "select dec1 * int2 from T_30";
Command "select int2 * dec1 from T_30";
Command "drop table T_30";
Command "create table T_31 (dec1 decimal(10, 10), int2 int)";
Command "insert T_31 values (0.6543210987, -2147483648)";
Command "select dec1 / int2 from T_31";
Command "select int2 / dec1 from T_31";
Command "drop table T_31";
Command "create table T_32 (dec1 decimal(2, 0), int2 int)";
Command "insert T_32 values (0, 123)";
Command "select dec1 / int2 from T_32";
Command "drop table T_32";
Command "create table T_33 (dec1 decimal(36, 36), int2 int)";
Command "insert T_33 values (0.000000000000000000000000000000000001, 2147483647)";
Command "select dec1 / int2 from T_33";
Command "select 0.000000000000000000000000000000000001 / int2 from T_33";
Command "select int2 / dec1 from T_33";
Command "select int2 / 0.000000000000000000000000000000000001 from T_33";
Command "drop table T_33";
Command "create table T_34 (dec1 decimal(2, 1), int2 int)";
Command "insert T_34 values (-6.5, 2147483647)";
Command "select dec1 * int2 from T_34";
Command "select int2 * dec1 from T_34";
Command "drop table T_34";
Command "create table T_35 (dec1 decimal(36, 0), int2 int)";
Command "insert T_35 values (-1, -2147483648)";
Command "select dec1 * int2 from T_35";
Command "select -1 * int2 from T_35";
Command "select int2 * dec1 from T_35";
Command "select int2 * -1 from T_35";
Command "drop table T_35";
Command "create table T_36 (dec1 decimal(36, 18), int2 int)";
Command "insert T_36 values (654321098765432109.876543210987654321, 123)";
Command "select dec1 / int2 from T_36";
Command "select 654321098765432109.876543210987654321 / int2 from T_36";
Command "select int2 / dec1 from T_36";
Command "select int2 / 654321098765432109.876543210987654321 from T_36";
Command "drop table T_36";
Command "create table T_37 (dec1 decimal(2, 1), int2 int)";
Command "insert T_37 values (-0.1, -2147483648)";
Command "select dec1 - int2 from T_37";
Command "select int2 - dec1 from T_37";
Command "drop table T_37";
Command "create table T_38 (dec1 decimal(36, 18), int2 int)";
Command "insert T_38 values (0, 123)";
Command "select dec1 - int2 from T_38";
Command "select 0 - int2 from T_38";
Command "select int2 - dec1 from T_38";
Command "select int2 - 0 from T_38";
Command "drop table T_38";
Command "create table T_39 (dec1 decimal(10, 0), int2 int)";
Command "insert T_39 values (-6543210987, 123)";
Command "select dec1 * int2 from T_39";
Command "select int2 * dec1 from T_39";
Command "drop table T_39";
Command "create table T_40 (dec1 decimal(10, 10), int2 int)";
Command "insert T_40 values (0.6543210987, 123)";
Command "select dec1 + int2 from T_40";
Command "select int2 + dec1 from T_40";
Command "drop table T_40";
TerminateSession;
InitializeSession "TESTDB";
Command "drop database TESTDB";
TerminateSession;
Terminate;
End;
