<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_original_function_name(self, line, col, minified_name, minified_source):
 """Given a token location and a minified function name and the minified source file this returns the original function name if it can be found of the minified function in scope. """

        # Silently ignore underflows
        if line < 0 or col < 0:
            return None
        minified_name = minified_name.encode('utf-8')
        sout = _ffi.new('const char **')
        try:
            slen = rustcall(_lib.lsm_view_get_original_function_name,
                            self._get_ptr(), line, col, minified_name,
                            minified_source, sout)
            if slen > 0:
                return _ffi.unpack(sout[0], slen).decode('utf-8', 'replace')
        except SourceMapError:
            # In some rare cases the library is/was known to panic.  We do
            # not want to report this upwards  (this happens on slicing
            # out of range on older rust versions in the rust-sourcemap
            # library)
            pass