§
    ¤”j¢1  ã                   óÂ   — d dl mZ d dlmZ d dlmZ ddlmZ  G d„ de¦  «        Z G d„ d	e¦  «        Z	 G d
„ de¦  «        Z
 G d„ de¦  «        Z G d„ de¦  «        ZdS )é    )Úfield_references)ÚNOT_PROVIDED)Úcached_propertyé   )Ú	Operationc                   ój   ‡ — e Zd Zd
d„Zed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Zd„ Z	d„ Z
ˆ fd	„Zˆ xZS )ÚFieldOperationNc                 ó0   — || _         || _        || _        d S ©N©Ú
model_nameÚnameÚfield)Úselfr   r   r   s       úu/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/django/db/migrations/operations/fields.pyÚ__init__zFieldOperation.__init__	   s   € Ø$ˆŒØˆŒ	ØˆŒ
ˆ
ˆ
ó    c                 ó4   — | j                              ¦   «         S r   )r   Úlower©r   s    r   Úmodel_name_lowerzFieldOperation.model_name_lower   s   € àŒ×$Ò$Ñ&Ô&Ð&r   c                 ó4   — | j                              ¦   «         S r   )r   r   r   s    r   Ú
name_lowerzFieldOperation.name_lower   s   € àŒy�ŠÑ Ô Ð r   c                 ó"   — | j         |j         k    S r   )r   ©r   Ú	operations     r   Úis_same_model_operationz&FieldOperation.is_same_model_operation   s   € ØÔ$¨	Ô(BÒBÐBr   c                 óL   — |                       |¦  «        o| j        |j        k    S r   )r   r   r   s     r   Úis_same_field_operationz&FieldOperation.is_same_field_operation   s*   € à×(Ò(¨Ñ3Ô3ð 8Ø” 9Ô#7Ò7ð	
r   c                 ó®   — |                      ¦   «         }|| j        k    rdS | j        r,t          t	          || j        f| j        ||f¦  «        ¦  «        S dS )NTF)r   r   r   Úboolr   )r   r   Ú	app_labelr   s       r   Úreferences_modelzFieldOperation.references_model   sj   € Ø—Z’Z‘\”\ˆ
Ø˜Ô.Ò.Ð.Ø�4ØŒ:ð 	ÝÝ Ø Ô 5Ð6Ø”JØ 
Ð+ñô ñô ð ð ˆur   c                 ó  — |                      ¦   «         }|| j        k    r9|| j        k    rdS | j        r%t	          | j        d¦  «        r|| j        j        v rdS | j        €dS t          t          || j        f| j        ||f|¦  «        ¦  «        S )NTÚfrom_fieldsF)r   r   r   r   Úhasattrr%   r!   r   )r   r   r   r"   r   s        r   Úreferences_fieldzFieldOperation.references_field-   s±   € Ø%×+Ò+Ñ-Ô-Ðà˜tÔ4Ò4Ð4Ø�t”yÒ Ð Ø�tà”
ðå˜DœJ¨Ñ6Ô6ðð ˜DœJÔ2Ð2Ð2à�tàŒ:ÐØ�5ÝÝØ˜DÔ1Ð2Ø”
ØÐ,Ð-Øñ	ô ñ
ô 
ð 	
r   c                 óŒ   •— t          ¦   «                              ||¦  «        p!|                     | j        | j        |¦  «         S r   )ÚsuperÚreducer'   r   r   ©r   r   r"   Ú	__class__s      €r   r*   zFieldOperation.reduceE   sD   ø€ Ý‰wŒw�~Š~˜i¨Ñ3Ô3ð 
¸9×;UÒ;UØŒO˜TœY¨	ñ<
ô <
ð 8
ð 	
r   r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r#   r'   r*   Ú__classcell__©r,   s   @r   r	   r	      sÁ   ø€ € € € € ðð ð ð ð
 ð'ð 'ñ „_ð'ð ð!ð !ñ „_ð!ðCð Cð Cð
