
    +j                     v    S SK r S SKJr  S SKJrJr   " S S\R                  5      r " S S\5      rS\4S	 jr	g)
    N)override)ComfyExtensionioc                   P    \ rS rSr\S 5       r\S\R                  4S j5       rSr	g)InstructPixToPixConditioning   c                    [         R                  " SS[         R                  R                  S5      [         R                  R                  S5      [         R                  R                  S5      [         R
                  R                  S5      /[         R                  R                  SS9[         R                  R                  SS9[         R                  R                  SS9/S	9$ )
Nr   z"model/conditioning/instructpix2pixpositivenegativevaepixels)display_namelatent)node_idcategoryinputsoutputs)r   SchemaConditioningInputVaeImageOutputLatent)clss    7/home/wildlama/comfy/ComfyUI/comfy_extras/nodes_ip2p.pydefine_schema*InstructPixToPixConditioning.define_schema   s    yy29%%j1%%j1U#x(	 &&J&?&&J&?		  h 7
 	
    returnc                 b   UR                   S   S-  S-  nUR                   S   S-  S-  nUR                   S   U:w  d  UR                   S   U:w  a?  UR                   S   S-  S-  nUR                   S   S-  S-  nUS S 2XuU-   2XU-   2S S 24   nUR                  U5      n	0 n
[        R                  " U	5      U
S'   / nX4 HN  n/ nU H2  nUS   R	                  5       nXS'   US   U/nUR                  U5        M4     UR                  U5        MP     [        R                  " US   US   U
5      $ )N         samplesconcat_latent_imager   )shapeencodetorch
zeros_likecopyappendr   
NodeOutput)r   r
   r   r   r   xyx_offsety_offsetconcat_latent
out_latentoutconditioningctdns                    r   execute$InstructPixToPixConditioning.execute   sA   \\!_!Q&\\!_!Q&<<?a6<<?a#7Q!+1HQ!+1HAh8|3X(l5J1LMF

6*
 % 0 0 ?
9%0LA!aDIIK+8'(qT1I	 "
 JJqM 1 }}SVSVZ88r    N)
__name__
__module____qualname____firstlineno__classmethodr   r   r-   r:   __static_attributes__r<   r   r   r   r      s3    
 
" 9 9 9r   r   c                   L    \ rS rSr\S\\\R                        4S j5       r	Sr
g)InstructPix2PixExtension5   r    c                    #    [         /$ 7fN)r   )selfs    r   get_node_list&InstructPix2PixExtension.get_node_list6   s      )
 	
s   
r<   N)r=   r>   r?   r@   r   listtyper   	ComfyNoderI   rB   r<   r   r   rD   rD   5   s)    
T$r||*<%= 
 
r   rD   r    c                     #    [        5       $ 7frG   )rD   r<   r   r   comfy_entrypointrO   =   s     #%%s   )
r)   typing_extensionsr   comfy_api.latestr   r   rM   r   rD   rO   r<   r   r   <module>rR      s8     & /+92<< +9\
~ 
& 8 &r   