404

[ Avaa Bypassed ]




Upload:

Command:

elspacio@18.223.195.30: ~ $
from _weakrefset import WeakSet


def get_cache_token():
    """Returns the current ABC cache token.

    The token is an opaque object (supporting equality testing) identifying the
    current version of the ABC cache for virtual subclasses. The token changes
    with every call to ``register()`` on any ABC.
    """
    return ABCMeta._abc_invalidation_counter


class ABCMeta(type):
    """Metaclass for defining Abstract Base Classes (ABCs).

    Use this metaclass to create an ABC.  An ABC can be subclassed
    directly, and then acts as a mix-in class.  You can also register
    unrelated concrete classes (even built-in classes) and unrelated
    ABCs as 'virtual subclasses' -- these and their descendants will
    be considered subclasses of the registering ABC by the built-in
    issubclass() function, but the registering ABC won't show up in
    their MRO (Method Resolution Order) nor will method
    implementations defined by the registering ABC be callable (not
    even via super()).
    """

    # A global counter that is incremented each time a class is
    # registered as a virtual subclass of anything.  It forces the
    # negative cache to be cleared before its next use.
    # Note: this counter is private. Use `abc.get_cache_token()` for
    #       external code.
    _abc_invalidation_counter = 0

    def __new__(mcls, name, bases, namespace, /, **kwargs):
        cls = super().__new__(mcls, name, bases, namespace, **kwargs)
        # Compute set of abstract method names
        abstracts = {name
                     for name, value in namespace.items()
                     if getattr(value, "__isabstractmethod__", False)}
        for base in bases:
            for name in getattr(base, "__abstractmethods__", set()):
                value = getattr(cls, name, None)
                if getattr(value, "__isabstractmethod__", False):
                    abstracts.add(name)
        cls.__abstractmethods__ = frozenset(abstracts)
        # Set up inheritance registry
        cls._abc_registry = WeakSet()
        cls._abc_cache = WeakSet()
        cls._abc_negative_cache = WeakSet()
        cls._abc_negative_cache_version = ABCMeta._abc_invalidation_counter
        return cls

    def register(cls, subclass):
        """Register a virtual subclass of an ABC.

        Returns the subclass, to allow usage as a class decorator.
        """
        if not isinstance(subclass, type):
            raise TypeError("Can only register classes")
        if issubclass(subclass, cls):
            return subclass  # Already a subclass
        # Subtle: test for cycles *after* testing for "already a subclass";
        # this means we allow X.register(X) and interpret it as a no-op.
        if issubclass(cls, subclass):
            # This would create a cycle, which is bad for the algorithm below
            raise RuntimeError("Refusing to create an inheritance cycle")
        cls._abc_registry.add(subclass)
        ABCMeta._abc_invalidation_counter += 1  # Invalidate negative cache
        return subclass

    def _dump_registry(cls, file=None):
        """Debug helper to print the ABC registry."""
        print(f"Class: {cls.__module__}.{cls.__qualname__}", file=file)
        print(f"Inv. counter: {get_cache_token()}", file=file)
        for name in cls.__dict__:
            if name.startswith("_abc_"):
                value = getattr(cls, name)
                if isinstance(value, WeakSet):
                    value = set(value)
                print(f"{name}: {value!r}", file=file)

    def _abc_registry_clear(cls):
        """Clear the registry (for debugging or testing)."""
        cls._abc_registry.clear()

    def _abc_caches_clear(cls):
        """Clear the caches (for debugging or testing)."""
        cls._abc_cache.clear()
        cls._abc_negative_cache.clear()

    def __instancecheck__(cls, instance):
        """Override for isinstance(instance, cls)."""
        # Inline the cache checking
        subclass = instance.__class__
        if subclass in cls._abc_cache:
            return True
        subtype = type(instance)
        if subtype is subclass:
            if (cls._abc_negative_cache_version ==
                ABCMeta._abc_invalidation_counter and
                subclass in cls._abc_negative_cache):
                return False
            # Fall back to the subclass check.
            return cls.__subclasscheck__(subclass)
        return any(cls.__subclasscheck__(c) for c in (subclass, subtype))

    def __subclasscheck__(cls, subclass):
        """Override for issubclass(subclass, cls)."""
        if not isinstance(subclass, type):
            raise TypeError('issubclass() arg 1 must be a class')
        # Check cache
        if subclass in cls._abc_cache:
            return True
        # Check negative cache; may have to invalidate
        if cls._abc_negative_cache_version < ABCMeta._abc_invalidation_counter:
            # Invalidate the negative cache
            cls._abc_negative_cache = WeakSet()
            cls._abc_negative_cache_version = ABCMeta._abc_invalidation_counter
        elif subclass in cls._abc_negative_cache:
            return False
        # Check the subclass hook
        ok = cls.__subclasshook__(subclass)
        if ok is not NotImplemented:
            assert isinstance(ok, bool)
            if ok:
                cls._abc_cache.add(subclass)
            else:
                cls._abc_negative_cache.add(subclass)
            return ok
        # Check if it's a direct subclass
        if cls in getattr(subclass, '__mro__', ()):
            cls._abc_cache.add(subclass)
            return True
        # Check if it's a subclass of a registered class (recursive)
        for rcls in cls._abc_registry:
            if issubclass(subclass, rcls):
                cls._abc_cache.add(subclass)
                return True
        # Check if it's a subclass of a subclass (recursive)
        for scls in cls.__subclasses__():
            if issubclass(subclass, scls):
                cls._abc_cache.add(subclass)
                return True
        # No dice; update negative cache
        cls._abc_negative_cache.add(subclass)
        return False

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
asyncio Folder 0755
collections Folder 0755
concurrent Folder 0755
config-3.11-x86_64-linux-gnu Folder 0755
ctypes Folder 0755
curses Folder 0755
dbm Folder 0755
distutils Folder 0755
email Folder 0755
encodings Folder 0755
ensurepip Folder 0755
html Folder 0755
http Folder 0755
importlib Folder 0755
json Folder 0755
lib-dynload Folder 0755
lib2to3 Folder 0755
logging Folder 0755
multiprocessing Folder 0755
pydoc_data Folder 0755
re Folder 0755
site-packages Folder 0755
sqlite3 Folder 0755
tomllib Folder 0755
unittest Folder 0755
urllib Folder 0755
venv Folder 0755
wsgiref Folder 0755
xml Folder 0755
xmlrpc Folder 0755
zoneinfo Folder 0755
LICENSE.txt File 13.61 KB 0644
__future__.py File 5.1 KB 0644
__hello__.py File 227 B 0644
_aix_support.py File 3.31 KB 0644
_bootsubprocess.py File 2.61 KB 0644
_collections_abc.py File 29.49 KB 0644
_compat_pickle.py File 8.56 KB 0644
_compression.py File 5.55 KB 0644
_markupbase.py File 14.31 KB 0644
_osx_support.py File 21.51 KB 0644
_py_abc.py File 6.04 KB 0644
_pydecimal.py File 223.83 KB 0644
_pyio.py File 91.99 KB 0644
_sitebuiltins.py File 3.05 KB 0644
_strptime.py File 24.58 KB 0644
_sysconfigdata__linux_x86_64-linux-gnu.py File 57.28 KB 0644
_sysconfigdata_d_linux_x86_64-linux-gnu.py File 56.52 KB 0644
_threading_local.py File 7.05 KB 0644
_weakrefset.py File 5.75 KB 0644
abc.py File 6.38 KB 0644
aifc.py File 33.41 KB 0644
antigravity.py File 500 B 0644
argparse.py File 97.93 KB 0644
ast.py File 60 KB 0644
asynchat.py File 11.3 KB 0644
asyncore.py File 19.83 KB 0644
base64.py File 20.55 KB 0755
bdb.py File 31.7 KB 0644
bisect.py File 3.06 KB 0644
bz2.py File 11.57 KB 0644
cProfile.py File 6.21 KB 0755
calendar.py File 24.15 KB 0644
cgi.py File 33.63 KB 0755
cgitb.py File 12.13 KB 0644
chunk.py File 5.37 KB 0644
cmd.py File 14.52 KB 0644
code.py File 10.37 KB 0644
codecs.py File 36.28 KB 0644
codeop.py File 5.77 KB 0644
colorsys.py File 3.97 KB 0644
compileall.py File 19.78 KB 0644
configparser.py File 54.36 KB 0644
contextlib.py File 26.77 KB 0644
contextvars.py File 129 B 0644
copy.py File 8.48 KB 0644
copyreg.py File 7.5 KB 0644
crypt.py File 3.82 KB 0644
csv.py File 15.65 KB 0644
dataclasses.py File 57.1 KB 0644
datetime.py File 89.68 KB 0644
decimal.py File 320 B 0644
difflib.py File 81.36 KB 0644
dis.py File 28.23 KB 0644
doctest.py File 103.81 KB 0644
enum.py File 77.72 KB 0644
filecmp.py File 9.94 KB 0644
fileinput.py File 15.35 KB 0644
fnmatch.py File 5.86 KB 0644
fractions.py File 28 KB 0644
ftplib.py File 34.98 KB 0644
functools.py File 37.51 KB 0644
genericpath.py File 4.86 KB 0644
getopt.py File 7.31 KB 0644
getpass.py File 5.85 KB 0644
gettext.py File 20.82 KB 0644
glob.py File 8.53 KB 0644
graphlib.py File 9.43 KB 0644
gzip.py File 23.51 KB 0644
hashlib.py File 11.49 KB 0644
heapq.py File 22.48 KB 0644
hmac.py File 7.54 KB 0644
imaplib.py File 53.58 KB 0644
imghdr.py File 3.86 KB 0644
imp.py File 10.36 KB 0644
inspect.py File 120.53 KB 0644
io.py File 4.22 KB 0644
ipaddress.py File 76.52 KB 0644
keyword.py File 1.04 KB 0644
linecache.py File 5.52 KB 0644
locale.py File 77.24 KB 0644
lzma.py File 12.97 KB 0644
mailbox.py File 76.98 KB 0644
mailcap.py File 9.15 KB 0644
mimetypes.py File 22.42 KB 0644
modulefinder.py File 23.14 KB 0644
netrc.py File 6.77 KB 0644
nntplib.py File 40.12 KB 0644
ntpath.py File 29.51 KB 0644
nturl2path.py File 2.82 KB 0644
numbers.py File 10.11 KB 0644
opcode.py File 10.2 KB 0644
operator.py File 10.71 KB 0644
optparse.py File 58.95 KB 0644
os.py File 38.6 KB 0644
pathlib.py File 47.43 KB 0644
pdb.py File 62.68 KB 0755
pickle.py File 63.61 KB 0644
pickletools.py File 91.66 KB 0644
pipes.py File 8.77 KB 0644
pkgutil.py File 24.06 KB 0644
platform.py File 41.3 KB 0755
plistlib.py File 27.69 KB 0644
poplib.py File 14.84 KB 0644
posixpath.py File 16.61 KB 0644
pprint.py File 24.01 KB 0644
profile.py File 22.36 KB 0755
pstats.py File 28.67 KB 0644
pty.py File 6.17 KB 0644
py_compile.py File 7.65 KB 0644
pyclbr.py File 11.13 KB 0644
pydoc.py File 110.02 KB 0755
queue.py File 11.23 KB 0644
quopri.py File 7.11 KB 0755
random.py File 31.41 KB 0644
reprlib.py File 5.31 KB 0644
rlcompleter.py File 7.64 KB 0644
runpy.py File 12.85 KB 0644
sched.py File 6.2 KB 0644
secrets.py File 1.98 KB 0644
selectors.py File 19.21 KB 0644
shelve.py File 8.36 KB 0644
shlex.py File 13.18 KB 0644
shutil.py File 55.19 KB 0644
signal.py File 2.44 KB 0644
site.py File 22.45 KB 0644
smtpd.py File 30.44 KB 0755
smtplib.py File 44.37 KB 0755
sndhdr.py File 7.27 KB 0644
socket.py File 36.68 KB 0644
socketserver.py File 26.94 KB 0644
sre_compile.py File 231 B 0644
sre_constants.py File 232 B 0644
sre_parse.py File 229 B 0644
ssl.py File 53.03 KB 0644
stat.py File 5.36 KB 0644
statistics.py File 46.59 KB 0644
string.py File 11.51 KB 0644
stringprep.py File 12.61 KB 0644
struct.py File 257 B 0644
subprocess.py File 86.65 KB 0644
sunau.py File 18.05 KB 0644
symtable.py File 10.13 KB 0644
sysconfig.py File 29.6 KB 0644
tabnanny.py File 11.05 KB 0755
tarfile.py File 105.35 KB 0755
telnetlib.py File 22.75 KB 0644
tempfile.py File 31.13 KB 0644
textwrap.py File 19.26 KB 0644
this.py File 1003 B 0644
threading.py File 56.87 KB 0644
timeit.py File 13.21 KB 0755
token.py File 2.33 KB 0644
tokenize.py File 25.72 KB 0644
trace.py File 28.51 KB 0755
traceback.py File 39.6 KB 0644
tracemalloc.py File 17.62 KB 0644
tty.py File 879 B 0644
types.py File 9.83 KB 0644
typing.py File 118.12 KB 0644
uu.py File 7.17 KB 0644
uuid.py File 26.95 KB 0644
warnings.py File 20.62 KB 0644
wave.py File 21.31 KB 0644
weakref.py File 21.01 KB 0644
webbrowser.py File 24.56 KB 0755
xdrlib.py File 5.84 KB 0644
zipapp.py File 7.36 KB 0644
zipfile.py File 91.59 KB 0644
zipimport.py File 30.17 KB 0644