3 �ga�E � @ s d dl Z d dlZd dlZd dlZd dlZd dl mZ d dlmZ d dlm Z d dl mZ ddlm Z mZmZmZmZ ddlmZmZmZmZmZmZmZmZmZmZmZmZmZm Z dd l!m"Z" dd l#m$Z$ ddl%m&Z& dd l'm(Z( ddl)m*Z*m+Z+ G dd� de�Z,G dd� de j-�Z.dS )� N)�RawDescriptionHelpFormatter)�dedent)�urlsplit)�get_netrc_auth� )�AuthCredentials�KeyValueArgType�PARSED_DEFAULT_FORMAT_OPTIONS� parse_auth�parse_format_options)�HTTP_GET� HTTP_POST�OUTPUT_OPTIONS�OUTPUT_OPTIONS_DEFAULT�OUTPUT_OPTIONS_DEFAULT_OFFLINE�(OUTPUT_OPTIONS_DEFAULT_STDOUT_REDIRECTED� OUT_RESP_BODY� PRETTY_MAP�PRETTY_STDOUT_TTY_ONLY�RequestType�SEPARATOR_CREDENTIALS�SEPARATOR_GROUP_ALL_ITEMS�SEPARATOR_GROUP_DATA_ITEMS� URL_SCHEME_RE)� ParseError)�RequestItems� )�Environment)�plugin_manager)�ExplicitNullAuth�get_content_typec s* e Zd ZdZd� fdd� Zdd� Z� ZS )�HTTPieHelpFormatterz�A nicer help formatter. Help for arguments can be indented and contain new lines. It will be de-dented and arguments in the help will be separated by a blank line for better readability. � c s ||d<