public LayoutHelper(HexBufferLineProvider bufferLines, HexLineTransformProvider lineTransformProvider, double newViewportTop, HashSet<HexViewLine> oldVisibleLines, List<PhysicalLine> oldLines, HexFormattedLineSource formattedLineSource) {
				this.bufferLines = bufferLines;
				this.lineTransformProvider = lineTransformProvider;
				requestedViewportTop = newViewportTop;
				this.oldLines = oldLines;
				this.formattedLineSource = formattedLineSource;
				toPhysicalLine = new Dictionary<HexFormattedLine, PhysicalLine>();
				this.oldVisibleLines = oldVisibleLines;

				foreach (var physLine in oldLines) {
					foreach (var line in physLine.Lines)
						toPhysicalLine[line] = physLine;
				}
			}
            public LayoutHelper(HexBufferLineFormatter bufferLines, HexLineTransformProvider lineTransformProvider, double newViewportTop, HashSet <HexViewLine> oldVisibleLines, List <PhysicalLine> oldLines, HexFormattedLineSource formattedLineSource)
            {
                this.bufferLines           = bufferLines;
                this.lineTransformProvider = lineTransformProvider;
                requestedViewportTop       = newViewportTop;
                this.oldLines            = oldLines;
                this.formattedLineSource = formattedLineSource;
                toPhysicalLine           = new Dictionary <HexFormattedLine, PhysicalLine>();
                this.oldVisibleLines     = oldVisibleLines;

                foreach (var physLine in oldLines)
                {
                    foreach (var line in physLine.Lines)
                    {
                        toPhysicalLine[line] = physLine;
                    }
                }
            }