// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

using System;
using Xunit;

namespace Test_i4flat_cs
{
public class test
{
    [Fact]
    [OuterLoop]
    public static int TestEntryPoint()
    {
        int x;
        int y;

        bool pass = true;

        x = -10;
        y = 4;
        x = x + y;
        if (x != -6)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x + y failed.	x: {0}, \texpected: -6\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x - y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x - y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x * y;
        if (x != -40)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x * y failed.	x: {0}, \texpected: -40\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x / y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x / y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x % y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x % y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x << y;
        if (x != -160)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x << y failed.	x: {0}, \texpected: -160\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x >> y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x >> y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x & y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x & y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x ^ y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x ^ y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x = x | y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx = x | y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x + y;
        if (x != -16)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x + y failed.	x: {0}, \texpected: -16\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x - y;
        if (x != -24)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x - y failed.	x: {0}, \texpected: -24\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x * y;
        if (x != -50)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x * y failed.	x: {0}, \texpected: -50\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x / y;
        if (x != -12)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x / y failed.	x: {0}, \texpected: -12\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x % y;
        if (x != -12)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x % y failed.	x: {0}, \texpected: -12\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x << y;
        if (x != -170)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x << y failed.	x: {0}, \texpected: -170\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x >> y;
        if (x != -11)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x >> y failed.	x: {0}, \texpected: -11\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x & y;
        if (x != -6)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x & y failed.	x: {0}, \texpected: -6\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x ^ y;
        if (x != -24)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x ^ y failed.	x: {0}, \texpected: -24\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x += x | y;
        if (x != -20)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx += x | y failed.	x: {0}, \texpected: -20\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x + y;
        if (x != -4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x + y failed.	x: {0}, \texpected: -4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x - y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x - y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x * y;
        if (x != 30)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x * y failed.	x: {0}, \texpected: 30\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x / y;
        if (x != -8)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x / y failed.	x: {0}, \texpected: -8\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x % y;
        if (x != -8)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x % y failed.	x: {0}, \texpected: -8\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x << y;
        if (x != 150)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x << y failed.	x: {0}, \texpected: 150\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x >> y;
        if (x != -9)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x >> y failed.	x: {0}, \texpected: -9\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x & y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x & y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x ^ y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x ^ y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x -= x | y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx -= x | y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x + y;
        if (x != 60)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x + y failed.	x: {0}, \texpected: 60\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x - y;
        if (x != 140)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x - y failed.	x: {0}, \texpected: 140\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x * y;
        if (x != 400)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x * y failed.	x: {0}, \texpected: 400\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x / y;
        if (x != 20)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x / y failed.	x: {0}, \texpected: 20\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x % y;
        if (x != 20)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x % y failed.	x: {0}, \texpected: 20\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x << y;
        if (x != 1600)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x << y failed.	x: {0}, \texpected: 1600\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x >> y;
        if (x != 10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x >> y failed.	x: {0}, \texpected: 10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x & y;
        if (x != -40)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x & y failed.	x: {0}, \texpected: -40\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x ^ y;
        if (x != 140)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x ^ y failed.	x: {0}, \texpected: 140\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x *= x | y;
        if (x != 100)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx *= x | y failed.	x: {0}, \texpected: 100\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x + y;
        if (x != 1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x + y failed.	x: {0}, \texpected: 1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x - y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x - y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x * y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x * y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x / y;
        if (x != 5)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x / y failed.	x: {0}, \texpected: 5\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x % y;
        if (x != 5)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x % y failed.	x: {0}, \texpected: 5\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x << y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x << y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x >> y;
        if (x != 10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x >> y failed.	x: {0}, \texpected: 10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x & y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x & y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x ^ y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x ^ y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x /= x | y;
        if (x != 1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx /= x | y failed.	x: {0}, \texpected: 1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x + y;
        if (x != -4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x + y failed.	x: {0}, \texpected: -4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x - y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x - y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x * y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x * y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x / y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x / y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x % y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x % y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x << y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x << y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x >> y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x >> y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x & y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x & y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x ^ y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x ^ y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x %= x | y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx %= x | y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x + y;
        if (x != -671088640)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x + y failed.	x: {0}, \texpected: -671088640\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x - y;
        if (x != -2621440)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x - y failed.	x: {0}, \texpected: -2621440\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x * y;
        if (x != -167772160)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x * y failed.	x: {0}, \texpected: -167772160\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x / y;
        if (x != -2147483648)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x / y failed.	x: {0}, \texpected: -2147483648\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x % y;
        if (x != -2147483648)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x % y failed.	x: {0}, \texpected: -2147483648\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x << y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x << y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x >> y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x >> y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x & y;
        if (x != -160)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x & y failed.	x: {0}, \texpected: -160\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x ^ y;
        if (x != -2621440)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x ^ y failed.	x: {0}, \texpected: -2621440\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x <<= x | y;
        if (x != -41943040)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx <<= x | y failed.	x: {0}, \texpected: -41943040\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x + y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x + y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x - y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x - y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x * y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x * y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x / y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x / y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x % y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x % y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x << y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x << y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x >> y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x >> y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x & y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x & y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x ^ y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x ^ y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x >>= x | y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx >>= x | y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x + y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x + y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x - y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x - y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x * y;
        if (x != -48)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x * y failed.	x: {0}, \texpected: -48\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x / y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x / y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x % y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x % y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x << y;
        if (x != -160)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x << y failed.	x: {0}, \texpected: -160\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x >> y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x >> y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x & y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x & y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x ^ y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x ^ y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x &= x | y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx &= x | y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x + y;
        if (x != 12)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x + y failed.	x: {0}, \texpected: 12\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x - y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x - y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x * y;
        if (x != 46)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x * y failed.	x: {0}, \texpected: 46\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x / y;
        if (x != 8)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x / y failed.	x: {0}, \texpected: 8\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x % y;
        if (x != 8)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x % y failed.	x: {0}, \texpected: 8\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x << y;
        if (x != 150)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x << y failed.	x: {0}, \texpected: 150\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x >> y;
        if (x != 9)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x >> y failed.	x: {0}, \texpected: 9\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x & y;
        if (x != -14)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x & y failed.	x: {0}, \texpected: -14\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x ^ y;
        if (x != 4)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x ^ y failed.	x: {0}, \texpected: 4\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x ^= x | y;
        if (x != 0)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx ^= x | y failed.	x: {0}, \texpected: 0\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x + y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x + y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x - y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x - y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x * y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x * y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x / y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x / y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x % y;
        if (x != -2)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x % y failed.	x: {0}, \texpected: -2\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x << y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x << y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x >> y;
        if (x != -1)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x >> y failed.	x: {0}, \texpected: -1\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x & y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x & y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x ^ y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x ^ y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        x = -10;
        y = 4;
        x |= x | y;
        if (x != -10)
        {
            Console.WriteLine("Initial parameters: x is -10 and y is 4.");
            Console.WriteLine("\tx |= x | y failed.	x: {0}, \texpected: -10\n", x);
            pass = false;
        }

        if (pass)
        {
            Console.WriteLine("PASSED.");
            return 100;
        }
        else
            return 1;
    }
}
}
