Loads NTFS volume information

        Args:
            filename (str): Path to file/device to read the volume \
            information from.
            offset (uint): Valid NTFS partition offset from the beginning \
            of the file/device.

        Raises:
            IOError: If source file/device does not exist or is not readable

def load(self, filename, offset):
        """Loads NTFS volume information

        Args:
            filename (str): Path to file/device to read the volume \
            information from.
            offset (uint): Valid NTFS partition offset from the beginning \
            of the file/device.

        Raises:
            IOError: If source file/device does not exist or is not readable
        """
        self.offset = offset
        self.filename = filename

        self.bootsector = BootSector(
            filename=filename,
            length=NTFS_BOOTSECTOR_SIZE,
            offset=self.offset)

        self.mft_table = MftTable(
            mft_entry_size=self.bootsector.mft_record_size,
            filename=self.filename,
            offset=self.mft_table_offset
        )

        self.mft_table.preload_entries(NUM_SYSTEM_ENTRIES)

        self._load_volume_information()