private DateTimeOffset GetMedianPrevHeaderTime(Chain chain, int height)
{
if (height == 0)
return DateTimeOffset.FromUnixTimeSeconds(0);
var medianTimeSpan = Math.Min(11, height);
var prevHeaderTimes = chain.Blocks.GetRange(height - medianTimeSpan, medianTimeSpan)
//TODO pull tester doesn't fail if the sort step is missed
.OrderBy(x => x.Time).ToList();
return prevHeaderTimes[prevHeaderTimes.Count / 2].Time;
}