@classmethod<EOL><INDENT>def parse(cls, fptr, offset, length):<DEDENT>
num_bytes = offset + length - fptr.tell()<EOL>read_buffer = fptr.read(num_bytes)<EOL>ndr, = struct.unpack_from('<STR_LIT>', read_buffer, offset=<NUM_LIT:0>)<EOL>box_offset = <NUM_LIT:2><EOL>data_entry_url_box_list = []<EOL>for j in range(ndr):<EOL><INDENT>box_fptr = io.BytesIO(read_buffer[box_offset:])<EOL>box_buffer = box_fptr.read(<NUM_LIT:8>)<EOL>(box_length, box_id) = struct.unpack_from('<STR_LIT>', box_buffer,<EOL>offset=<NUM_LIT:0>)<EOL>box = DataEntryURLBox.parse(box_fptr, <NUM_LIT:0>, box_length)<EOL>box.offset = offset + <NUM_LIT:8> + box_offset<EOL>data_entry_url_box_list.append(box)<EOL>box_offset += box_length<EOL><DEDENT>return cls(data_entry_url_box_list, length=length, offset=offset)<EOL>
Parse data reference box.

        Parameters
        ----------
        fptr : file
            Open file object.
        offset : int
            Start position of box in bytes.
        length : int
            Length of the box in bytes.

        Returns
        -------
        DataReferenceBox
            Instance of the current data reference box.