It could be fixed size.  I’m using linecache for the getitem so that it need reading all the line for the first time? as you describe the reading process could be an random access rather than an sequential access, right?