<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def open_ext_pack_file(self, path):
 """Attempts to open an extension pack file in preparation for installation. in path of type str The path of the extension pack tarball. This can optionally be followed by a "::SHA-256=hex-digit" of the tarball. return file_p of type :class:`IExtPackFile` The interface of the extension pack file object. """

        if not isinstance(path, basestring):
            raise TypeError("path can only be an instance of type basestring")
        file_p = self._call("openExtPackFile",
                     in_p=[path])
        file_p = IExtPackFile(file_p)
        return file_p