Linux sh52.ich-4.com 5.14.0-611.26.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Jan 29 05:24:47 EST 2026 x86_64
LiteSpeed
Server IP : 198.143.147.58 & Your IP : 216.73.217.21
Domains :
Cant Read [ /etc/named.conf ]
User : actualbuzz
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
lib /
python3.9 /
site-packages /
jinja2 /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2026-02-03 14:58
__init__.py
1.51
KB
-rw-r--r--
2021-01-31 16:19
_compat.py
3.12
KB
-rw-r--r--
2021-01-31 14:47
_identifier.py
1.73
KB
-rw-r--r--
2020-02-17 17:14
asyncfilters.py
4.15
KB
-rw-r--r--
2021-01-31 14:47
asyncsupport.py
7.04
KB
-rw-r--r--
2021-01-31 14:47
bccache.py
11.85
KB
-rw-r--r--
2021-01-31 14:47
compiler.py
64.73
KB
-rw-r--r--
2021-01-31 14:47
constants.py
1.42
KB
-rw-r--r--
2021-01-31 14:47
debug.py
8.37
KB
-rw-r--r--
2025-03-31 15:39
defaults.py
1.1
KB
-rw-r--r--
2021-01-31 14:47
environment.py
49.44
KB
-rw-r--r--
2021-01-31 14:47
exceptions.py
5.3
KB
-rw-r--r--
2021-01-31 14:47
ext.py
25.82
KB
-rw-r--r--
2021-01-31 14:47
filters.py
41.41
KB
-rw-r--r--
2025-03-31 15:39
idtracking.py
9
KB
-rw-r--r--
2021-01-31 14:47
lexer.py
29.62
KB
-rw-r--r--
2021-01-31 14:47
loaders.py
17.25
KB
-rw-r--r--
2021-01-31 14:47
meta.py
4.03
KB
-rw-r--r--
2021-01-31 14:47
nativetypes.py
2.75
KB
-rw-r--r--
2025-03-31 15:39
nodes.py
30.37
KB
-rw-r--r--
2021-01-31 14:47
optimizer.py
1.42
KB
-rw-r--r--
2021-01-31 14:47
parser.py
34.82
KB
-rw-r--r--
2021-01-31 14:47
runtime.py
29.9
KB
-rw-r--r--
2021-01-31 14:47
sandbox.py
17.12
KB
-rw-r--r--
2025-03-31 15:39
tests.py
4.69
KB
-rw-r--r--
2021-01-31 14:47
utils.py
21.91
KB
-rw-r--r--
2021-01-31 16:19
visitor.py
3.16
KB
-rw-r--r--
2021-01-31 14:47
Save
Rename
from functools import wraps from . import filters from .asyncsupport import auto_aiter from .asyncsupport import auto_await async def auto_to_seq(value): seq = [] if hasattr(value, "__aiter__"): async for item in value: seq.append(item) else: for item in value: seq.append(item) return seq async def async_select_or_reject(args, kwargs, modfunc, lookup_attr): seq, func = filters.prepare_select_or_reject(args, kwargs, modfunc, lookup_attr) if seq: async for item in auto_aiter(seq): if func(item): yield item def dualfilter(normal_filter, async_filter): wrap_evalctx = False if getattr(normal_filter, "environmentfilter", False) is True: def is_async(args): return args[0].is_async wrap_evalctx = False else: has_evalctxfilter = getattr(normal_filter, "evalcontextfilter", False) is True has_ctxfilter = getattr(normal_filter, "contextfilter", False) is True wrap_evalctx = not has_evalctxfilter and not has_ctxfilter def is_async(args): return args[0].environment.is_async @wraps(normal_filter) def wrapper(*args, **kwargs): b = is_async(args) if wrap_evalctx: args = args[1:] if b: return async_filter(*args, **kwargs) return normal_filter(*args, **kwargs) if wrap_evalctx: wrapper.evalcontextfilter = True wrapper.asyncfiltervariant = True return wrapper def asyncfiltervariant(original): def decorator(f): return dualfilter(original, f) return decorator @asyncfiltervariant(filters.do_first) async def do_first(environment, seq): try: return await auto_aiter(seq).__anext__() except StopAsyncIteration: return environment.undefined("No first item, sequence was empty.") @asyncfiltervariant(filters.do_groupby) async def do_groupby(environment, value, attribute): expr = filters.make_attrgetter(environment, attribute) return [ filters._GroupTuple(key, await auto_to_seq(values)) for key, values in filters.groupby( sorted(await auto_to_seq(value), key=expr), expr ) ] @asyncfiltervariant(filters.do_join) async def do_join(eval_ctx, value, d=u"", attribute=None): return filters.do_join(eval_ctx, await auto_to_seq(value), d, attribute) @asyncfiltervariant(filters.do_list) async def do_list(value): return await auto_to_seq(value) @asyncfiltervariant(filters.do_reject) async def do_reject(*args, **kwargs): return async_select_or_reject(args, kwargs, lambda x: not x, False) @asyncfiltervariant(filters.do_rejectattr) async def do_rejectattr(*args, **kwargs): return async_select_or_reject(args, kwargs, lambda x: not x, True) @asyncfiltervariant(filters.do_select) async def do_select(*args, **kwargs): return async_select_or_reject(args, kwargs, lambda x: x, False) @asyncfiltervariant(filters.do_selectattr) async def do_selectattr(*args, **kwargs): return async_select_or_reject(args, kwargs, lambda x: x, True) @asyncfiltervariant(filters.do_map) async def do_map(*args, **kwargs): seq, func = filters.prepare_map(args, kwargs) if seq: async for item in auto_aiter(seq): yield await auto_await(func(item)) @asyncfiltervariant(filters.do_sum) async def do_sum(environment, iterable, attribute=None, start=0): rv = start if attribute is not None: func = filters.make_attrgetter(environment, attribute) else: def func(x): return x async for item in auto_aiter(iterable): rv += func(item) return rv @asyncfiltervariant(filters.do_slice) async def do_slice(value, slices, fill_with=None): return filters.do_slice(await auto_to_seq(value), slices, fill_with) ASYNC_FILTERS = { "first": do_first, "groupby": do_groupby, "join": do_join, "list": do_list, # we intentionally do not support do_last because that would be # ridiculous "reject": do_reject, "rejectattr": do_rejectattr, "map": do_map, "select": do_select, "selectattr": do_selectattr, "sum": do_sum, "slice": do_slice, }