�
Ϫ�fl� � �B � d Z ddlmZ ddlZddlZddlZddlZddlZddlZddl m
Z
ddlmZm
Z
mZmZ ddlmZmZ ddlmZ ddlmZ dd lmZ dd
lmZmZ ddlmZmZmZ ddlm Z m!Z! dd
l"m#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z) ddl*m+Z+m,Z,m-Z- ddl.m/Z/ e,j` d� Z1d� Z2 G d� de,jf � Z4 e# edddd� � d� � Z5d� Z6 G d� de,jf � Z7 G d� dejp � Z9dejt fd�Z;d � Z< G d!� d"e,jf ejz e> � Z? eej� � G d#� d$� � ZA G d%� d&eA� ZB G d'� d(eA� ZC G d)� d*eA� ZD G d+� d,e,jf � ZEd-� ZF G d.� d/e,jf � ZGy)0z&
Static resources for L{twisted.web}.
� )�annotationsN)�escape)�Any�Callable�Dict�Sequence)�quote�unquote)�implementer)�Version)�Literal)�abstract�
interfaces)�
components�filepath�log)�nativeString�
networkString)�
deprecated)�platformType)�URL)�InsensitiveDict)�http�resource�server)�
redirectTozInvalid request URL.c �R � | dk( xs! d| v xs t t j � | v S )Ns ..� /)r �os�sep��paths �4/usr/lib/python3/dist-packages/twisted/web/static.py�isDangerousr$ & |