ð 
ð 
ðð ð ð
ð 
ð 
ð0
ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   r	   c                   ób   ‡ — e Zd ZdZdˆ fd„	Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
d	„ ¦   «         Zˆ fd
„Zˆ xZS )ÚAddFieldzAdd a field to a model.Tc                 ó\   •— || _         t          ¦   «                              |||¦  «         d S r   ©Úpreserve_defaultr)   r   ©r   r   r   r   r6   r,   s        €r   r   zAddField.__init__N   ó-   ø€ Ø 0ˆÔÝ‰Œ×Ò˜ T¨5Ñ1Ô1Ð1Ð1Ð1r   c                 óp   — | j         | j        | j        dœ}| j        dur
| j        |d<   | j        j        g |fS ©Nr   Tr6   ©r   r   r   r6   r,   r-   ©r   Úkwargss     r   ÚdeconstructzAddField.deconstructR   óM   € àœ/Ø”IØ”Zð
ð 
ˆð
 Ô ¨Ð,Ð,Ø)-Ô)>ˆFÐ%Ñ&Ø”Ô'¨¨VÐ4Ð4r   c                 ó`   — |                      || j        | j        | j        | j        ¦  «         d S r   )Ú	add_fieldr   r   r   r6   ©r   r"   Ústates      r   Ústate_forwardszAddField.state_forwards\   s;   € Ø�ŠØØÔ!ØŒIØŒJØÔ!ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óŽ  — |j                              || j        ¦  «        }|                      |j        j        |¦  «        r‚|j                              || j        ¦  «        }|j                             | j        ¦  «        }| j	        s| j
        j        |_        |                     ||¦  «         | j	        st          |_        d S d S d S r   )ÚappsÚ	get_modelr   Úallow_migrate_modelÚ
connectionÚaliasÚ_metaÚ	get_fieldr   r6   r   ÚdefaultrA   r   )r   r"   Úschema_editorÚ
from_stateÚto_stateÚto_modelÚ
from_modelr   s           r   Údatabase_forwardszAddField.database_forwardse   sÊ   € Ø”=×*Ò*¨9°d´oÑFÔFˆØ×#Ò# MÔ$<Ô$BÀHÑMÔMð 
	-Ø#œ×2Ò2°9¸d¼oÑNÔNˆJØ”N×,Ò,¨T¬YÑ7Ô7ˆEØÔ(ð 3Ø $¤
Ô 2�”Ø×#Ò#ØØñô ð ð Ô(ð -Ý ,�”��ð
	-ð 
	-ð-ð -r   c                 óð   — |j                              || j        ¦  «        }|                      |j        j        |¦  «        r5|                     ||j                             | j	        ¦  «        ¦  «         d S d S r   ©
rF   rG   r   rH   rI   rJ   Úremove_fieldrK   rL   r   ©r   r"   rN   rO   rP   rR   s         r   Údatabase_backwardszAddField.database_backwardss   ó}   € Ø”_×.Ò.¨y¸$¼/ÑJÔJˆ
Ø×#Ò# MÔ$<Ô$BÀJÑOÔOð 	Ø×&Ò&Ø˜JÔ,×6Ò6°t´yÑAÔAñô ð ð ð ð	ð 	r   c                 ó&   — d| j         ›d| j        ›�S )Nz
Add field ú to ©r   r   r   s    r   ÚdescribezAddField.describez   s   € € Ø'+¤y y y°$´/°/ÐBÐBr   c                 ó$   — | j         ›d| j        ›�S )NÚ_©r   r   r   s    r   Úmigration_name_fragmentz AddField.migration_name_fragment}   s   € àÔ/Ð/Ð/°´°ÐAÐAr   c                 ó¦  •— t          |t          ¦  «        rš|                      |¦  «        r…t          |t          ¦  «        r"t	          | j        |j        |j        ¬¦  «        gS t          |t          ¦  «        rg S t          |t          ¦  «        r"t	          | j        |j
        | j        ¬¦  «        gS t          ¦   «                              ||¦  «        S ©Nr   )Ú
