0
     ˆÄÊƒn‡ÃÂÈ #    /* File object interface (what's left of it -- see io.py) */

#ifndef Py_FILEOBJECT_H
#define Py_FILEOBJECT_H
#ifdef __cplusplus
extern "C" {
#endif

#define PY_STDIOTEXTMODE "b"

PyAPI_FUNC(PyObject *) PyFile_FromFd(int, const char *, const char *, int,
                                     const char *, const char *,
                                     const char *, int);
PyAPI_FUNC(PyObject *) PyFile_GetLine(PyObject *, int);
PyAPI_FUNC(int) PyFile_WriteObject(PyObject *, PyObject *, int);
PyAPI_FUNC(int) PyFile_WriteString(const char *, PyObject *);
PyAPI_FUNC(int) PyObject_AsFileDescriptor(PyObject *);

/* The default encoding used by the platform file system APIs
   If non-NULL, this is different than the default encoding for strings
*/
PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding;
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03060000
PyAPI_DATA(const char *) Py_FileSystemDefaultEncodeErrors;
#endif
PyAPI_DATA(int) Py_HasFileSystemDefaultEncoding;

#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03070000
PyAPI_DATA(int) Py_UTF8Mode;
#endif

/* A routine to check if a file descriptor can be select()-ed. */
#ifdef _MSC_VER
    /* On Windows, any socket fd can be select()-ed, no matter how high */
    #define _PyIsSelectable_fd(FD) (1)
#else
    #define _PyIsSelectable_fd(FD) ((unsigned int)(FD) < (unsigned int)FD_SETSIZE)
#endif

#ifndef Py_LIMITED_API
#  define Py_CPYTHON_FILEOBJECT_H
#  include  "cpython/fileobject.h"
#  undef Py_CPYTHON_FILEOBJECT_H
#endif

#ifdef __cplusplus
}
#endif
#endif /* !Py_FILEOBJECT_H */
  #   ˆl–äY>”ªC]Ši@¿pA¸ØTÅ£Ë„x._ÃÉ ?÷     §
   ƒ-	CÁyWã                   ó„  — d Z g d¢ZddlmZ ddlmZ ddlm	Z	  edd¦  «        Z
d„ Z G d	„ d
¦  «        Zd+d„Zd„ Z G d„ d¦  «        ZddlZ ej        d¦  «        j        fd„Zd,d„Zd„ Z	 	 d-d„Zd„ Z	 	 d-d„Zd„ Z	 	 d.d„Zdefd „Zddefd!„Zd"Zd#Zd$Zd%Z  G d&„ d'e!¦  «        Z"[d(„ Z#d)„ Z$e%d*k    r e$¦   «          dS dS )/ae  
Module difflib -- helpers for computing deltas between objects.

Function get_close_matches(word, possibilities, n=3, cutoff=0.6):
    Use SequenceMatcher to return list of the best "good enough" matches.

Function context_diff(a, b):
    For two lists of strings, return a delta in context diff format.

Function ndiff(a, b):
    Return a delta: the difference between `a` and `b` (lists of strings).

Function restore(delta, which):
    Return one of the two sequences that generated an ndiff delta.

Function unified_diff(a, b):
    For two lists of strings, return a delta in unified diff format.

Class SequenceMatcher:
    A flexible class for comparing pairs of sequences of any type.

Class Differ:
    For producing human-readable deltas from sequences of lines of text.

Class HtmlDiff:
    For producing HTML side by side comparison with change highlights.
)Úget_close_matchesÚndiffÚrestoreÚSequenceMatcherÚDifferÚIS_CHARACTER_JUNKÚIS_LINE_JUNKÚcontext_diffÚunified_diffÚ
diff_bytesÚHtmlDiffÚMatché    )Únlargest)Ú
namedtuple)ÚGenericAliasr   za b sizec                 ó   — |rd| z  |z  S dS )Ng       @ç      ð?© )ÚmatchesÚlengths     ú./opt/alt/python311/lib64/python3.11/difflib.pyÚ_calculate_ratior   '   s   € Øð &Ø�W‰}˜vÑ%Ð%Øˆ3ó    c                   óv   — e Zd ZdZdd„Zd„ Zd„ Zd„ Zd	„ Zdd„Z	d„ Z
d„ Zdd„Zd„ Zd„ Zd„ Z ee¦  «        ZdS )r   ao  
    SequenceMatcher is a flexible class for comparing pairs of sequences of
    any type, so long as the sequence elements are hashable.  The basic
    algorithm predates, and is a little fancier than, an algorithm
    published in the late 1980's by Ratcliff and Obershelp under the
    hyperbolic name "gestalt pattern matching".  The basic idea is to find
    the longest contiguous matching subsequence that contains no "junk"
    elements (R-O doesn't address junk).  The same idea is then applied
    recursively to the pieces of the sequenc