using System.Collections.Generic;
public static void Main()
var a = new A(1, 2, "3", "4", false, false, true);
var b = new B(11, 12, 1, 2, "3", "4", false, false, true);
var c = new C("111", "222", 11, 12, 1, 2, "3", "4", false, false, true);
Console.WriteLine("Ok? Not ok!");
public record A(int a1, int a2, string a3, string a4, bool a5, bool a6, bool a7) {}
public record B(int b1, int b2, int a1, int a2, string a3, string a4, bool a5, bool a6, bool a7): A(a1, a2, a3, a4, a5, a6, a7) { }
public record C(string c1, string c2, int b1, int b2, int a1, int a2, string a3, string a4, bool a5, bool a6, bool a7): B(b1, b2, a1, a2, a3, a4, a5, a6, a7) { }