<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
B
    š•Reˆ	  ã               @   sˆ   d dl mZ d dlZd dlZd dlZd dlmZ ddlmZ ddl	m
Z
 ddlmZ e d¡d	 Zd
d„ Zdd„ Zdd„ Zddd„ZdS )é    )Úabsolute_importN)ÚBytesIOé   )Úsix)Úb)ÚRequestFieldzutf-8é   c              C   s$   t  t d¡¡} tjs |  d¡} | S )zN
    Our embarrassingly-simple replacement for mimetools.choose_boundary.
    é   Úascii)ÚbinasciiÚhexlifyÚosÚurandomr   ÚPY2Údecode)Úboundary© r   ú‹/builddir/build/BUILDROOT/alt-python37-pip-20.2.4-6.el8.x86_64/opt/alt/python37/lib/python3.7/site-packages/pip/_vendor/urllib3/filepost.pyÚchoose_boundary   s    
r   c             c   sN   t | tƒrt | ¡}nt| ƒ}x*|D ]"}t |tƒr:|V  q$tj|Ž V  q$W dS )z†
    Iterate over fields.

    Supports list of (k, v) tuples and dicts, and lists of
    :class:`~urllib3.fields.RequestField`.

    N)Ú
isinstanceÚdictr   Ú	iteritemsÚiterr   Úfrom_tuples)ÚfieldsÚiÚfieldr   r   r   Úiter_field_objects   s    


r   c             C   s,   t | tƒrdd„ t | ¡D ƒS dd„ | D ƒS )a-  
    .. deprecated:: 1.6

    Iterate over fields.

    The addition of :class:`~urllib3.fields.RequestField` makes this function
    obsolete. Instead, use :func:`iter_field_objects`, which returns
    :class:`~urllib3.fields.RequestField` objects.

    Supports list of (k, v) tuples and dicts.
    c             s   s   | ]\}}||fV  qd S )Nr   )Ú.0ÚkÚvr   r   r   ú	<genexpr>:   s    ziter_fields.<locals>.<genexpr>c             s   s   | ]\}}||fV  qd S )Nr   )r   r   r    r   r   r   r!   <   s    )r   r   r   r   )r   r   r   r   Úiter_fields-   s    
r"   c             C   s¼   t ƒ }|dkrtƒ }x|t| ƒD ]p}| td| ƒ¡ t|ƒ | ¡ ¡ |j}t|t	ƒr^t
|ƒ}t|tjƒrzt|ƒ |¡ n
| |¡ | d¡ qW | td| ƒ¡ t
d| ƒ}| ¡ |fS )aQ  
    Encode a dictionary of ``fields`` using the multipart/form-data MIME format.

    :param fields:
        Dictionary of fields or list of (key, :class:`~urllib3.fields.RequestField`).

    :param boundary:
        If not specified, then a random boundary will be generated using
        :func:`urllib3.filepost.choose_boundary`.
    Nz--%s
s   
z--%s--
z multipart/form-data; boundary=%s)r   r   r   Úwriter   ÚwriterÚrender_headersÚdatar   ÚintÚstrr   Ú	text_typeÚgetvalue)r   r   Úbodyr   r&   Úcontent_typer   r   r   Úencode_multipart_formdata?   s     

r-   )N)Ú
__future__r   r   Úcodecsr   Úior   Úpackagesr   Zpackages.sixr   r   r   Úlookupr$   r   r   r"   r-   r   r   r   r   Ú<module>   s   
