public static void Main()
        {
            Program program = new Program();
            var     paramA;

            if (true)
            {
                paramA = new NodeA();
            }
            else
            {
                paramA = new NodeB();
            }

            var paramB;

            if (true)
            {
                paramB = new NodeB();
            }
            else
            {
                paramB = new NodeA();
            }
            object result = GetParamData(paramA, paramB);

            System.Console.WriteLine("Result {0} ", result.ToString());
        }
        public static void Main()
        {
            var args;

            if (true)
            {
                args = new NodeA();
            }
            else
            {
                args = new NodeB();
            }
            var result = GetData(args);

            System.Console.WriteLine("Result {0} ", result.ToString());
        }