isinstancer	   r   Ú
AlterFieldr3   r   r   r   ÚRemoveFieldÚRenameFieldÚnew_namer)   r*   r+   s      €r   r*   zAddField.reduce�   sß   ø€ Ý�i¥Ñ0Ô0ð 	°T×5QÒ5QØñ6
ô 6
ð 	õ ˜)¥ZÑ0Ô0ð åØ#'¤?Ø&œ^Ø'œoðñ ô ðð õ ˜I¥{Ñ3Ô3ð 	Ø�	Ý˜I¥{Ñ3Ô3ð åØ#'¤?Ø&Ô/Ø"œjðñ ô ðð õ ‰wŒw�~Š~˜i¨Ñ3Ô3Ð3r   ©T©r-   r.   r/   Ú__doc__r   r>   rD   rS   rX   r]   Úpropertyra   r*   r0   r1   s   @r   r3   r3   K   sÈ   ø€ € € € € Ø!Ð!ð2ð 2ð 2ð 2ð 2ð 2ð5ð 5ð 5ð
ð 
ð 
ð-ð -ð -ðð ð ðCð Cð Cð ðBð Bñ „XðBð4ð 4ð 4ð 4ð 4ð 4ð 4ð 4ð 4r   r3   c                   óV   ‡ — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Ze	d„ ¦   «         Z
ˆ fd„Zˆ xZS )	rf   zRemove a field from a model.c                 ó>   — | j         | j        dœ}| j        j        g |fS )N)r   r   )r   r   r,   r-   r<   s     r   r>   zRemoveField.deconstruct�   s,   € àœ/Ø”Ið
ð 
ˆð ”Ô'¨¨VÐ4Ð4r   c                 óH   — |                      || j        | j        ¦  «         d S r   )rV   r   r   rB   s      r   rD   zRemoveField.state_forwards¤   s%   € Ø×Ò˜9 dÔ&;¸T¼YÑGÔGÐGÐGÐGr   c                 óð   — |j                              || j        ¦  «        }|                      |j        j        |¦  «        r5|                     ||j                             | j	        ¦  «        ¦  «         d S d S r   rU   rW   s         r   rS   zRemoveField.database_forwards§   rY   r   c                 ó0  — |j                              || j        ¦  «        }|                      |j        j        |¦  «        rU|j                              || j        ¦  «        }|                     ||j                             | j	        ¦  «        ¦  «         d S d S r   )
rF   rG   r   rH   rI   rJ   rA   rK   rL   r   ©r   r"   rN   rO   rP   rQ   rR   s          r   rX   zRemoveField.database_backwards®   s�   € Ø”=×*Ò*¨9°d´oÑFÔFˆØ×#Ò# MÔ$<Ô$BÀHÑMÔMð 	UØ#œ×2Ò2°9¸d¼oÑNÔNˆJØ×#Ò# J°´×0HÒ0HÈÌÑ0SÔ0SÑTÔTÐTÐTÐTð	Uð 	Ur   c                 ó&   — d| j         ›d| j        ›�S )NzRemove field z from r\   r   s    r   r]   zRemoveField.describe´   s   € € Ø,0¬I¨I¨I°t´°ÐGÐGr   c                 ó&   — d| j         ›d| j        ›�S )NÚremove_r_   r`   r   s    r   ra   z#RemoveField.migration_name_fragment·   s   € € à!%Ô!6Ð!6Ð!6¸¼¸ÐHÐHr   c                 óš   •— ddl m} t          ||¦  «        r|j        | j        k    r|gS t          ¦   «                              ||¦  «        S )Nr   )ÚDeleteModel)Úmodelsrw   rd   r   r   r)   r*   )r   r   r"   rw   r,   s       €r   r*   zRemoveField.reduce»   sZ   ø€ Ø'Ð'Ð'Ð'Ð'Ð'õ �y +Ñ.Ô.ð	àÔ$¨Ô(=Ò=Ð=à�;ÐÝ‰wŒw�~Š~˜i¨Ñ3Ô3Ð3r   )r-   r.   r/   rk   r>   rD   rS   rX   r]   rl   ra   r*   r0   r1   s   @r   rf   rf   š   s°   ø€ € € € € Ø&Ð&ð5ð 5ð 5ðHð Hð Hðð ð ðUð Uð UðHð Hð Hð ðIð Iñ „XðIð4ð 4ð 4ð 4ð 4ð 4ð 4ð 4ð 4r   rf   c                   ób   ‡ — e Zd ZdZdˆ fd„	Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
d	„ ¦   «         Zˆ fd
„Zˆ xZS )re   z`
    Alter a field's database column (e.g. null, max_length) to the provided
    new field.
    Tc                 ó\   •— || _         t          ¦   «                              |||¦  «         d S r   r5   r7   s        €r   r   zAlterField.__init__Ì   r8   r   c                 óp   — | j         | j        | j        dœ}| j        dur
| j        |d<   | j        j        g |fS r:   r;   r<   s     r   r>   zAlterField.deconstructÐ   r?   r   c                 ó`   — |                      || j        | j        | j        | j        ¦  «         d S r   )Úalter_fieldr   r   r   r6   rB   s      r   rD   zAlterField.state_forwardsÚ   s=   € Ø×ÒØØÔ!ØŒIØŒJØÔ!ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óÎ  — |j                              || j        ¦  «        }|                      |j        j        |¦  «        r¢|j                              || j        ¦  «        }|j                             | j        ¦  «        }|j                             | j        ¦  «        }| j	        s| j
        j        |_        |                     |||¦  «         | j	        st          |_        d S d S d S r   )rF   rG   r   rH   rI   rJ   rK   rL   r   r6   r   rM   r}   r   )	r   r"   rN   rO   rP   rQ   rR   Ú
