public readonly struct Vector {
public Vector(int X, int Y) {
public static Vector operator +(Vector a, Vector b)
=> new Vector(a.x + b.x, a.y + b.y);
public static Vector operator -(Vector a, Vector b)
=> new Vector(a.x - b.x, a.y - b.y);
public static Vector operator *(Vector a, int scalar)
=> new Vector(a.x * scalar, a.y * scalar);
public override string ToString() => $"({x}, {y})";
public static void Main()
var one = new Vector(10, 20);
var two = new Vector(5, 10);
Console.WriteLine(one + two);
Console.WriteLine(one - two);
Console.WriteLine(one * 5);