def _load_relationship_info(self):
        """Maps parent and child entries in the MFT.

        Because the library expects the MFT file to be provided, it doesn't
        have access to anything non-resident. Because of that, if we want all
        the information related to the entry, it is necessary to visit all the
        entries and map the relationship between each of them.

        Note:
            Because the data necessary to do this should always happen before
            the first fixup entry, we don't need to apply it.
        """
        mft_entry_size = self.mft_entry_size
        fp = self.file_pointer
        record_n = 0
        #define the minimum amount that needs to be read
        base_struct = struct.Struct("<Q")
        base_struct_offset = 32
        seq_struct = struct.Struct("<H")
        seq_struct_offset = 16

        buffer_base = bytearray(base_struct.size)
        buffer_seq = bytearray(seq_struct.size)
        #go over the file using the entry size as setp
        for i in range(0, _get_file_size(self.file_pointer), mft_entry_size):
            record_n = int(i/mft_entry_size)
            fp.seek(i + base_struct_offset)
            fp.readinto(buffer_base)
            base_ref, base_seq = get_file_reference(base_struct.unpack(buffer_base)[0])
            if base_ref:
                #calculate and prepare to read the sequence number
                fp.seek((base_ref * mft_entry_size) + seq_struct_offset)
                fp.readinto(buffer_seq)
                seq, = seq_struct.unpack(buffer_seq)
                if seq == base_seq: #entries are related
                    self._entries_parent_child[base_ref].append(record_n)
                    self._entries_child_parent[record_n] = base_ref
                else:
                    self._number_valid_entries += 1
            else:
                self._number_valid_entries += 1
Maps parent and child entries in the MFT.

        Because the library expects the MFT file to be provided, it doesn't
        have access to anything non-resident. Because of that, if we want all
        the information related to the entry, it is necessary to visit all the
        entries and map the relationship between each of them.

        Note:
            Because the data necessary to do this should always happen before
            the first fixup entry, we don't need to apply it.