
    Bh                     *    d dl Z d dlmZ d dlmZ d Zy)    N)TemporaryUploadedFile)salted_hmacc                    g }| D ]  }| j                   r!| j                         s|j                  xs d}n)|j                  j	                  |j                        xs d}t        |t              r|j                         }n t        |t              r|j                         }|j                  |j                  |f        t        j                  |t        j                        }d}t        ||      j!                         S )zA
    Calculates a security hash for the given Form instance.
     zdjango.contrib.formtools)empty_permittedhas_changeddatafieldclean
isinstancestrstripr   readappendnamepickledumpsHIGHEST_PROTOCOLr   	hexdigest)formr	   bfvaluepickledkey_salts         ?/home/dcms/DCMS/lib/python3.12/site-packages/formtools/utils.py	form_hmacr      s     D & (8(8(:GGMrEHHNN277+1rEeS!KKME45JJLERWWe$%& ll4!8!89G)Hx)3355    )r   django.core.files.uploadedfiler   django.utils.cryptor   r    r   r   <module>r!      s     @ +6r   