관리-도구
편집 파일: sandbox.cpython-311.pyc
� S�Dg�B � �R � d Z ddlZddlZddlZddlmZ ddlmZ ddlm Z ddlm Z ddlmZ dd lm Z dd lmZ ddlmZ ddlmZ dd lmZ dZe rh d�Zn e� � Zh d�ZddhZddhZddhZ ej ddee�� � efZefZ e!fZ" ddl#m#Z#m$Z$ ddl%m%Z% e e#e$fz Z ee%fz Zn# e&$ r Y nw xY w ddl'm(Z( ee(fz Zn# e&$ r Y nw xY weej) fz Ze ej* fz Z e"ej+ fz Z"e e,g d�� � fe e,g d�� � fe" e,g d�� � fe e,g d �� � ffZ- G d!� d"ej. � � Z/d#� Z0d$� Z1d%� Z2d&� Z3d'� Z4 G d(� d)e� � Z5 G d*� d+e5� � Z6 dd,l7m8Z8 n# e&$ r d-� Z8Y nw xY w G d.� d/e9� � Z: G d0� d1e:e� � Z; G d2� d3e:e � � Z<dS )4z�A sandbox layer that ensures unsafe operations cannot be performed. Useful when the template itself comes from an untrusted source. � N)�deque)� Formatter)�EscapeFormatter)�Markup� )�abc)�PY2)� range_type)�string_types)�Environment)� SecurityErrori�� > � func_code� func_dict�func_closure�func_globals� func_defaults> �im_func�im_self�im_class�gi_frame�gi_code�cr_frame�cr_code�ag_code�ag_frame�ignorezthe sets module)�module)�UserDict� DictMixin)�UserList)�Set)�add�clear�difference_update�discard�pop�remove�symmetric_difference_update�update)r# r&