public static class EnumerableExtensions
{
    public static IEnumerable<(T,W)> Lag<T,W>(this IEnumerable<T> source,Func<T,W> selector,W seed)
    {
        var sequence=source.Select(selector).ToList();
        sequence.Insert(0, seed);
        return source.Zip(sequence);
    }
}