namespace Day9; public record Sequence(long[] Numbers) { public bool IsZeros() => Numbers.All(n => n == 0); public Sequence Difference() { var diff = new long[Numbers.Length - 1]; for (var i = 0; i < Numbers.Length - 1; i++) { diff[i] = Numbers[i + 1] - Numbers[i]; } return new Sequence(diff); } public long Next(long delta) { return Numbers.Last() + delta; } public long Prev(long delta) { return Numbers.First() - delta; } }