/* goodG2B() - use goodsource and badsink */
        private static void GoodG2B()
        {
            uint data;

            /* FIX: Use a hardcoded number that won't cause underflow, overflow, divide by zero, or loss-of-precision issues */
            data = 2;
            uint[] dataArray = new uint[5];
            dataArray[2] = data;
            CWE190_Integer_Overflow__UInt32_rand_add_66b.GoodG2BSink(dataArray);
        }
        /* goodB2G() - use badsource and goodsink */
        private static void GoodB2G()
        {
            uint data;

            /* POTENTIAL FLAW: Use a random value */
            data = (uint)(new Random().Next(1 << 30)) << 2 | (uint)(new Random().Next(1 << 2));
            uint[] dataArray = new uint[5];
            dataArray[2] = data;
            CWE190_Integer_Overflow__UInt32_rand_add_66b.GoodB2GSink(dataArray);
        }
        public override void Bad()
        {
            uint data;

            /* POTENTIAL FLAW: Use a random value */
            data = (uint)(new Random().Next(1 << 30)) << 2 | (uint)(new Random().Next(1 << 2));
            uint[] dataArray = new uint[5];
            dataArray[2] = data;
            CWE190_Integer_Overflow__UInt32_rand_add_66b.BadSink(dataArray);
        }