
    +j	              	       0    S SK Jr   SS\S\S\S\4S jjrg)	    )IOreceived_type
input_typestrictreturnc                 (   X:w  d  gU [         R                  R                  :X  d  U[         R                  R                  :X  a  gU [         R                  R                  :X  d  U[         R                  R                  :X  a  g[	        U [
        5      (       a  U[         R                  R                  :X  a  g[	        U [        5      (       a  [	        U[        5      (       d  g[        S U R                  S5       5       5      n[        S UR                  S5       5       5      n[         R                  R                  U;   d  [         R                  R                  U;   a  gU(       a  UR                  U5      $ [        UR                  U5      5      S:  $ )aI  
received_type and input_type are both strings of the form "T1,T2,...".

If strict is True, the input_type must contain the received_type.
  For example, if received_type is "STRING" and input_type is "STRING,INT",
  this will return True. But if received_type is "STRING,INT" and input_type is
  "INT", this will return False.

If strict is False, the input_type must have overlap with the received_type.
  For example, if received_type is "STRING,BOOLEAN" and input_type is "STRING,INT",
  this will return True.

Supports pre-union type extension behaviour of ``__ne__`` overrides.
TFc              3   @   #    U  H  oR                  5       v   M     g 7fNstrip.0ts     :/home/wildlama/comfy/ComfyUI/comfy_execution/validation.py	<genexpr>&validate_node_input.<locals>.<genexpr>.   s     E,Dq,D   ,c              3   @   #    U  H  oR                  5       v   M     g 7fr
   r   r   s     r   r   r   /   s     ?)>Aggii)>r   r   )r   AnyTypeio_type	MatchType
isinstancelistCombostrsetsplitissubsetlenintersection)r   r   r   received_typesinput_typess        r   validate_node_inputr$      s/   ( & 

***jBJJ<N<N.N ,,,
bll>R>R0R -&&:9I9I+I mS))J1L1L EM,?,?,DEEN?)9)9#)>??K 
zz^+rzz/A/A[/P&&{33 >..{;<q@@    N)F)comfy_api.latestr   r   boolr$    r%   r   <module>r)      s7     9>6A6A$'6A156A	6Ar%   