shell bypass 403
3 �k�`�Y � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl Z d dlZd dlZd dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dlmZmZ d dlmZ d dlmZ d dlmZ d dlmZ d d lmZ d d lmZ d dlmZ d dlm Z d d lm!Z! d dlm"Z" d dlm#Z# d dlm$Z$ d dlm%Z% d dlm&Z& d dlm'Z' d dlm(Z( d dlm)Z) d dlm*Z* d dlm+Z+ d dlm,Z, d dlm-Z- d dlm.Z. d dlm/Z/ d dlm0Z0 d dlm1Z1 d dlm2Z2 d dlm3Z3 d d lm4Z4 d d!l5m6Z6 d d"l5m7Z7 d d#l5m8Z8 d d$l5m9Z9 d%d&� Z:e:� Z;d'd(� Z<G d)d*� d*�Z=G d+d,� d,�Z>G d-d.� d.e>�Z?G d/d0� d0e>�Z@g ZAG d1d2� d2ejB�ZCG d3d4� d4eD�ZEG d5d6� d6eE�ZFG d7d8� d8eF�ZGG d9d:� d:eF�ZHG d;d<� d<eE�ZIG d=d>� d>eE�ZJG d?d@� d@eI�ZKdAdB� ZLdCdD� ZMdEdF� ZNdaOdGdH� ZPdIdJ� ZQG dKdL� dL�ZRdMdN� ZSdOdP� ZTdQdR� ZUG dSdT� dTeV�ZWG dUdV� dVeW�ZXG dWdX� dXeW�ZYG dYdZ� dZeW�ZZG d[d\� d\eW�Z[dS )]� N)�PY2)�ConfigParser)�as_bytes� as_string)� xmlrpclib)�StringIO)� basestring)�asyncore_25)�process_or_group_name)�boolean)�integer)�name_to_uid)�gid_for_uid)�existing_dirpath)� byte_size)� signal_number)�list_of_exitcodes)�dict_of_key_value_pairs)�logfile_name)�list_of_strings)� octal_type)�existing_directory)� logging_level)�colon_separated_user_group)�inet_address)�InetStreamSocketConfig)�UnixStreamSocketConfig)�url)� Automatic)�Syslog)�auto_restart)�profile_options)�loggers)�states)�xmlrpc)�pollerc C sD t jjt jjt��} t jj| d�}t|d��}|j� j� S Q R X d S )Nzversion.txt�r) �os�path�abspath�dirname�__file__�join�open�read�strip)ZmydirZversion_txt�f� r1 �/usr/lib/python3.6/options.py�_read_version_txt: s r3 c C s t jjt jjt jj| ���S )N)r'