from_fieldÚto_fields	            r   rS   zAlterField.database_forwardsã   sÞ   € Ø”=×*Ò*¨9°d´oÑFÔFˆØ×#Ò# MÔ$<Ô$BÀHÑMÔMð 	0Ø#œ×2Ò2°9¸d¼oÑNÔNˆJØ#Ô)×3Ò3°D´IÑ>Ô>ˆJØ”~×/Ò/°´	Ñ:Ô:ˆHØÔ(ð 6Ø#'¤:Ô#5�Ô Ø×%Ò% j°*¸hÑGÔGÐGØÔ(ð 0Ý#/�Ô Ð Ð ð	0ð 	0ð0ð 0r   c                 ó6   — |                       ||||¦  «         d S r   )rS   )r   r"   rN   rO   rP   s        r   rX   zAlterField.database_backwardsï   s"   € Ø×Ò˜y¨-¸ÀXÑNÔNÐNÐNÐNr   c                 ó&   — d| j         ›d| j        ›�S )NzAlter field ú on r\   r   s    r   r]   zAlterField.describeò   s   € € Ø)-¬¨¨°D´O°OÐDÐDr   c                 ó&   — d| j         ›d| j        ›�S )NÚalter_r_   r`   r   s    r   ra   z"AlterField.migration_name_fragmentõ   s   € € à $Ô 5Ð 5Ð 5°t´°ÐGÐGr   c                 ób  •— t          |t          t          f¦  «        r|                      |¦  «        r|gS t          |t          ¦  «        rD|                      |¦  «        r/| j        j        €#|t          | j        |j        | j        ¬¦  «        gS t          ¦   «          
                    ||¦  «        S rc   )rd   re   rf   r   rg   r   Ú	db_columnr   rh   r)   r*   r+   s      €r   r*   zAlterField.reduceù   s¿   ø€ ÝØ�
¥KÐ0ñ
ô 
ð 	à×*Ò*¨9Ñ5Ô5ð	ð �;Ðå�y¥+Ñ.Ô.ð	à×,Ò,¨YÑ7Ô7ð	ð ”
Ô$Ð,ð ÝØ#œØ"Ô+Øœ*ðñ ô ðð õ ‰wŒw�~Š~˜i¨Ñ3Ô3Ð3r   ri   rj   r1   s   @r   re   re   Æ   sÏ   ø€ € € € € ðð ð
2ð 2ð 2ð 2ð 2ð 2ð5ð 5ð 5ð
ð 
ð 
ð
0ð 
0ð 
0ðOð Oð OðEð Eð Eð ðHð Hñ „XðHð4ð 4ð 4ð 4ð 4ð 4ð 4ð 4ð 4r   re   c                   ó’   ‡ — e Zd ZdZˆ fd„Zed„ ¦   «         Zed„ ¦   «         Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zed
„ ¦   «         Zd„ Zˆ fd„Zˆ xZS )rg   z8Rename a field on the model. Might affect db_column too.c                 óh   •— || _         || _        t          ¦   «                              ||¦  «         d S r   )Úold_namerh   r)   r   )r   r   rŠ   rh   r,   s       €r   r   zRenameField.__init__  s1   ø€ Ø ˆŒØ ˆŒÝ‰Œ×Ò˜ XÑ.Ô.Ð.Ð.Ð.r   c                 ó4   — | j                              ¦   «         S r   )rŠ   r   r   s    r   Úold_name_lowerzRenameField.old_name_lower  ó   € àŒ}×"Ò"Ñ$Ô$Ð$r   c                 ó4   — | j                              ¦   «         S r   )rh   r   r   s    r   Únew_name_lowerzRenameField.new_name_lower  r�   r   c                 óJ   — | j         | j        | j        dœ}| j        j        g |fS )N)r   rŠ   rh   )r   rŠ   rh   r,   r-   r<   s     r   r>   zRenameField.deconstruct  s1   € àœ/ØœØœð
ð 
ˆð
 ”Ô'¨¨VÐ4Ð4r   c                 óT   — |                      || j        | j        | j        ¦  «         d S r   )Úrename_fieldr   rŠ   rh   rB   s      r   rD   zRenameField.state_forwards&  s4   € Ø×ÒØ�tÔ,¨d¬m¸T¼]ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ól  — |j                              || j        ¦  «        }|                      |j        j        |¦  «        rs|j                              || j        ¦  «        }|                     ||j                             | j	        ¦  «        |j                             | j
        ¦  «        ¦  «         d S d S r   )rF   rG   r   rH   rI   rJ   r}   rK   rL   rŠ   rh   rr   s          r   rS   zRenameField.database_forwards+  ó¬   € Ø”=×*Ò*¨9°d´oÑFÔFˆØ×#Ò# MÔ$<Ô$BÀHÑMÔMð 	Ø#œ×2Ò2°9¸d¼oÑNÔNˆJØ×%Ò%ØØÔ ×*Ò*¨4¬=Ñ9Ô9Ø”×(Ò(¨¬Ñ7Ô7ñô ð ð ð ð	ð 	r   c                 ól  — |j                              || j        ¦  «        }|                      |j        j        |¦  «        rs|j                              || j        ¦  «        }|                     ||j                             | j	        ¦  «        |j                             | j
        ¦  «        ¦  «         d S d S r   )rF   rG   r   rH   rI   rJ   r}   rK   rL   rh   rŠ   rr   s          r   rX   zRenameField.database_backwards5  r”   r   c                 ó6   — d| j         ›d| j        ›d| j        ›�S )NzRename field rƒ   r[   )rŠ   r   rh   r   s    r   r]   zRenameField.describe?  s'   € € àŒMˆMˆMØŒOˆOˆOØŒMˆMð
