public static void Main()
var a = new root("name");
var b = new extended(a, "surname");
public record root (string name);
public record extended (string surname, string name) : root (name)
public extended(root copy, string surname): this(surname, copy.name) { }