Comparison operators overloading in C#

class Point {
    public int x;
    public int y;

    public Point(int x, int y) {
        this.x = x;
        this.y = y;
    }

    public static bool operator >(Point left, Point right) {
        return left.x > right.x && left.y > right.y;
    }

    public static bool operator <(Point left, Point right) {
        return left.x < right.x && left.y < right.y;
    }
}

var p1 = new Point(1, 2);
var p2 = new Point(2, 3);

var b1 = p1 > p2;
//b1 is False
var b2 = p1 < p2;
//b2 is True