ð 	
r   c                 ó6   — d| j         ›d| j        ›d| j        ›�S )NÚrename_r_   )rŒ   r   r�   r   s    r   ra   z#RenameField.migration_name_fragmentF  s1   € € ð ÔÐÐØÔ!Ð!Ð!ØÔÐð
ð 	
r   c                 ó¢   — |                       ||¦  «        o9|                     ¦   «         | j        k    p|                     ¦   «         | j        k    S r   )r#   r   rŒ   r�   )r   r   r   r"   s       r   r'   zRenameField.references_fieldN  sG   € Ø×$Ò$ Z°Ñ;Ô;ð 
Ø�JŠJ‰LŒL˜DÔ/Ò/ÐV°4·:²:±<´<À4ÔCVÒ3Vð	
r   c                 ó’  •— t          |t          ¦  «        rF|                      |¦  «        r1| j        |j        k    r!t          | j        | j        |j        ¦  «        gS t          t          | ¦  «         
                    ||¦  «        pB|                     | j        | j        |¦  «        p |                     | j        | j        |¦  «         S r   )rd   rg   r   r�   rŒ   r   rŠ   rh   r)   r	   r*   r'   r+   s      €r   r*   zRenameField.reduceS  sÎ   ø€ å�y¥+Ñ.Ô.ð	à×,Ò,¨YÑ7Ô7ð	ð Ô# yÔ'?Ò?Ð?õ Ø”OØ”MØÔ&ñô ðð õ •^ TÑ*Ô*×1Ò1°)¸YÑGÔGð 
Ø×&Ò& t¤¸¼ÀyÑQÔQð UØ×)Ò)¨$¬/¸4¼=È)ÑTÔTðL
ð 	
r   )r-   r.   r/   rk   r   r   rŒ   r�   r>   rD   rS   rX   r]   rl   ra   r'   r*   r0   r1   s   @r   rg   rg     s  ø€ € € € € ØBÐBð/ð /ð /ð /ð /ð
 ð%ð %ñ „_ð%ð ð%ð %ñ „_ð%ð5ð 5ð 5ð
ð 
ð 
ð
ð ð ðð ð ð
ð 
ð 
ð ð
ð 
ñ „Xð
ð
ð 
ð 
ð

ð 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
r   rg   N)Údjango.db.migrations.utilsr   Údjango.db.modelsr   Údjango.utils.functionalr   Úbaser   r	   r3   rf   re   rg   © r   r   ú<module>r       sO  ðØ 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø )Ð )Ð )Ð )Ð )Ð )Ø 3Ð 3Ð 3Ð 3Ð 3Ð 3à Ð Ð Ð Ð Ð ð@
ð @
ð @
ð @
ð @
�Yñ @
ô @
ð @
ðFL4ð L4ð L4ð L4ð L4ˆ~ñ L4ô L4ð L4ð^)4ð )4ð )4ð )4ð )4�.ñ )4ô )4ð )4ðXE4ð E4ð E4ð E4ð E4�ñ E4ô E4ð E4ðPW
ð W
ð W
ð W
ð W
�.ñ W
ô W
ð W
ð W
ð W
r   