private Header TestLength(Header head) { int maxPathLength = head.MaxPathLength; string str = $"Max path length of {Path.GetFileName(In.First())}: {maxPathLength}\n" + $"Dest path length: {Path_.Length}\n" + $"Total+1 ({Path_.Length + maxPathLength + 1}) must be less than {max_path}\n" + $"And the path of {Path.GetFileName(In.First())}: {In.First().Length}\n" + $"must also be less than {max_path}"; if (In.First().Length >= max_path || Path_.Length + maxPathLength + 1 >= max_path) { throw new PathTooLongException(Logger.WriteLine(str)); } else { Logger.WriteLine(str, true); } return(head); }