@staticmethod
def split_header(fp):
    """
        Read file pointer and return pair of lines lists:
        first - header, second - the rest.
        """
    body_start, header_ended = 0, False
    lines = []
    for line in fp:
        if line.startswith('#') and not header_ended:
            body_start += 1
        else:
            header_ended = True
        lines.append(line)
    return lines[:body_start], lines[body_start:]
