=/m * d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZddl m Z ddlmZ dgZ d Zd Zej Z d Z G d d Z G d d Z G d deeej Z G d de ZddZ G d d ZdS ) N ) text_encoding) TranslatorPathc H t j t | dd S )a2 Given a path with elements separated by posixpath.sep, generate all parents of that path. >>> list(_parents('b/d')) ['b'] >>> list(_parents('/b/d/')) ['/b'] >>> list(_parents('b/d/f/')) ['b/d', 'b'] >>> list(_parents('b')) [] >>> list(_parents('')) [] r N) itertoolsislice _ancestry)paths r/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib/python3.11/site-packages/setuptools/_vendor/zipp/__init__.py_parentsr s IdOOQ555 c # K | t j } | r?| t j k r3| V t j | \ } }| r| t j k -dS dS dS dS )aR Given a path with elements separated by posixpath.sep, generate all elements of that path >>> list(_ancestry('b/d')) ['b/d', 'b'] >>> list(_ancestry('/b/d/')) ['/b/d', '/b'] >>> list(_ancestry('b/d/f/')) ['b/d/f', 'b/d', 'b'] >>> list(_ancestry('b')) ['b'] >>> list(_ancestry('')) [] N)rstrip posixpathsepsplit)r tails r r r % s ;;y}%%D +49=(( _T** d +49=(((( + + + +((r c P t j t | j | S )zZ Return items in minuend not in subtrahend, retaining order with O(1) lookup. )r filterfalseset__contains__)minuend subtrahends r _differencer ? s Z!=wGGGr c 2 e Zd ZdZ fdZd Z fdZ xZS )InitializedStatez? Mix-in to save the initialization state for pickling. c V || _ || _ t j |i | d S N)_InitializedState__args_InitializedState__kwargssuper__init__)selfargskwargs __class__s r r# zInitializedState.__init__L s3 $)&)))))r c | j | j fS r )r r! r$ s r __getstate__zInitializedState.__getstate__Q s {DM))r c D |\ }} t j |i | d S r )r" r# )r$ stater% r&