public void A()
        {
            var target = new Target();
            var p = new Param();
            var p2 = new OtherParam();
            object x = new Param();

            target.M(p);
            target.M(p2);
            target.M(x);
            target.M(p, p2);
            target.M(x, x);
        }