+
    –°³jâ ã                   ó~'  a € Rþ Et‡0 t ^ RIt^ RIt^ RIHt ^ RIHtHtHtH	t	 ^ RI
t
^ RIt
^ RIHt ^ RIHtHtHtHt ]	'       d   ^ RIHt ^ RIHt ]P.                  P1                  RR	4      R	8H  tR
tR R ltR R ltR R ltR R ltR R ltR R lt R R lt!R R lt"]P.                  P1                  RR	4      R	8H  t#R
t$Rt%R
t&]! 4       '       d   RMRt'](! ]P.                  P1                  RRÿ4      4      t)] ^ k ]! RR R!RR"7      t*] ^k R
t+] ^k ]! 4       t,] ^k ]! 4       t-] ^k ]! R#R$RR%7      t.] ^k Rt/] ^k ]! 4       t0] ^k ]! 4       t1] ^k ]! R&R'7      t2] ^	k R
t3] ^
k / t4] ^k Rt5] ^k R(t6] ^k ]P.                  P1                  R)R*4      R	8H  t7] ^k ]P.                  P1                  R+R*4      R	8H  t8] ^k ]P.                  P1                  R,R*4      R	8H  t9] ^k ]P.                  P1                  R-]! 4       '       d   R*MR	4      R	8H  t:] ^k ]P.                  P1                  R.R	4      R	8H  t;]P.                  P1                  R/R	4      R	8H  t<R
t=Rt>]P.                  P1                  R0R	4      R	8H  t?]P.                  P1                  R14      R	8H  t@]P.                  P1                  R24      R	8H  tA]P.                  P1                  R3R	4      R	8H  tB]P.                  P1                  R4]! 4       '       d   R*MR	4      R	8H  tCRtDRtERtF]P.                  P1                  R5R*4      R	8H  tG]P.                  P1                  R64      R	8H  tHR
tI]P.                  P1                  R7R84      tJ] ^k RtKRtLR
tM]"! 4       tNR
tOR
tPRtQR
tRRtS] ^k RtT] ^k RtU] ^k RtV] ^k RtW] ^k RtX] ^k RtY] ^k RtZ] ^k Rt[R
t\R
t]R
t^Rt_/ t`] ^k / ta] ^k Rtb]P.                  P1                  R9R*4      R	8H  tc]P.                  P1                  R:R	4      R	8H  tdR
teRtfRtgR;R
R<R=R>^R?R/th] ^k R@ti] ^k R
tj]P.                  P1                  RAR*4      R	8H  tk. tl] ^k Rtm] ^ k RtnR
to^ tp] ^!k RBtq] ^"k Rtr] ^#k RCts] ^$k R
tt] ^%k RBtu] ^&k Rtv] ^'k RCtw] ^(k RBtx] ^)k Rty] ^*k RCtzR
t{] ^+k Rt|] ^,k Rt}] ^-k RDt~]! RRERFRG7      t] ^.k ]P.                  P1                  RH4      R	8H  t€]P.                  P1                  RI4      R	8H  t�]! R
RJRKRG7      t‚] ^/k ]P.                  P1                  RL4      R	8H  tƒ]P.                  P1                  RM4      R	8H  t„]P.                  P1                  RN4      R	8H  t…]! ROR
RP7      t†] ^0k ](! ]EP                  ! RQ^4      4      tˆ](! ]EP                  ! RR^d4      4      t‰]P.                  P1                  RS4      R	8H  tŠ] ^1k RT RU lt‹]‹! 4       tŒ] ^2k ]P.                  P1                  RVR	4      R	8H  t�]P.                  P1                  RWR*4      R	8H  tŽ]P.                  P1                  RXR*4      R	8H  t�]P.                  P1                  RY]! 4       '       g   R	MR*4      R	8H  t�] ^3k Rt‘] ^4k . t’] ^5k . t“] ^6k R
t”] ^7k . t•] ^8k ]P.                  P1                  RZR[4      EP-                  4       t—R\ R] lt˜]˜! 4       t™] ^9k ]P.                  P1                  R^R*4      R	8H  tš] ^:k ]P.                  P1                  R_R*4      R	8H  t›] ^;k ]
EP8                  EP:                  '       d   R`MRatž]P.                  P1                  RbR`4      EP-                  4       tŸ]P.                  P1                  Rc]ž4      EP-                  4       t ]P.                  P1                  Rd]ž4      EP-                  4       t¡]P.                  P1                  ReRf4      EP-                  4       t¢] ^<k ]P.                  P1                  RgRf4      EP-                  4       t£] ^=k R
t¤] ^>k R
t¥] ^?k Rt¦] ^@k Rt§] ^Ak RCt¨] ^Bk Rt©] ^Ck Rtª] ^Dk ]P.                  P1                  RhR*4      R	8H  t«] ^Ek R
t¬Rit­R
t®]P.                  P1                  Rj4      R	8H  t¯]P.                  P1                  Rk4      R	8H  t°Rlt±Rmt²Rmt³]P.                  P1                  Rn4      R	8H  t´](! ]P.                  P1                  RoRp4      4      tµ]¶! ]P.                  P1                  RqRr4      4      t·]P.                  P1                  Rs4      R	8H  t¸]P.                  P1                  Rt4      R	8H  t¹](! ]P.                  P1                  RuR	4      4      tºRv t»Rw t¼ ! Rx Ry4      t½ ! Rz R{4      t¾]P.                  P1                  R|R*4      R	8H  t¿R} R~ ltÀR R€ ltÁR� R‚ ltÂ]P.                  P1                  RƒRf4      tÃ]
EP8                  EP:                  '       g   R	MR*tÄ]P.                  P1                  R„]Ä4      R	8H  tÅ]P.                  P1                  R…R*4      R	8H  tÆ]P.                  P1                  R†R*4      R	8H  tÇ]P.                  P1                  R‡R	4      R	8H  tÈR
tÉ]P.                  P1                  Rˆ4      R	8H  tÊ^tË^tÌRtÍ] ^Fk ^tÎ^2tÏ^tÐRtÑ] ^Gk ^tÒRtÓ] ^Hk ]! R‰RRŠ7      tÔ] ^Ik R
tÕR
tÖR
t×RtØ]P.                  P1                  R‹4      R	8H  tÙRtÚ] ^Jk R
tÛ]P.                  P1                  RŒ4      R	8H  tÜ] ^Kk ]P.                  P1                  R�4      R	8H  tÝ] ^Lk ]P.                  P1                  RŽR�4      tÞ]P.                  P1                  R�]! 4       '       d   R*MR	4      R	8H  tß] ^Mk ]P.                  P1                  R‘R	4      R	8H  tà] ^Nk Rtá] ^Ok ^
tâ]P.                  P1                  R’R	4      R	8H  tã^tä^@tåR“tæ^@tçRtè] ^Pk ^té^têR
të^tìR
tíR
tî]EP                  ! R”R	4      R	8H  tï]EP                  ! R•4      R	8H  tð]EP                  ! R–4      R	8H  tñ]P.                  P1                  R—RC4      tò] ^Qk ](! ]P.                  P1                  R˜^ 4      4      tó]P.                  P1                  R™R*4      R	8H  tôRtõR
töRt÷R
tøR
tùR
túR
tû^tü^týRtþ^útÿ^Et R
Et]! RšR›R
R%7      Et] ^Rk REtR
EtREt] ^Sk RœEt] ^Tk ER Et] ^Uk REtR
Et	R�]
EP                  9   ;'       g    Rž]
EP                  9   Et]! 4       ;'       g    E]Et]P.                  P1                  RŸR	4      R	8H  EtREt] ^Vk REt] ^Wk ]! R R�RŠ7      Et] ^Xk R¡ R¢ lEtE]! 4       Et] ^Yk R£Et] ^Zk ]! R¤R¥RR%7      Et] ^[k ](! ]P.                  P1                  R¦^<4      4      Et] ^\k ]! R§R
RŠ7      Et] ^]k R
Et^EtR¨R©.Et] ^^k R
Et] ^_k ]
EP8                  EP:                  '       d   R	MR*Et]P.                  P1                  RªE]4      R	8H  Et^Et] ^`k ^@Et] ^ak R«Et] ^bk R¬Et ] ^ck R­Et!] ^dk ]P.                  P1                  R®R*4      R	8H  Et"] ^ek  ! R¯ R°4      Et# ! R± R²4      Et$R³ R´ lEt%Rµ R¶ lEt&]! 4       '       d   RME]&! 4       Et'] ^fk ]! R·R¸RR%7      Et(] ^gk ]! ^<RP7      Et)] ^hk ]!! 4       Et*] ^ik ]! R¹R'7      Et+] ^jk ]! RºR»R
R%7      Et,] ^kk ]P.                  P1                  R¼R*4      R	8H  Et-] ^lk ]! R½R'7      Et.] ^mk ]P.                  P1                  R¾R*4      R	8H  Et/] ^nk ]P.                  P1                  R¿R	4      R	8H  Et0] ^ok ]P.                  P1                  RÀR	4      R	8H  Et1] ^pk ] ^qk ]! 4       '       dy    ^ RÁEI2EH3Et3 E]4'       dP   E]3EPj                  ! ]EPl                  EPo                  E]4EPq                  RÂ]EPr                  4      RÃ4      4      Et:ME]3EPj                  ! RÃ4      Et:MREt:^
Et=]P.                  P1                  RÄR	4      R	8H  Et>]P.                  P1                  RÅR	4      R	8H  Et?R
Et@R
EtAREtBR
EtC^€EtDRÆEtER
EtFREtGR
EtH] ^rk ]P.                  P1                  RÇR*4      R	8H  EtIR
EtJR
EtKR
EtLR
EtM]! 4       '       * EtN] ^sk ]P.                  P1                  RÈR�4      EtOE]OR�8g  EtPE]OR	8X  d   R�ME]OEtQ]P.                  P1                  RÉR4      EtR] ^tk ]P.                  P1                  RÊ4      R	8H  EtSR
EtT]P.                  P1                  RËR*4      R	8H  EtU] ^uk R
EtV] ^vk R
EtW] ^wk R
EtX] ^xk R
EtY] ^yk R
EtZ] ^zk R
Et[] ^{k R
Et\] ^|k R
Et]] ^}k ]P.                  P1                  RÌR*4      R	8H  Et^]P.                  P1                  RÍR*4      R	8H  Et_] ^~k REt`] ^k / Eta] ^€k ](! ]P.                  P1                  RÎRÏ4      4      Etb] ^�k ](! ]P.                  P1                  RÐR*4      4      Etc] ^‚k R
Etd] ^ƒk RÑ RÒ lEte]! RÓR�RŠ7      Etf] ^„k  ! RÔ RÕ4      Etg ! RÖ R×4      EthRØ RÙ lEti ! RÚ RÛ4      Etj ! RÜ RÝ4      Etk ! RÞ Rß4      Etl ! Rà Rá4      Etm]! E]m4       ! Râ RãE]m4      4       Etn]! E]m4       ! Rä RåE]m4      4       Eto ! Ræ Rç4      EtpR×Etq] ^…k RÛEtr] ^†k RèEts] ^‡k RÛEtt] ^ˆk  ! Ré Rê4      Etu ! Rë Rì4      EtvRí Rî lEtw ! Rï Rð4      EtxRñ Rò lEty. EROEtz] ^‰k . EROEt{] ^Šk Ró.Et|] ^‹k . Et}] ^Œk ]EP                  ! RôR	4      R	8H  Et~ ! Rõ Rö4      Et ! R÷ Rø4      Et€]	'       d   ^ RùEI�5  ! Rú Rû4      Et‚]P.                  P1                  RüR*4      R	8H  Etƒ] ^�k ]P.                  P1                  RýR	4      R	8H  Et„] ^Žk ]! ]EP
                  E]†,          4       R#   E];E]<3 d    REt: ELÞi ; i(  é    N)ÚCallable)ÚAnyÚcastÚLiteralÚTYPE_CHECKING)Ú	is_fbcode)ÚConfigÚget_tristate_envÚinherit_fields_fromÚinstall_config_module)ÚInductorChoices)ÚCUDAGraphPolicyÚTORCHINDUCTOR_INPLACE_PADDINGÚ1Fc                ó2   € V ^8„  d   QhR\         R,          /# ©é   ÚreturnN©Úbool)Úformats   "ÚW/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/_inductor/config.pyÚ__annotate__r      ó   € ÷ Cñ C¤t¨d¥{ñ Có    c                  ó   € \        R 4      # )Ú#TORCHINDUCTOR_FX_GRAPH_REMOTE_CACHE©r
   © r   r   Úfx_graph_remote_cache_defaultr       ó   € ÜÐAÓBÐBr   c                ó2   € V ^8„  d   QhR\         R,          /# r   r   )r   s   "r   r   r      s   € ÷ ñ œD 4�Kñ r   c                  óž   € \         P                  P                  R 4      R8X  d   R# \         P                  P                  R 4      R8X  d   R# R# )ÚTORCHINDUCTOR_VEC_ISA_OKr   TÚ0FN©ÚosÚenvironÚgetr   r   r   Úvec_isa_ok_defaultr*      s7   € Ü	‡z�z‡~�~Ð0Ó1°SÔ8ÙÜ	‡z�z‡~�~Ð0Ó1°SÔ8ÙÙr   c                ó2   € V ^8„  d   QhR\         R,          /# r   r   )r   s   "r   r   r   %   r   r   c                  ó   € \        R 4      # )Ú#TORCHINDUCTOR_AUTOTUNE_REMOTE_CACHEr   r   r   r   Úautotune_remote_cache_defaultr.   %   r!   r   c                ó2   € V ^8„  d   QhR\         R,          /# r   r   )r   s   "r   r   r   )   s   € ÷ Kñ K¬t°d­{ñ Kr   c                  ó   € \        R 4      # )Ú+TORCHINDUCTOR_BUNDLED_AUTOTUNE_REMOTE_CACHEr   r   r   r   Ú%bundled_autotune_remote_cache_defaultr2   )   s   € ÜÐIÓJÐJr   c                ó2   € V ^8„  d   QhR\         R,          /# r   r   )r   s   "r   r   r   -   s   € ÷ ñ ´4¸$µ;ñ r   c                  óF   € \        R \        4       '       g   R4      # R4      # )Ú/TORCHINDUCTOR_BUNDLE_TRITON_INTO_FX_GRAPH_CACHETN)r
   r   r   r   r   Ú)bundle_triton_into_fx_graph_cache_defaultr6   -   s(   € ÜØ9Ü—K’Kˆóð à%)óð r   c                ó2   € V ^8„  d   QhR\         R,          /# r   r   )r   s   "r   r   r   4   s   € ÷ Fñ F¬$°­+ñ Fr   c                  ó   € \        R 4      # )Ú&TORCHINDUCTOR_AUTOTUNE_AT_COMPILE_TIMEr   r   r   r   Ú autotune_at_compile_time_defaultr:   4   s   € ÜÐDÓEÐEr   c                ó$   € V ^8„  d   QhR\         /# ©r   r   r   )r   s   "r   r   r   8   s   € ÷ ñ ¤dñ r   c                  óÞ   € ^p R\         P                  9   d#   \         P                  P                  R4      R8H  # \        4       '       d$   \        P
                  P                  R4      pW8*  # R# )r   Ú&TORCHINDUCTOR_USE_STATIC_CUDA_LAUNCHERr   z-pytorch/inductor:static_cuda_launcher_versionT©r'   r(   r)   r   ÚtorchÚ_utils_internalÚjustknobs_getval_int)ÚSTATIC_CUDA_LAUNCHER_VERSIONÚversions     r   Ústatic_cuda_launcher_defaultrE   8   s]   € Ø#$Ð à/´2·:±:Ô=Ü�z‰z�~‰~ÐFÓGÈ3ÑNÐNÜ	�ŠÜ×'Ñ'×<Ñ<Ø;ó
ˆð Ñ6Ð6ñ r   c                ó$   € V ^8„  d   QhR\         /# r<   r   )r   s   "r   r   r   G   s   € ÷ 
ñ 
¤ñ 
r   c                  óâ   € ^ p R\         P                  9   d#   \         P                  P                  R4      R8H  # \        4       '       d&   Rp\        P
                  P                  V4      pW 8*  # R# )r   ÚTORCHINDUCTOR_PROLOGUE_FUSIONr   z(pytorch/inductor:prologue_fusion_versionTr?   )ÚENABLE_PROLOGUE_FUSION_VERSIONÚjk_namerD   s      r   Úprologue_fusion_enabledrK   G   s[   € Ø%&Ð"à&¬"¯*©*Ô4Ü�z‰z�~‰~Ð=Ó>À#ÑEÐEÜ	�ŠØ<ˆÜ×'Ñ'×<Ñ<¸WÓEˆØÑ8Ð8ár   Ú"TORCHDYNAMO_AUTO_FUNCTIONALIZED_V2Tú-/logs/dedicated_log_torch_compile_worker_rankÚ,TORCHINDUCTOR_PRECOMPILATION_TIMEOUT_SECONDSz0pytorch/remote_cache:enable_local_fx_graph_cacheÚ$TORCHINDUCTOR_FX_GRAPH_CACHE_DEFAULTÚTORCHINDUCTOR_FX_GRAPH_CACHE)ÚjustknobÚenv_name_defaultÚenv_name_forceÚdefaultz>pytorch/remote_cache:enable_non_blocking_remote_cache_write_v2Ú-TORCHINDUCTOR_NON_BLOCKING_REMOTE_CACHE_WRITE©rQ   rS   rT   z*torch.compiler.config.force_disable_caches)ÚaliasÚneeds_fixed_stride_orderÚTORCHINDUCTOR_CPP_WRAPPERr%   Ú(TORCHINDUCTOR_CPP_WRAPPER_BUILD_SEPARATEÚTORCHINDUCTOR_FX_WRAPPERÚ*TORCHINDUCTOR_CPP_CACHE_PRECOMPILE_HEADERSÚTORCHINDUCTOR_ONLINE_SOFTMAXÚ$TORCHINDUCTOR_APPLY_GUMBEL_MAX_TRICKÚTORCHINDUCTOR_SIZE_ASSERTSÚTORCHINDUCTOR_NAN_ASSERTSÚ(TORCHINDUCTOR_RUNTIME_TRITON_NAN_ASSERTSÚTORCHINDUCTOR_SCALAR_ASSERTSÚTORCHINDUCTOR_ALIGNMENT_ASSERTSÚTORCHINDUCTOR_MEMORY_PLANNINGÚTORCHINDUCTOR_USE_FAST_MATHÚTORCHINDUCTOR_MEMORY_POOLÚintermediatesÚ'TORCHINDUCTOR_REORDER_LOCALITY_TRAININGÚ"TORCHINDUCTOR_DYNAMIC_SCALE_RBLOCKÚpre_gradÚ	precisiong-Cëâ6?Únum_iterationsÚrequires_optimizerÚ	heuristicÚ*TORCHINDUCTOR_DECOMPOSE_SHARD_DIM_ALLTOALLÚnonerT   g      I@Ú*TORCHINDUCTOR_USE_EXPERIMENTAL_BENCHMARKERz-pytorch/inductor:use_experimental_benchmarker)rT   rS   rQ   Ú+TORCHINDUCTOR_DISTRIBUTED_MAX_AUTOTUNE_GEMMÚ&TORCHINDUCTOR_PIPELINE_GEMM_AUTOTUNINGÚ,TORCHINDUCTOR_USE_TORCH_PROFILER_BENCHMARKERz/pytorch/inductor:use_torch_profiler_benchmarkerÚTORCHINDUCTOR_MAX_AUTOTUNEÚ$TORCHINDUCTOR_MAX_AUTOTUNE_POINTWISEÚTORCHINDUCTOR_MAX_AUTOTUNE_GEMMÚ"TORCHINDUCTOR_INCREMENTAL_AUTOTUNE)rT   Ú%TORCHINDUCTOR_DEFAULT_AUTOTUNE_WARMUPÚ"TORCHINDUCTOR_DEFAULT_AUTOTUNE_REPÚ-TORCHINDUCTOR_AUTOTUNE_CUDAGRAPH_BENCHMARKINGc                ó2   € V ^8„  d   QhR\         R,          /# r   ©Úint)r   s   "r   r   r   8  s   € ÷ ñ ´°tµñ r   c                  ó�   € \         P                  P                  R 4      p V f   ^
# V P                  4       R9   d   R# \	        V 4      # )Ú,TORCHINDUCTOR_AUTOTUNE_NUM_CHOICES_DISPLAYEDN©rp   Úall©r'   r(   r)   Úlowerr~   ©Úenv_vals    r   Ú'_autotune_num_choices_displayed_defaultr‡   8  s8   € Ü�j‰j�n‰nÐKÓL€GØ‚ÙØ‡}�}ƒ˜/Ô)ÙÜˆw‹<Ðr   Ú/TORCHINDUCTOR_MAX_AUTOTUNE_REPORT_CHOICES_STATSÚ<TORCHINDUCTOR_MAX_AUTOTUNE_PRUNE_CHOICES_BASED_ON_SHARED_MEMÚ-TORCHINDUCTOR_TRITON_DISABLE_DEVICE_DETECTIONÚTORCHINDUCTOR_GRAPH_PARTITIONÚ(TORCHINDUCTOR_MAX_AUTOTUNE_GEMM_BACKENDSzATEN,TRITON,CPPc                ó2   € V ^8„  d   QhR\         R,          /# r   r}   )r   s   "r   r   r   “  s   € ÷ ñ ¬s°T­zñ r   c                  ó†   € \         P                  P                  R R4      p V P                  4       R9   d   R# \	        V 4      # )Ú*TORCHINDUCTOR_NVGEMM_MAX_PROFILING_CONFIGSÚ10Nr�   rƒ   r…   s    r   Ú%_nvgemm_max_profiling_configs_defaultr‘   “  s2   € Ü�j‰j�n‰nÐIÈ4ÓP€GØ‡}�}ƒ˜/Ô)ÙÜˆw‹<Ðr   Ú'TORCHINDUCTOR_NVGEMM_SUPPLEMENT_CONFIGSÚTORCHINDUCTOR_NVGEMM_SWAP_ABzATEN,TRITONÚATENÚ(TORCHINDUCTOR_MAX_AUTOTUNE_CONV_BACKENDSÚ3TORCHINDUCTOR_MAX_AUTOTUNE_BWD_WEIGHT_CONV_BACKENDSÚ2TORCHINDUCTOR_MAX_AUTOTUNE_BWD_INPUT_CONV_BACKENDSÚ,TORCHINDUCTOR_MAX_AUTOTUNE_GEMM_SEARCH_SPACEÚDEFAULTÚ,TORCHINDUCTOR_MAX_AUTOTUNE_FLEX_SEARCH_SPACEÚCUTEDSL_ENABLE_AUTOTUNINGi    ÚTORCHINDUCTOR_SAVE_ARGSÚ!TORCHINDUCTOR_AUTOTUNE_IN_SUBPROCg      N@g        Ú#TORCHINDUCTOR_AUTOTUNE_MULTI_DEVICEÚ(TORCHINDUCTOR_COLLECTIVE_BENCHMARK_NRUNSÚ50Ú*TORCHINDUCTOR_COLLECTIVE_BENCHMARK_TIMEOUTÚ30Ú'TORCHINDUCTOR_COORDINATE_DESCENT_TUNINGÚ5TORCHINDUCTOR_COORDINATE_DESCENT_CHECK_ALL_DIRECTIONSÚ'TORCHINDUCTOR_COORDINATE_DESCENT_RADIUSc                  ód   € \         P                  P                  R R4      P                  R4      p V # )Ú#TORCHINDUCTOR_AUTOHEURISTIC_COLLECTÚ Ú,©r'   r(   r)   Úsplit)Úcollect_envs    r   Ú _parse_autoheuristic_collect_envr­   (  s)   € Ü—*‘*—.‘.Ð!FÈÓK×QÑQÐRUÓV€KØÐr   c                  ód   € \         P                  P                  R R4      P                  R4      p V # )ÚTORCHINDUCTOR_AUTOHEURISTIC_USEÚmixed_mmr©   rª   )Úuse_envs    r   Ú_parse_autoheuristic_use_envr²   -  s(   € Ü�j‰j�n‰nÐ>À
ÓK×QÑQÐRUÓV€GØ€Nr   c                   óB   € ] tR tRtRtR]! 4       9   tR]! 4       9   tRtR# )Úautoheuristic_collecti2  zL
Config for which autoheuristic optimizations should collect training data.
Úpad_mmr°   r   N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r­   rµ   r°   Ú__static_attributes__r   r   r   r´   r´   2  s%   † ñð Ñ9Ó;Ñ;€FØÑ=Ó?Ñ?„Hr   r´   c                   óZ   € ] tR tRtRtR]! 4       9   d   RMRtR]! 4       9   d   RMRtRtR# )Úautoheuristic_usei;  zM
Config for which autoheuristic optimizations should use learned heuristics.
rµ   TNr°   r   )	r¶   r·   r¸   r¹   rº   r²   rµ   r°   r»   r   r   r   r½   r½   ;  s-   † ñð Ñ!=Ó!?Ô?‰TÀT€FØ!Ñ%AÓ%CÔC‰tÈ„Hr   r½   Ú'TORCHINDUCTOR_RUN_JIT_POST_COMPILE_HOOKc                ó0   € V ^8„  d   QhR\         R\        /# ©r   Únamer   ©Ústrr   )r   s   "r   r   r   J  s   € ÷ Bñ BœCð B¤Dñ Br   c                 ó>   € \        V 4      ;'       g    \        V 4      # ©N)Úcollect_autoheuristicÚuse_autoheuristic©rÁ   s   &r   Úrun_autoheuristicrÉ   J  s   € Ü  Ó&×AÐAÔ*;¸DÓ*AÐAr   c                ó0   € V ^8„  d   QhR\         R\        /# rÀ   rÂ   )r   s   "r   r   r   N  s   € ÷ :ñ :¤ð :¬ñ :r   c                 óh   € \        \        V 4      '       d   \        \        V 4      # V \        4       9   # rÅ   )Úhasattrr´   Úgetattrr­   rÈ   s   &r   rÆ   rÆ   N  s/   € ÜÔ$ d×+Ò+ÜÔ,¨dÓ3Ð3ð Ô7Ó9Ñ9Ð9r   c                ó0   € V ^8„  d   QhR\         R\        /# rÀ   rÂ   )r   s   "r   r   r   V  s   € ÷ 6ñ 6œCð 6¤Dñ 6r   c                 ó¼   € \        \        V 4      '       d;   \        \        V 4      pVf%   \        P                  P
                  P                  # V# V \        4       9   # rÅ   )rÌ   r½   rÍ   r@   Ú	_inductorÚconfigÚdeterministicr²   )rÁ   Úattrs   & r   rÇ   rÇ   V  sN   € ÜÔ  $×'Ò'ÜÔ(¨$Ó/ˆØŠ<Ü—?‘?×)Ñ)×7Ñ7Ð7Øˆð Ô3Ó5Ñ5Ð5r   Ú$TORCHINDUCTOR_AUTOHEURISTIC_LOG_PATHÚ!TORCHINDUCTOR_LAYOUT_OPTIMIZATIONÚTORCHINDUCTOR_FORCE_LAYOUT_OPTÚ#TORCHINDUCTOR_CACHE_SDPA_CONSTRAINTÚ TORCHINDUCTOR_KEEP_OUTPUT_STRIDEÚTORCHINDUCTOR_WARN_MIX_LAYOUTÚ)TORCHINDUCTOR_DELAY_REALIZE_CHEAP_OUTPUTS©rS   rT   Ú.TORCHINDUCTOR_ASSUME_UNALIGNED_FALLBACK_OUTPUTÚTORCHINDUCTOR_DEBUG_FUSIONÚTORCHINDUCTOR_BENCHMARK_FUSIONÚ#TORCHINDUCTOR_ENABLED_METRIC_TABLESr¨   Ú(TORCHINDUCTOR_LOOP_ORDERING_AFTER_FUSIONÚ*TORCHINDUCTOR_LOOP_REINDEXING_AFTER_FUSIONÚ'TORCHINDUCTOR_BENCHMARK_EPILOGUE_FUSIONçš™™™™™ñ?ÚTORCHINDUCTOR_SPLIT_REDUCTIONSÚTORCHINDUCTOR_DETERMINISTICÚTORCHINDUCTOR_BATCH_INVARIANTÚTORCHINDUCTOR_NUMERICSÚTORCHINDUCTOR_MIN_NUM_SPLITÚTORCHINDUCTOR_BENCHMARK_KERNELz3pytorch/inductor:combo_kernel_compile_time_autotuneÚ0TORCHINDUCTOR_COMBO_KERNEL_COMPILE_TIME_AUTOTUNEgš™™™™™©?ÚdevÚgitÚ0TORCHINDUCTOR_OPTIMIZE_SCATTER_UPON_CONST_TENSORÚTORCHINDUCTOR_DISABLED_PASSESc                ó$   € V ^8„  d   QhR\         /# r<   ©rÃ   )r   s   "r   r   r   “  s   € ÷ ñ ¤Cñ r   c                  óŽ   € R \         P                  9   d   \         P                  R ,          p MRp V R9  d   \        RV  24      hV # )ÚTORCHINDUCTOR_WORKER_STARTÚ
subprocesszInvalid start method: )ró   ÚforkÚspawn)r'   r(   ÚAssertionError)Ústart_methods    r   Údecide_worker_start_methodrø   “  sJ   € Ø#¤r§z¡zÔ1Ü—z‘zÐ">Õ?‰à#ˆØð ô ô
 Ð5°l°^ÐDÓEÐEØÐr   é   z(pytorch/compiler:worker_suppress_loggingÚ%TORCHINDUCTOR_WORKER_SUPPRESS_LOGGINGÚ.TORCHINDUCTOR_COMPILE_WORKER_WATCHDOG_INTERVALÚLOG_TLPARSEÚfuse_ddp_with_concat_opÚschedule_comm_waitÚ)TORCHINDUCTOR_PARTITIONED_SCATTER_ENABLEDi   g      @i /hYÚ'TORCHINDUCTOR_PARTITIONED_SCATTER_FORCEc                   ó4   a € ] tR tRt o RtRtV 3R ltRtV tR# )Ú_collectivei  Fc                ó2   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   # )r   Úauto_selectÚ#one_shot_all_reduce_threshold_bytes©r   r~   )r   Ú__classdict__s   "€r   r   Ú_collective.__annotate__  s   ø‡ ‚ ÙÑñ á),Ñ9ò r   r   Ni   )	r¶   r·   r¸   r¹   r  r  Ú__annotate_func__r»   Ú__classdictcell__©r  s   @r   r  r    s   ø‡ € Ø€KØ/9Ð'÷ ƒ r   r  c                   ó¸   a € ] tR tRt o RtRtRtRtRtRt	Rt
RtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRtRt R	t!R
t"Rt#Rt$Rt%Rt&V 3R lt'Rt(V t)R# )Úaten_distributed_optimizationsi	  zDConfiguration for distributed optimization passes on ATen FX graphs.TFNÚ
analyticalÚ	benchmarkÚwarng      $@g     @@g      ð?c                óî  <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ R,          ;R&   S[ R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[S[P
                  P                  .S[R,          3,          R,          ;R&   S[R$,          ;R	&   S[R$,          ;R
&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[ ;R&   S[ R,          ;R&   S[ ;R&   S[ ;R&   S[R%,          R,          ;R&   S[ ;R&   S[ ;R&   S[R&,          ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[;R&   S[ ;R&   S[R,          ;R&   S[;R&   S[;R&   S[ ;R &   S[;R!&   S[ ;R"&   S[ ;R#&   # )'r   Úenable_simple_overlapÚenable_overlap_schedulingNÚcollective_bucketingÚinsert_overlap_depsÚmax_compute_pre_fetchÚcompute_overlap_multiplerÚcustom_runtime_estimationÚcollective_estimatorÚcompute_estimatorÚ'profile_guided_estimations_profile_pathÚmax_memory_increase_gbÚmax_memory_increase_ratioÚmax_in_flight_gbÚmax_coll_distanceÚ!log_final_collectives_estimationsÚbucket_exposed_firstÚbucket_only_internode_commsÚenable_fusion_regionsÚbucket_modeÚ&prioritize_bucketing_during_schedulingÚ
spmd_checkÚspmd_mismatchÚ!overlap_scheduling_autofix_cyclesÚ!enable_low_contention_collectivesÚ!low_contention_skip_overlap_checkÚ!low_contention_min_bytes_per_rankÚpre_bucketing_fsdp_collectivesÚ,pre_bucketing_fsdp_collectives_bucket_cap_mbÚ0pre_bucketing_fsdp_collectives_min_bucket_cap_mbÚ0pre_bucketing_fsdp_collectives_max_bucket_cap_mbÚ&pre_bucketing_fsdp_collectives_verboseÚ@pre_bucketing_fsdp_collectives_saturation_calibration_multiplierÚ&low_contention_all_gather_ce_multicastÚallow_comms_decompositions)r  r  )rT   Ú
custom_opsÚcustom_ops_multidtypeÚ	coalesced)r  Úerror)	r   r~   Úfloatr   r@   ÚfxÚNoder   rÃ   )r   r  s   "€r   r   Ú+aten_distributed_optimizations.__annotate__	  s_  ø‡ ‚ ñ  Ñ&ñ ñ  $Ñ+ñ ñ   �+Ñ,ñ! ñ(  �Ñ+ñ) ñ.  �:Ñ,ñ/ ñ2  % t�|Ñ2ñ3 ñ>  (©¯©¯©¨¹À½Ð(EÕFÈÕMÑTñ? ñJ "Ð";Õ<ÑKñK ñV Ð8Õ9ÑGñW ñ\ .1°4­ZÑ>ñ] ñd " D�LÑ/ñe ñf  % t�|Ñ2ñg ñn ˜d•lÑ)ño ñt ˜T•zÑ(ñu ñv (,Ñ3ñw ñ|  �+Ñ,ñ} ñB "&Ñ-ñC ñL  Ñ&ñM ñb 	ÐMÕNÐQUÕUñña ñj -1Ñ7ñk ñx Ññy ñB ˜?Õ+Ñ4ñC ñL (,Ñ3ñM ñT (,Ñ3ñU ñZ (,Ñ3ñ[ ñb (+Ñ=ñc ñl %)Ñ/ñm ñt 38¸$µ,ÑEñu ñz 7<ÑBñ{ ñ@ 7<ÑCñA ñH -1Ñ8ñI ñP GLÑQñQ ñX -1Ñ8ñY ñ` !%Ñ,òa r   r   rù   )*r¶   r·   r¸   r¹   rº   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r!  r"  r#  r$  r%  r&  r'  r(  r)  r*  r+  r,  r-  r.  r/  r0  r1  r2  r3  r	  r»   r
  r  s   @r   r  r  	  s%  ø‡ € ÙNð #'Ðð ',Ðð )-Ðð (,Ðð )-Ðà.2Ðð QUÐð @LÐð =HÐð ;?Ð+ð ,0ÐØ.2Ðð &*Ðð %)ÐØ.3Ð%ð )-Ðð ).Ðð
 #'Ðð 	ð ð
 48Ð*ð €Jð
 /5€Mð
 /4Ð%ð /4Ð%ð /4Ð%ð .>Ð%ð
 ,0Ð"ð BFÐ0ð ?CÐ4ð ?DÐ4ð 49Ð*ð ORÐDð 49Ð*ð (-Ð÷a ƒ r   r  c                ó$   € V ^8„  d   QhR\         /# r<   r   )r   s   "r   r   r   œ  s   € ÷ 6ñ 6¬Tñ 6r   c                 óP   € ^p Rp\         P                  P                  V4      pW8¬  # )a  
TODO: Remove when parallel compiled is fully enabled internally. For rollout, use a
knob to enable / disable. The justknob should not be performed at import, however.
So for fbcode, we assign compile_threads to 'None' below and initialize lazily in
async_compile.py.
z0pytorch/inductor:enable_parallel_compile_version)r@   rA   rB   )ÚENABLE_PARALLEL_COMPILE_VERSIONrJ   rD   s      r   Ú#parallel_compile_enabled_internallyr?  œ  s.   € ð '(Ð#à@€GÜ×#Ñ#×8Ñ8¸ÓA€GØ*Ñ5Ð5r   c                ó$   € V ^8„  d   QhR\         /# r<   r}   )r   s   "r   r   r   ª  s   € ÷ ñ ¤ñ r   c                 ó,  € ^ RI p V P                  \        4      pR\        P                  9   d5   \        \        P                  R,          4      pVP                  RV4       V# \        P                  R8X  d   ^pVP                  R4       V# \        4       '       d&   \        4       '       g   ^pVP                  R4       V# \        P                  P                  4       pV'       g   \        RV 24      h\        ^ V4      pVP                  RV4       V# )	a	  
Here are the precedence to decide compile_threads
1. User can override it by TORCHINDUCTOR_COMPILE_THREADS.  One may want to disable async compiling by
   setting this to 1 to make pdb happy.
2. Set to 1 if it's win32 platform
3. decide by the number of CPU cores
NÚTORCHINDUCTOR_COMPILE_THREADSz!compile_threads set to %d via envÚwin32z"compile_threads set to 1 for win32z"compile_threads set to 1 in fbcodez expected nonzero cpu_count, got zcompile_threads set to %d)ÚloggingÚ	getLoggerr¶   r'   r(   r~   ÚinfoÚsysÚplatformr   r?  r@   Ú_utilsÚ	cpu_countrö   Úmin)rD  ÚlogÚcompile_threadsrJ  s       r   Údecide_compile_threadsrN  ª  sï   € ó ð ×
Ñ
œHÓ
%€Cà&¬"¯*©*Ô4ÜœbŸj™jÐ)HÕIÓJˆØ�‰Ð4°oÔFð Ðô 
�‰˜Ô	 ØˆØ�‰Ð5Ô6ð Ðô 
�ŠÔ@×BÒBØˆØ�‰Ð5Ô6ð Ðô —L‘L×*Ñ*Ó,ˆ	ßÜ Ð#CÀIÀ;Ð!OÓPÐPÜ˜b )Ó,ˆØ�‰Ð,¨oÔ>àÐr   z+pytorch/inductor:quiesce_async_compile_poolÚ(TORCHINDUCTOR_QUIESCE_ASYNC_COMPILE_POOLz/torch._inductor.config.use_static_cuda_launcherz:pytorch/inductor:static_launch_user_defined_triton_kernelsÚ7TORCHINDUCTOR_STATIC_LAUNCH_USER_DEFINED_TRITON_KERNELSÚ)TORCHINDUCTOR_STRICT_STATIC_CUDA_LAUNCHERz2torch._inductor.config.strict_static_cuda_launcherÚ#TORCHINDUCTOR_KEEP_STATIC_CUBIN_RAWÚ&TORCHINDUCTOR_USE_FAST_TRITON_LAUNCHERÚ(TORCHINDUCTOR_USE_LAUNCH_METADATA_SCHEMA)ÚparutilÚ.zfb/cacheÚTORCHINDUCTOR_SHAPE_PADDINGÚ#TORCHINDUCTOR_COMPREHENSIVE_PADDINGé   ÚTORCHINDUCTOR_PERMUTE_FUSIONÚTORCHINDUCTOR_PROFILEÚTORCHINDUCTOR_PROFILE_OUTPUTÚ3TORCHINDUCTOR_PROFILE_WITH_DO_BENCH_USING_PROFILINGÚTORCHINDUCTOR_FREEZINGÚ*TORCHINDUCTOR_ENABLE_LINEAR_BINARY_FOLDINGÚTORCHINDUCTOR_ANNOTATE_TRAININGÚTORCHINDUCTOR_FILE_LOCK_TIMEOUTÚ600Ú)TORCHINDUCTOR_COMPILE_WORKER_WAIT_TIMEOUTc                ó2   € V ^8„  d   QhR\         R,          /# r   rð   )r   s   "r   r   r   Î  s   € ÷ 	ñ 	œS 4�Zñ 	r   c                  ó¼   € R p \        4       '       dJ   \        P                  P                  RR 4      p\        P                  P                  RR4      pVe   RV 2p V # )NÚMAST_HPC_JOB_NAMEÚ	ROLE_RANKr%   rM   )r   r'   r(   r)   )Úlog_locÚmast_job_nameÚglobal_ranks      r   Úget_worker_log_pathrk  Î  sN   € Ø€GÜ‡{‚{ÜŸ
™
Ÿ™Ð':¸DÓAˆÜ—j‘j—n‘n [°#Ó6ˆàÒ$ØEÀkÀ]ÐSˆGà€Nr   ÚTORCHINDUCTOR_WORKER_LOGPATHc                   óð   a € ] tR tRt o ]P
                  P                  R4      R8H  tRt^t	]P
                  P                  R4      e"   ]
! ]P
                  P                  R4      4      MRtV 3R ltRtV tR# )	Úauto_chunkerià  ÚTORCHINDUCTOR_AUTO_CHUNKERr   Ú TORCHINDUCTOR_CHUNKER_NUM_CHUNKSNc                óX   <€ V ^8„  d   Qh/ S[ ;R&   S[;R&   S[;R&   S[R,          ;R&   # )r   ÚenableÚoutput_size_thresholdÚamplify_ratio_thresholdNÚ	num_chunkr  )r   r  s   "€r   r   Úauto_chunker.__annotate__à  s=   ø‡ ‚ ÙÑFñ ñ Ñ,ñ	 ñ !Ñ$ñ ñ �T�zñ ò r   r   i   )r¶   r·   r¸   r¹   r'   r(   r)   rr  rs  rt  r~   ru  r	  r»   r
  r  s   @r   rn  rn  à  sj   ø‡ € Ø—:‘:—>‘>Ð">Ó?À3ÑF€Fð "-Ðð $%Ðð �:‰:�>‰>Ð<Ó=ÒIñ 	ˆB�J‰J�N‰NÐ=Ó>Ô?àð ÷ ƒ r   rn  c                   ó  a € ] tR tRt o RtR&t]P                  P                  RR4      R8H  t	]P                  P                  RR4      R8H  t
Rt]! ]P                  P                  RR	4      4      tR]P                  P                  R
]P                  R8X  d   RMR4      3t]P                  P                  R4      t]P                  P                  RR4      R8H  t]P                  P                  RR4      R8H  t]P                  P                  RR4      R8H  tRtRt]! R4      tRt]! ]P                  P                  RR4      4      t]P                  P                  RR4      R8H  t]P                  P                  RR4      R8H  t]P                  P                  RR4      t]P                  P                  RR4      R8H  tRt]! ]P                  P                  RR4      4      t ]P                  P                  RR4      t!]P                  P                  RR4      t"Rt#Rt$]P                  P                  R R4      R8H  t%Rt&]P                  P                  R!R4      R8H  t']P                  P                  R"R4      R8H  t(R#t)V 3R$ lt*R%t+V t,R# )'Úcppiñ  zi
Settings for cpp backend.
This class provides a centralized location for managing cpp backend settings.
Ú$TORCHINDUCTOR_CPP_NO_REDUNDANT_LOOPSr   Ú!TORCHINDUCTOR_CPP_DYNAMIC_THREADSr%   NÚ TORCHINDUCTOR_CPP_MIN_CHUNK_SIZEÚ512ÚCXXÚdarwinzclang++zg++ÚTORCHINDUCTOR_CPP_MARCHÚ'TORCHINDUCTOR_CPP_ENABLE_KERNEL_PROFILEÚ-TORCHINDUCTOR_CPP_ENABLE_KERNEL_CONTEXT_GUARDÚ TORCHINDUCTOR_CPP_WEIGHT_PREPACKr$   Úoriginal_atenÚ,TORCHINDUCTOR_CPP_MAX_HORIZONTAL_FUSION_SIZEÚ16Ú-TORCHINDUCTOR_CPP_FALLBACK_SCATTER_REDUCE_SUMÚ-TORCHINDUCTOR_CPP_ENABLE_UNSAFE_MATH_OPT_FLAGÚ5TORCHINDUCTOR_CPP_ENABLE_FLOATING_POINT_CONTRACT_FLAGÚoffÚ)TORCHINDUCTOR_CPP_ENABLE_TILING_HEURISTICFÚ#TORCHINDUCTOR_CPP_GEMM_MAX_K_SLICESÚ%TORCHINDUCTOR_CPP_GEMM_CACHE_BLOCKINGÚ%TORCHINDUCTOR_CPP_GEMM_THREAD_FACTORSTÚ$TORCHINDUCTOR_CPP_USE_DECOMPOSE_TANHÚ%TORCHINDUCTOR_CPP_FORCE_INLINE_KERNELÚ-TORCHINDUCTOR_CPP_USE_CONSTEXPR_FOR_INT_ARRAYrY  c                óÖ   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[RS[3,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R	,          ;R&   # )
r   NÚsimdlenÚcxxÚmarchÚinject_relu_bug_TESTING_ONLYÚinject_log1p_bug_TESTING_ONLYÚ
vec_isa_okÚdescriptive_names©r@   rƒ  Úinductor_node)r~   ÚtuplerÃ   r   r   )r   r  s   "€r   r   Úcpp.__annotate__ñ  s�   ø‡ ‚ ñ* �4�ZÑñ+ ñ0 
ˆt‘SˆyÕ	ñ ñ1 ñ> ��:ÑAñ? ñd #&¨¥*Ñ3ñe ñf $'¨¥:Ñ4ñg ñn �t•ÑJño ñt ÐHÕIñ òu r   r   éÿÿÿÿ)-r¶   r·   r¸   r¹   rº   Úthreadsr'   r(   r)   Úno_redundant_loopsÚdynamic_threadsr’  r~   Úmin_chunk_sizerG  rH  r“  r”  Úenable_kernel_profileÚenable_kernel_context_guardÚweight_prepackr•  r–  r
   r—  r˜  Úmax_horizontal_fusion_sizeÚfallback_scatter_reduce_sumÚenable_unsafe_math_opt_flagÚ#enable_floating_point_contract_flagÚenable_tiling_heuristicsÚenable_grouped_gemm_templateÚgemm_max_k_slicesÚgemm_cache_blockingÚgemm_thread_factorsÚenable_loop_tail_vecÚenable_concat_linearÚuse_decompose_tanhÚuse_small_dequant_bufferÚforce_inline_kernelÚuse_constexpr_for_int_arrayÚuse_two_step_variance_thresholdr	  r»   r
  r  s   @r   rx  rx  ñ  s¤  ø‡ € ñð €Gð
 	�
‰
�‰Ð=¸sÓCÀsÑJð ð —j‘j—n‘nÐ%HÈ#ÓNÐRUÑU€Oà€GÙ˜Ÿ™Ÿ™Ð(JÈEÓRÓS€Nð 	Ø
�
‰
�‰�u¨3¯<©<¸8Ô+C™iÈÓOð€Cð Ÿ
™
Ÿ™Ð'@ÓA€Eð 	�
‰
�‰Ð@À#ÓFÈ#ÑMð ð 	�
‰
�‰ÐFÈÓLÐPSÑSð  ð
 —Z‘Z—^‘^Ð$FÈÓLÐPSÑS€Nð
 04Ð Ø04Ð!ñ /Ð/IÓJ€Jð 	ð ñ
 "%Ø
�
‰
�‰ÐEÀtÓLó"Ðð 	�
‰
�‰ÐFÈÓLÐPSÑSð  ð 	�
‰
�‰ÐFÈÓLÐPSÑSð  ð +-¯*©*¯.©.Ø?Àó+Ð'ð 	�
‰
�‰ÐBÀCÓHÈCÑOð ð
 $)Ð ñ ˜BŸJ™JŸN™NÐ+PÐRUÓVÓWÐð Ÿ*™*Ÿ.™.Ð)PÐRVÓWÐð Ÿ*™*Ÿ.™.Ð)PÐRVÓWÐð  Ðð !Ðð
 	�
‰
�‰Ð=¸sÓCÀsÑJð ð
  %Ðð 	�
‰
�‰Ð>ÀÓDÈÑKð ð 	�
‰
�‰ÐFÈÓLÐPSÑSð  ð
 '+Ð#÷[ ƒ r   rx  c                ó@   € V ^8„  d   QhR\         R,          R,          /# )r   r   N©ÚallowÚforce©r   )r   s   "r   r   r   �  s   € ÷ ñ œ7Ð#3Õ4°tÕ;ñ r   c                  ój   € \         P                  P                  R 4      p V R9   d   \        RV 4      # R# )ÚTORCHINDUCTOR_TLX_MODEzLiteral['allow', 'force']Nr¶  )r'   r(   r)   r   )Úmodes    r   Útlx_mode_from_envr½  �  s1   € ô
 �:‰:�>‰>Ð2Ó3€DØÐ!Ô!ÜÐ/°Ó6Ð6Ùr   c                   óž  a € ] tR tRt o Rt]! 4       t]P                  P                  R4      R8H  t
RtRtRt^ tRtRtRtRt]! 4       '       * t^€t^tRtRt]! RRR	7      tRtR
tRtRtRtRt Rt!]! RRRR7      t"Rt#Rt$Rt%Rt&]'! 4       t(Rt)Rt*]PV                  ! RR4      R8H  t,Rt-Rt.]P                  P                  RR4      R8H  t/]P                  P                  RR4      R8H  t0Rt1]P                  P                  RR4      R8H  t2]P                  P                  RR4      R8H  t3]P                  P                  RR4      R8H  t4Rt5Rt6Rt7]8! ]P                  P                  RR4      4      t9]P                  P                  RR4      R8H  t:]P                  P                  RR4      R8H  t;Rt<Rt=]>P~                  P€                  '       d   ^ M^tARtBRtCRtDRtERtF]P                  P                  RR4      R8H  tG]P                  P                  RR4      R8H  tH]P                  P                  RR4      R8H  tI]P                  P                  RR4      R8H  tJ]P                  P                  R R4      R8H  tK]P                  P                  R!R4      R8H  tLRtM]8! ]P                  P                  R"]>P~                  P€                  '       d   RMR#4      4      tN]8! ]P                  P                  R$R%4      4      tO]P                  P                  R&R4      R8H  tP]P                  P                  R']! 4       '       d   RMR4      R8H  tQ^tRRtS]P                  P                  R(R4      R8H  tTRtU^
tV]P                  P                  R)R4      R8H  tW]P                  P                  R*R4      R8H  tX/ tY^tZ]P                  P                  R+R4      R8H  t[]P                  P                  R,4      t\]P                  P                  R-R4      R8H  t]]P                  P                  R.R4      R8H  t^]P                  P                  R/R4      R8H  t_Rt`V 3R0 ltaR1tbV tcR# )2ÚtritoniŒ  z&
Config specific to codegen/triton.py
ÚTORCHINDUCTOR_CUDAGRAPHSr   TFNÚ TORCHINDUCTOR_CUDAGRAPH_OR_ERRORrÛ   rã   z)pytorch/inductor:coalesce_tiling_analysisÚ&TORCHINDUCTOR_COALESCE_TILING_ANALYSISrV   ÚTORCHINDUCTOR_NATIVE_MATMULr%   Ú!TORCHINDUCTOR_UNIQUE_KERNEL_NAMESÚ&TORCHINDUCTOR_UNIQUE_USER_KERNEL_NAMESrƒ  Ú#TORCHINDUCTOR_PERSISTENT_REDUCTIONSÚ TORCHINDUCTOR_DECOMPOSE_SORT_OPSÚ$TORCHINDUCTOR_COOPERATIVE_REDUCTIONSrY  i €  ÚTORCHINDUCTOR_MULTI_KERNELÚTORCHINDUCTOR_DIVISIBLE_BY_16Ú#TORCHINDUCTOR_EMIT_POINTER_RANGE_32é   ÚENABLE_PERSISTENT_TMA_MATMULÚENABLE_TEMPLATE_TMA_STOREÚ%ENABLE_TMA_LOAD_FOR_TEMPLATE_EPILOGUEÚENABLE_HOST_SIDE_TMAÚENABLE_TEMPLATE_AUTOWSÚTORCHINDUCTOR_SKIP_L1Ú$TORCHINDUCTOR_NUM_DECOMPOSE_K_SPLITSr�   Ú#TORCHINDUCTOR_DECOMPOSE_K_THRESHOLDÚ32ÚTORCHINDUCTOR_ENABLE_PDLÚ!TORCHINDUCTOR_MIX_ORDER_REDUCTIONÚ5TORCHINDUCTOR_MIX_ORDER_REDUCTION_AUTOTUNE_SPLIT_SIZEÚ4TORCHINDUCTOR_MIX_ORDER_REDUCTION_ALLOW_MULTI_STAGESÚTORCHINDUCTOR_NESTED_REDUCTIONÚ%TORCHINDUCTOR_TRITON_PROTON_PROFILINGÚ&TORCHINDUCTOR_TRITON_PROTON_OUTPUT_DIRÚ'TORCHINDUCTOR_TRITON_PROTON_GROUP_BY_SMÚ-TORCHINDUCTOR_TRITON_PROTON_SPLIT_INVOCATIONSÚ-TORCHINDUCTOR_TRITON_PROTON_PER_CTA_OCCUPANCYc                óR  <€ V ^8„  d   Qh/ S[ R,          R,          ;R&   S[S[S[S[R3,          ,          ,          R,          ;R&   S[ R,          R,          ;R&   S[R,          ;R&   S[;R&   S[;R	&   S[;R
&   S[;R&   S[R,          ;R&   S[;R&   S[R,          ;R&   S[;R&   S[;R&   S[;R&   S[ R,          ;R&   S[;R&   S[ R ,          ;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[S[S[3,          ;R&   S[;R&   S[R,          ;R&   S[;R&   S[;R&   S[;R&   # )!r   NÚtlx_mode.Úcudagraph_capture_sizesÚuser_visibleÚ"cudagraph_trees_generation_cloningÚ"cudagraph_dynamic_shape_warn_limitÚcudagraph_or_errorÚ%reorder_for_reducing_graph_partitionsÚ!cudagraph_partition_memory_budgetÚcoalesce_tiling_analysisÚ	max_tilesÚprefer_nd_tilingÚautotune_at_compile_timeÚautotune_with_sample_inputsÚtile_reductionsÚnative_matmulr˜  Údecompose_sort_opsÚmulti_kernelÚspill_thresholdr•  Úmix_order_reduction_split_sizeÚdebug_dump_kernel_inputsÚproton_profilingÚproton_output_dirÚproton_group_by_smÚproton_split_invocationsÚproton_per_cta_occupancyr¶  r™  )r   é   r   é   )r   r›  r~   r   r8  rÃ   Údict)r   r  s   "€r   r   Útriton.__annotate__Œ  sò  ø‡ ‚ ñ Ð&Õ'¨$Õ.ÑDñ ñ0 #¡3©©s°C¨x­Õ#8Õ9¸DÕ@ÑGñ1 ñb )0°Õ(?À$Õ(FÑMñc ñ~ ),¨d­
Ñ6ñ ñX ñ ñY ñf ,0Ñ6ñg ñp (-Ñ2ñq ñR #ñ ñS ñn �T�zÑ ño ñv Ñ"ñw ñL # T�kÑNñM ñV "&Ñ-ñW ñ^ Ñ!ñ_ ñB ÑNñC ñx ÐHÕIñ ñy ñT ñ ñU ñD ˜*Õ%ñ ñE ñD Ñ:ñE ñx #&¨¥*Ñ3ñy ñt
 %(¨$¥JÑ5ñu
 ñh #¡3© 8�nÑ1ñi ñv ñ ñw ñ~ ˜T•zñ ñ ñF ñ ñG ñN #ñ ñO ñX #ñ òY r   r   )dr¶   r·   r¸   r¹   rº   r½  rá  r'   r(   r)   Ú
cudagraphsÚcudagraph_treesÚcudagraph_skip_dynamic_graphsrâ  Úcudagraph_min_partition_sizeÚslow_path_cudagraph_assertsÚ!cudagraph_trees_history_recordingÚcudagraph_trees_objgraphrä  r   Ú cudagraph_support_input_mutationÚ#cudagraph_unexpected_rerecord_limitrå  Úforce_cudagraph_syncÚforce_cudagraphs_warmupr	   ræ  rç  rè  Úfast_path_cudagraph_assertsÚskip_cudagraph_warmupÚdebug_sync_graphÚdebug_sync_kernelÚdense_indexingré  rê  rë  Úautotune_pointwiseÚautotune_cublasLtr:   rì  rí  rî  Úgetenvrï  Ú tiling_prevents_pointwise_fusionÚ tiling_prevents_reduction_fusionÚunique_kernel_namesÚunique_user_kernel_namesr˜  Úpersistent_reductionsrð  Úcooperative_reductionsÚforce_cooperative_reductionsÚuse_two_step_variance_min_numelr´  r~   rñ  Údivisible_by_16Úemit_pointer_range_32Úmin_split_scan_rblockÚstore_cubinr@   rD   Úhiprò  Úuse_block_ptrÚuse_tensor_descriptorÚ)transpose_discontiguous_tensor_descriptorr•  Úcodegen_upcast_to_fp32Úenable_persistent_tma_matmulÚenable_template_tma_storeÚ%enable_tma_load_for_template_epilogueÚenable_host_side_tmaÚenable_template_autowsÚskip_l1_cacheÚ.disallow_failing_autotune_kernels_TESTING_ONLYÚnum_decompose_k_splitsÚdecompose_k_thresholdÚ
enable_pdlÚmix_order_reductionÚ"mix_order_reduction_initial_xblockró  Ú'mix_order_reduction_autotune_split_sizeÚ#mix_order_reduction_non_strict_modeÚmix_order_reduction_max_readsÚ&mix_order_reduction_allow_multi_stagesÚnested_reductionrô  Úmax_kernel_dump_occurrencesrõ  rö  r÷  rø  rù  Údynamic_disable_pipeliningr	  r»   r
  r  s   @r   r¿  r¿  Œ  sI  ø‡ € ññ 2CÓ1D€Hð —‘—‘Ð :Ó;¸sÑB€Jð €Oð %*Ð!ð DHÐð $%Ð ð #'Ðð ).Ð%ð  %Ðð JNÐ&ñ ,5«;¤Ð$ð +.Ð'ð 67Ð&ð !Ðð $Ðñ  &Ø9Øô Ðð 37Ð)ð
 03Ð%ð #(Ðð "Ðð Ðð Ðð €Ná%+Ø<Ø?Øô&Ðð !€Ið #Ðð Ðð Ðñ -MÓ,NÐð
 ).Ðð "€Oð$ Ÿ)š)Ð$AÀ3ÓGÈ3ÑN€Mð (,Ð$Ø'+Ð$ð 	�
‰
�‰Ð:¸CÓ@ÀCÑGð ð 	�
‰
�‰Ð?ÀÓEÈÑLð ð 	ð ð 	�
‰
�‰Ð<¸cÓBÀcÑIð ð 	�
‰
�‰Ð9¸3Ó?À3ÑFð ð 	�
‰
�‰Ð=¸sÓCÀsÑJð ð
 $)Ð ð '+Ð#Ø&+Ð#ñ ),Ø
�
‰
�‰Ð3°SÓ9ó)€Lð
 —j‘j—n‘nÐ%DÀcÓJÈcÑQ€Oð 	�
‰
�‰Ð<¸cÓBÀcÑIð ð  Ðð €Kð "'§¡×!2×!2Ð!2™2¸€Oð €Mð "Ðð
 15Ð-ð
 04Ð ð "Ðð 	�
‰
�‰Ð5°sÓ;¸sÑBð !ð
 !#§
¡
§¡Ð/JÈCÓ PÐTWÑ WÐð 	�
‰
�‰Ð>ÀÓDÈÑKð *ð Ÿ:™:Ÿ>™>Ð*@À#ÓFÈ#ÑMÐð  ŸZ™ZŸ^™^Ð,DÀcÓJÈcÑQÐð —J‘J—N‘NÐ#:¸CÓ@ÀCÑG€Mð 6;Ð2ñ !Ø
�
‰
�‰Ø2¸5¿=¹=×;L×;LÐ;L±CÐRVó	
óÐñ  Ø
�
‰
�‰Ð<¸dÓCóÐð —‘—‘Ð :¸CÓ@ÀCÑG€Jð 	�
‰
�‰Ð:Á9Ç;Â;¹CÐTWÓXØñ	ð ð *+Ð&à15Ð"à
�
‰
�‰ÐNÐPSÓTØñ	ð ,ð +0Ð'ð %'Ð!ð 	�
‰
�‰ÐMÈsÓSØñ	ð +ð —z‘z—~‘~Ð&FÈÓLÐPSÑSÐð 02Ðð
 #$Ðð 	�
‰
�‰Ð>ÀÓDÈÑKð ð %'§J¡J§N¡NØ0ó%Ðð
 	�
‰
�‰Ð@À#ÓFÈ#ÑMð ð
 	�
‰
�‰ÐFÈÓLÐPSÑSð ð 	�
‰
�‰ÐFÈÓLÐPSÑSð ð "&Ð÷a ƒ r   r¿  c                   óŒ  a € ] tR tRt o RtRtRt]P                  P                  RR4      R8H  t
]P                  P                  RR4      R8H  t]P                  P                  R	R4      R8H  t]P                  P                  R
R4      R8H  t]P                  P                  RR4      t]P                  P                  RR4      t]P                  P                  RR4      tRtRtRtRtRtRtRtRt/ t]P                  P                  RR4      R8H  tRt]P                  P                  RR4      R8H  t]! ]P                  P                  R^4      4      t/ tRt Rt!]P                  P                  RR4      R8H  t"Rt#Rt$]%! 4       '       * t&Rt'Rt(Rt)/ t*Rt+]P                  P                  RR4      R8H  t,Rt-Rt.Rt/Rt0V 3R lt1Rt2V t3R# )Úaot_inductori	  z1
Settings for Ahead-Of-Time Inductor Compilation
Fr¨   ÚAOT_INDUCTOR_DEBUG_COMPILEr%   r   ÚAOT_INDUCTOR_DEBUG_SYMBOLSÚ!AOT_INDUCTOR_ENABLE_FRAME_POINTERÚAOT_INDUCTOR_ENABLE_LINE_TABLESÚ&AOT_INDUCTOR_COMPILE_WRAPPER_OPT_LEVELÚO1Ú-AOT_INDUCTOR_DEBUG_INTERMEDIATE_VALUE_PRINTERÚ&AOT_INDUCTOR_FILTERED_KERNELS_TO_PRINTNTÚ/AOTINDUCTOR_RAISE_ERROR_ON_IGNORED_OPTIMIZATIONÚDUMP_AOTI_MINIFIERÚAOTINDUCTOR_REPRO_LEVELÚ)AOT_INDUCTOR_WEIGHT_USE_CACHING_ALLOCATORÚAOT_INDUCTOR_ENABLE_LTOc                ó   <€ V ^8„  d   Qh/ S[ ;R&   S[R,          ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ R,          ;R&   S[ ;R&   S[S[S[3,          ;R	&   S[ ;R
&   S[ ;R&   S[ ;R&   S[;R&   S[S[S[3,          ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[ ;R&   S[R,          ;R&   S[ ;R&   S[ R,          ;R&   S[ R,          ;R&   S[R,          ;R&   S[S[P                  P                  S[	S[,          3,          ;R&   S[	S[,          R,          ;R&   S[ ;R&   S[R,          ;R&   S[S[	S[,          ,          R,          ;R&   S[R,          ;R&   # )r   Úautotune_per_kernel_allocÚ debug_intermediate_value_printerÚuse_runtime_constant_foldingÚforce_mmap_weightsÚpackageNÚpackage_cpp_onlyÚdynamic_linkageÚmetadataÚ#raise_error_on_ignored_optimizationÚcheck_lowerboundÚdump_aoti_minifierÚrepro_levelÚpresetsÚallow_stack_allocationÚuse_minimal_arrayref_interfaceÚweight_use_caching_allocatorÚpackage_constants_in_soÚ package_constants_on_disk_formatÚprecompile_headersÚembed_kernel_binaryÚemit_multi_arch_kernelÚmodel_name_for_generated_filesÚcustom_ops_to_c_shimsÚcustom_op_libsÚlink_libtorchÚcross_target_platformÚaoti_shim_libraryÚaoti_shim_library_path)r%   r   Ú2Ú3)
r   r   rü  rÃ   r~   r   r@   Ú_opsÚ
OpOverloadÚlist)r   r  s   "€r   r   Úaot_inductor.__annotate__	  s  ø‡ ‚ ñ  $Ñ+ñ ñX '.Ð.@Õ&Añ ñY ñ| #'Ñ.ñ} ñD Ñ$ñE ñP ÑñQ ñR ˜T•kÑ(ñS ñZ Ñ ñ[ ñb ‘3™�8�nÑ!ñc ñh *.ñ ñi ñx Ñ!ñy ñ~ ÑOñ ñL ÑHñM ñR ‘#‘s�(�^Ñ ñS ñZ !Ñ(ñ[ ñp %)Ñ0ñq ñv #'ñ ñw ñB "Ñ(ñC ñ^ '*¨D¥jÑ7ñ_ ñd Ñ.ñe ñj  �Ñ+ñk ñ| ! 4�KÑ.ñ} ñR %(¨$¥JÑ5ñS ñX  ¡§
¡
× 5Ñ 5±t¹CµyÐ @ÕAÑFñY ñ\ ™•I Õ$Ñ+ñ] ñh Ññi ñx  �:Ñ,ñy ñ@ ™T¡#�Y•¨Õ-Ñ4ñA ñB   $�JÑ-òC r   r   )4r¶   r·   r¸   r¹   rº   rE  Úoutput_pathr'   r(   r)   Údebug_compileÚdebug_symbolsÚenable_frame_pointerÚenable_line_tablesÚcompile_wrapper_opt_levelrF  Úfiltered_kernel_namesÚserialized_in_specÚserialized_out_specrG  rH  Úuse_consts_asm_buildrI  rJ  rK  rL  rM  rN  rO  r~   rP  rQ  rR  rS  rT  rU  rV  r   rW  rX  rY  rZ  r[  r\  Ú
enable_ltor]  r^  r_  r`  r	  r»   r
  r  s   @r   r6  r6  	  s7  ø‡ € ñð ',Ðð €Kà—J‘J—N‘NÐ#?ÀÓEÈÑL€MØ—J‘J—N‘NÐ#?ÀÓEÈÑL€Mð 	�
‰
�‰Ð:¸CÓ@ÀCÑGð ð
 Ÿ™Ÿ™Ð(IÈ3ÓOÐSVÑVÐð !#§
¡
§¡Ø0°$ó!Ðð EGÇJÁJÇNÁNØ7¸óEÐ$ð
 ŸJ™JŸN™NØ0°$óÐð Ðð Ðð */Ð ð  %Ðð  Ðà€GØ$(Ðð !€Oð  "€Hð 	�
‰
�‰ÐHÈ#ÓNÐRUÑUð (ð "Ðð  "Ÿz™zŸ~™~Ð.BÀCÓHÈCÑOÐñ ˜2Ÿ:™:Ÿ>™>Ð*CÀQÓGÓH€Kð !€Gð $)Ðð ,1Ð"ð 	�
‰
�‰ÐBÀCÓHÈCÑOð !ð %)Ðð 48Ð$ñ $-£;œÐð (,Ðð +/Ðð 26Ð"ð EGÐà'+€Nð —‘—‘Ð 9¸3Ó?À3ÑF€Jð €Mð )-Ðð 15ÐØ)-Ð÷C ƒ r   r6  c                   ó0   a € ] tR tRt o RtV 3R ltRtV tR# )Úaot_inductor_modeiæ	  Fc                ó&   <€ V ^8„  d   Qh/ S[ ;R&   # )r   Úcompile_standaloner   )r   r  s   "€r   r   Úaot_inductor_mode.__annotate__æ	  s   ø‡ ‚ ñ Ñ$ò r   r   N)r¶   r·   r¸   r¹   ru  r	  r»   r
  r  s   @r   rs  rs  æ	  s   ø‡ € ð  %Ð÷ ƒ r   rs  c                   óœ  a € ] tR tRt o RtRtRtRt]P                  P                  ]P                  P                  R]P                  P                  ]P                  P                  ]P                   4      R4      4      4      tRt. ROt]! ]]]]3,          ];QJ d=    . R ]P                  P                  R	R
4      P/                  R4       4       F  NK  	  5M6! R ]P                  P                  R	R
4      P/                  R4       4       4      4      t]! ]]]]3,          ];QJ dS    . R ]P                  P                  RRP                  R ] 4       4      4      P/                  R4       4       F  NK  	  5ML! R ]P                  P                  RRP                  R ] 4       4      4      P/                  R4       4       4      4      t]P                  P                  RR4      R8H  tRt^t]P                  P                  RR4      R8H  t]P                  P                  R4      t]P                  P                  R4      t]P                  P                  RR4      t ]P                  P                  RR4      R8H  t!]P                  P                  RR4      R8H  t"]P                  P                  RR4      t#Rt$Rt%Rt&Rt'V 3R lt(Rt)V t*R# )Úcutlassiï	  z%
Config specific to cutlass backend.
ú-O1FÚTORCHINDUCTOR_CUTLASS_DIRz../third_party/cutlass/Nc              #  ó8   "  € T F  p\        V4      x € K  	  R # 5irÅ   r}   ©Ú.0Úxs   & r   Ú	<genexpr>Úcutlass.<genexpr>
  s!   é € ð 
ñ�ô ��FˆFóùó   ‚Ú+TORCHINDUCTOR_CUTLASS_DYNAMIC_CLUSTER_SHAPEz2,1,1r©   c              #  ó8   "  € T F  p\        V4      x € K  	  R # 5irÅ   r}   r|  s   & r   r  r€  
  s!   é € ð 
ñ�ô ��FˆFóùr�  Ú.TORCHINDUCTOR_CUTLASS_DYNAMIC_CLUSTER_FALLBACKc              #  ó8   "  € T F  p\        V4      x € K  	  R # 5irÅ   rð   )r}  Úvs   & r   r  r€  
  s   é € ÐGÑ)F Aœ˜QŸ˜Ó)Fùr�  ÚCUTLASS_EPILOGUE_FUSIONr%   r   Ú/INDUCTOR_CUDA_BACKEND_GENERATE_TEST_RUNNER_CODEÚTORCHINDUCTOR_CUTLASS_ALLOWLISTÚTORCHINDUCTOR_CUTLASS_DENYLISTÚ)TORCHINDUCTOR_CUTLASS_INSTANTIATION_LEVELÚ+TORCHINDUCTOR_CUTLASS_HASH_WITH_COMPILE_CMDÚ"TORCHINDUCTOR_CUTLASS_PRESCREENINGÚ!TORCHINDUCTOR_CUTLASS_ENABLED_OPSr‚   Tc                ób  <€ V ^8„  d   Qh/ S[ R,          ;R&   S[R,          ;R&   S[S[,          ;R&   S[S[S[S[3,          ;R&   S[S[S[S[3,          ;R&   S[;R&   S[;R&   S[R,          ;R	&   S[R,          ;R
&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   Úcompile_opt_levelNÚcutlass_max_profiling_configsÚ%cutlass_max_profiling_swizzle_optionsÚcutlass_dynamic_cluster_shapeÚ cutlass_dynamic_cluster_fallbackÚcutlass_backend_min_gemm_sizeÚgenerate_test_runnerÚcutlass_op_allowlist_regexÚcutlass_op_denylist_regexÚcutlass_instantiation_levelÚcutlass_hash_with_compile_cmdÚcutlass_prescreeningÚcutlass_enabled_opsÚuse_binary_remote_cacheÚupload_to_binary_remote_cacheÚbinary_remote_cache_force_writeÚenable_caching_codegen)ú-O0ry  ú-O2ú-O3z-OS)r   r~   re  r›  r   rÃ   )r   r  s   "€r   r   Úcutlass.__annotate__ï	  s<  ø‡ ‚ ñ
 Ð@ÕAÑIñ ñ8 $'¨¥:Ñ4ñ9 ñ> ,0±­9ÑCñ? ñB $)©©c±3¨Õ#7ñ ñC ñT ',©C±±c¨MÕ&:ñ 	ñU ñ| $'Ñ*ñ} ñD ñ ñE ñP !$ d¥
ñ ñQ ñj  # T�zñ ñk ñ~ "%ñ ñ ñH $(ñ ñI ñR ñ ñS ñ` ñ ña ñj "Ñ(ñk ñp $(Ñ/ñq ñx &*Ñ1ñy ñ~ !Ñ'ò r   r   )rú  r   é   é   )+r¶   r·   r¸   r¹   rº   r�  Úenable_debug_infoÚuse_fast_mathr'   ÚpathÚrealpathr(   r)   ÚjoinÚdirnamer@   Ú__file__Úcutlass_dirr‘  r’  r   r›  r~   r«   r“  r”  Úcutlass_epilogue_fusion_enabledÚcutlass_tma_onlyr•  r–  r—  r˜  r™  rš  r›  rœ  r�  rž  rŸ  r   r	  r»   r
  r  s   @r   rx  rx  ï	  sÈ  ø‡ € ñð EJÐð Ðð €Mð —'‘'×"Ñ"Ø
�
‰
�‰Ø'Ø�G‰G�L‰LØ—‘—‘ §¡Ó/Ø)óó	
ó€Kð 15Ð!ò 8DÐ)á:>Øˆc�3˜ˆmÕßˆñ 
à—Z‘Z—^‘^Ø=¸wóç‰e�C‹jðó
�‰ñ 
à—Z‘Z—^‘^Ø=¸wóç‰e�C‹jðó
ó 	
ó;Ð!ñ >BØˆc�3˜ˆmÕßˆñ 
à—Z‘Z—^‘^Ø@Ø—‘ÑGÑ)FÓGÓGó÷ ‰e�C‹jðó
�‰ñ 
à—Z‘Z—^‘^Ø@Ø—‘ÑGÑ)FÓGÓGó÷ ‰e�C‹jðó
ó 	
ó	>Ð$ð 	�
‰
�‰Ð0°#Ó6¸#Ñ=ð $ð
 Ðð *+Ð!ð
 	�
‰
�‰ÐHÈ#ÓNÐRUÑUð ð .0¯Z©Z¯^©^Ø)ó.Ðð -/¯J©J¯N©NØ(ó-Ðð (*§z¡z§~¡~Ø3°Só(Ðð 	�
‰
�‰ÐDÀcÓJÈcÑQð "ð 	�
‰
�‰Ð;¸SÓAÀSÑHð ð  "Ÿz™zŸ~™~Ø+¨Uó Ðð
 %)Ðð +0Ð!ð -2Ð#ð $(Ð÷ ƒ r   rx  c                   ó@   a € ] tR tRt o RtRtRtRtRtV 3R lt	Rt
V tR# )Úcudaiq
  NFc                óh   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[ R,          ;R&   S[ R,          ;R&   # )r   NÚarchrD   Úcuda_cxxrð   )r   r  s   "€r   r   Úcuda.__annotate__q
  s8   ø‡ ‚ ñ
 ��*Ññ ñ �4�ZÑñ ñ$ �D�jÑò% r   r   )r¶   r·   r¸   r¹   r´  rD   rµ  Úenable_cuda_ltoÚenable_ptxas_infor	  r»   r
  r  s   @r   r²  r²  q
  s0   ø‡ € ð
 €Dð
 €Gð  €Hð €Oð Ð÷1 ƒ r   r²  c                   ó¢   a € ] tR tRt o RtRtRt]P                  P                  ]P                  P                  RR4      4      tV 3R ltRtV tR# )ÚxpuiŒ
  Nrz  r¨   c                óh   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[ R,          ;R&   S[ R,          ;R&   # )r   Nr´  rD   Úoneapi_rootrð   )r   r  s   "€r   r   Úxpu.__annotate__Œ
  s8   ø‡ ‚ ñ ��*Ññ	 ñ �4�ZÑñ ñ �t•Ñ"ò r   r   )r¶   r·   r¸   r¹   r´  rD   r¼  r'   r©  rª  r(   r)   r®  r	  r»   r
  r  s   @r   rº  rº  Œ
  sE   ø‡ € ð €Dð €Gð #€Kà—'‘'×"Ñ" 2§:¡:§>¡>Ð2MÈrÓ#RÓS€K÷ ƒ r   rº  c                   ód  a € ] tR tRt o . t. ROtRtRtRtRt	Rt
RtRt]P                  P                  R4      t]P                  P                  RR4      R	8H  tRtRtRtRtRt^t^t]P                  P                  R
4      R9   t]! ]P                  P                  RR4      4      tV 3R ltRtV tR# )Úrocmi›
  r¢  FTNÚTORCHINDUCTOR_CK_DIRÚ-INDUCTOR_CK_BACKEND_GENERATE_TEST_RUNNER_CODEr%   r   ÚTORCHINDUCTOR_ORIGAMIÚTORCHINDUCTOR_ORIGAMI_TOPKÚ6c                óT  <€ V ^8„  d   Qh/ S[ S[,          ;R&   S[ S[R,          ,          ;R&   S[R,          ;R&   S[R,          ;R&   S[;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R	&   S[;R
&   S[ S[,          R,          ;R&   S[;R&   S[;R&   S[;R&   S[;R&   # )r   r´  Úck_supported_archr�  NÚ	rocm_homer–  Ún_max_profiling_configsÚck_max_profiling_configsÚck_tile_max_profiling_configsÚuse_preselected_instancesÚkBatch_sweepÚsplit_k_thresholdÚcontiguous_thresholdÚorigamiÚorigami_topk©Úgfx90aÚgfx942Úgfx950)	r¡  ry  r¢  r£  z-Osz-Ozz-Ominz-Ofastz-Omax)re  rÃ   r   r   r~   )r   r  s   "€r   r   Úrocm.__annotate__›
  s  ø‡ ‚ ñ ‰s�)Ññ ñ ™GÐ$@ÕAÕBñ ñ ñ ØLõñ ñ ñH �T�zÑ ñI ñV ñ ñW ñ` ! 4�ZÑ.ña ñh " D�jÑ/ñi ñp $'¨¥:Ñ4ñq ñx  $Ñ+ñy ñ@ ‘s•)˜dÕ"Ñ)ñA ñF ÑñG ñL Ñ"ñM ñx ÑJñy ñB ÑNòC r   r   rÑ  )Nr   )r¶   r·   r¸   r¹   r´  rÆ  r�  Úis_debugÚ
save_tempsr¨  Úflush_denormalsÚprint_kernel_resource_usagerÇ  r'   r(   r)   Úck_dirr–  rÈ  rÉ  rÊ  rË  rÌ  rÍ  rÎ  rÏ  r~   rÐ  r	  r»   r
  r  s   @r   r¿  r¿  ›
  sô   ø‡ € ð €DòFÐð 	ð ð
 €Hð €Jð €Mð €Oð #(Ðð !€Ið �Z‰Z�^‰^Ð2Ó3€Fð 	�
‰
�‰ÐFÈÓLÐPSÑSð ð
 +/Ðð ,0Ðð 15Ð!ð ',Ðð &*€Lð  Ðð !#Ðð, —J‘J—N‘NÐ#:Ó;¸{ÑJ€Gñ
 ˜BŸJ™JŸN™NÐ+GÈÓMÓN€L÷C ƒ r   r¿  Úpallasc                   ó   € ] tR tRtRtRtR# )Úmtiai  Fr   N)r¶   r·   r¸   r¹   Údisable_welford_reductionr»   r   r   r   rÝ  rÝ    s   † à %Ôr   rÝ  c                   óH   a € ] tR tRt o RtRtRtRtRtRt	Rt
V 3R ltRtV tR	# )
Úhalidei  Úhostz	host-cudaÚAnderson2021Ú	Adams2019Fc                óN   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[ R,          ;R&   # )r   Úscheduler_cudaÚscheduler_cpu)râ  ÚLi2018rã  ÚMullapudi2016r¹  )r   r  s   "€r   r   Úhalide.__annotate__  s/   ø‡ ‚ ñ ÐRÕSñ ñ ñ ÐQÕRñ ò r   r   N)r¶   r·   r¸   r¹   Ú
cpu_targetÚ
gpu_targetrå  ræ  ÚassertsÚdebugÚscan_kernelsr	  r»   r
  r  s   @r   rà  rà    sA   ø‡ € à€Jð €Jð
 	ð ð 	ð ð
 €Gð €Eð €L÷1 ƒ r   rà  c                ó<   € V ^8„  d   QhR\         R\         R\         /# )r   Úformat_env_nameÚlegacy_svg_env_namer   rð   )r   s   "r   r   r   .  s!   € ÷ ?ñ ?¬Sð ?Äsð ?Ìsñ ?r   c                 óè   € V \         P                  9   d   \         P                  V ,          # \         P                  P                  VR 4      R8X  d   R# \         P                  P                  RR4      # )r%   r   ÚsvgÚTORCH_COMPILE_GRAPH_FORMATr&   )rð  rñ  s   &&r   Ú_get_debug_graph_formatrõ  .  sN   € Øœ"Ÿ*™*Ô$Ü�z‰z˜/Õ*Ð*Ü	‡z�z‡~�~Ð)¨3Ó/°3Ô6ÙÜ�:‰:�>‰>Ð6¸Ó>Ð>r   c            	       ó¸  a € ] tR tRt o Rt]P                  P                  RR4      R8H  t]P                  P                  RR4      R8H  t	Rt
RtRtR	tR	tR	tR	tR	t]P                  P                  R
R4      R8H  ;'       g     ]P                  P                  RR4      R8H  t]! RR
4      t]P                  P                  RR4      R8H  ;'       g     ]P                  P                  RR4      R8H  t]! RR4      t]P                  P                  RR4      t]P                  P                  RR4      tRtRt]P                  P                  RR4      R8H  t]P                  P                  RR4      R8H  t]! ]P                  P                  RR4      4      t]! ]P                  P                  R]P                  P                  RR4      4      4      tV 3R lt Rt!V t"R# )Útracei6  z6Configuration for torch.compile debug trace artifacts.ÚTORCH_COMPILE_DEBUGr%   r   ÚTORCH_COMPILE_DEBUG_SAVE_REALNFTÚINDUCTOR_POST_FUSION_SVGÚINDUCTOR_POST_FUSION_GRAPHÚ!INDUCTOR_POST_FUSION_GRAPH_FORMATÚINDUCTOR_ORIG_FX_SVGÚINDUCTOR_ORIG_FX_GRAPHÚINDUCTOR_ORIG_FX_GRAPH_FORMATÚINDUCTOR_DOT_GRAPH_SHAPE_SVGÚ INDUCTOR_LOG_URL_FOR_GRAPH_XFORMÚLOG_AUTOTUNE_RESULTSÚTORCH_COMPILE_DEBUG_EXTENDÚTORCH_COMPILE_DEBUG_MAX_EVENTSÚ500000ÚINDUCTOR_PROVENANCEc                ó|   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[S[ .R3,          R,          ;R&   S[;R&   S[;R&   # )r   NÚ	debug_dirÚ
upload_tarÚprovenance_tracking_max_eventsÚprovenance_tracking_level)rÃ   r   r~   )r   r  s   "€r   r   Útrace.__annotate__6  sW   ø‡ ‚ ñ �T�zÑ ñ ñr ™#˜ ˜Õ%¨Õ,Ñ3ñs ñJ %(ñ ñK ñb  #ñ òc r   r   )#r¶   r·   r¸   r¹   rº   r'   r(   r)   ÚenabledÚsave_real_tensorsr  Ú	debug_logÚinfo_logÚfx_graphÚfx_graph_transformedÚir_pre_fusionÚir_post_fusionÚoutput_codeÚgraph_diagramrõ  Úgraph_diagram_formatÚdraw_orig_fx_graphÚorig_fx_graph_diagram_formatÚdot_graph_shapeÚlog_url_for_graph_xformÚcompile_profiler	  Úlog_autotuning_resultsÚprovenance_tracking_to_timeliner~   r
  r  r	  r»   r
  r  s   @r   r÷  r÷  6  sù  ø‡ € Ù@ð �j‰j�n‰nÐ2°CÓ8¸CÑ?€Gð Ÿ
™
Ÿ™Ð'FÈÓLÐPSÑSÐð !€Ið €Ið €Hð €Hð  Ðð €Mð €Nð €Kð 	�
‰
�‰Ð1°3Ó7¸3Ñ>÷ 	Dð 	DØ�:‰:�>‰>Ð6¸Ó<ÀÑCð ñ 3Ø+Ø"óÐð 	�
‰
�‰Ð-¨sÓ3°sÑ:÷ 	@ð 	@Ø�:‰:�>‰>Ð2°CÓ8¸CÑ?ð ñ $;Ø'Øó$Ð ð —j‘j—n‘nÐ%CÀTÓJ€Oð !Ÿj™jŸn™nÐ-OÐQUÓVÐð €Oð 04€JàŸZ™ZŸ^™^Ð,BÀCÓHÈCÑOÐð 	�
‰
�‰Ð3°SÓ9¸SÑ@ð $ñ +.Ø
�
‰
�‰Ð7¸ÓBó+Ð"ñ &)Ø
�
‰
�‰Ø! 2§:¡:§>¡>Ð2GÈÓ#Mó	
ó&Ð÷c ƒ r   r÷  c                ó$   € V ^8„  d   QhR\         /# r<   r}   )r   s   "r   r   r   ®  s   € ÷ +ñ +¬Sñ +r   c                  ó‚   € \         P                  '       d   \        \         P                  ^4      # \         P                  # )rú  )r÷  r  Úmaxr  r   r   r   Ú#effective_provenance_tracking_levelr"  ®  s-   € Ü×,×,Ð,Ü”5×2Ñ2°AÓ6Ð6Ü×*Ñ*Ð*r   Úinductor_choices_classÚ8TORCHINDUCTOR_WRITE_ARE_DETERMINISTIC_ALGORITHMS_ENABLEDc                   ó4   a € ] tR tRt o RtRtV 3R ltRtV tR# )Úlookup_tableiò  NTc                ó|   <€ V ^8„  d   Qh/ S[ S[S[S[ S[S[3,          ,          3,          R,          ;R&   S[;R&   # )r   NÚtableÚcheck_src_hash)rü  rÃ   re  r   r   )r   r  s   "€r   r   Úlookup_table.__annotate__ò  s9   ø‡ ‚ á‘‘T™$™s¡C˜x�.Õ)Ð)Õ*¨TÕ1Ñ8ñ ñ Ñò r   r   )	r¶   r·   r¸   r¹   r(  r)  r	  r»   r
  r  s   @r   r&  r&  ò  s   ø‡ € à48€Eð  €N÷ ƒ r   r&  c                   ó   a € ] tR tRt o RtRtRtRtRtRt	Rt
Rt]P                  P                  R4      t]P                  P                  R4      tRtRtRtRt]P*                  ! R4      R8H  t]P*                  ! R	R
4      tRtRtV 3R ltRtV tR# )Útest_configsiý  FNÚ(TORCHINDUCTOR_AUTOTUNE_CHOICE_NAME_REGEXÚ(TORCHINDUCTOR_AUTOTUNE_CHOICE_DESC_REGEXTÚ,TORCHINDUCTOR_FORCE_FILTER_REDUCTION_CONFIGSr   Ú)TORCHINDUCTOR_DISTORT_BENCHMARKING_RESULTr¨   c                óè   <€ V ^8„  d   Qh/ S[ ;R&   S[ R,          ;R&   S[ ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          ;R&   S[R,          R,          ;R	&   S[ ;R
&   # )r   Ú%force_extern_kernel_in_multi_templateNÚforce_custom_op_decompositionÚforce_no_impl_groupingÚmax_mm_configsÚmax_flex_configsÚautotune_choice_name_regexÚautotune_choice_desc_regexÚtrack_memory_lifecycleÚ assume_bucketing_reduces_latency)ÚassertrL  )r   r~   rÃ   r   )r   r  s   "€r   r   Útest_configs.__annotate__ý  sž   ø‡ ‚ Ù+/Ñ7ñ ñ $(¨$¥;Ñ5ñ ñ !Ñ(ñ ñ ˜$•JÑ%ñ ñ ˜D•jÑ'ñ ñ2 !$ d¥
ñ ñ3 ñ8 !$ d¥
ñ ñ9 ñD $ OÕ4°tÕ;ÑBñE ñR '+Ñ1òS r   r   )r¶   r·   r¸   r¹   r2  r3  r4  r5  r6  Úruntime_triton_dtype_assertÚruntime_triton_shape_assertÚstatic_cpp_dtype_assertr'   r(   r)   r7  r8  Ú*graphsafe_rng_func_ignores_fallback_randomr9  Úuse_libtorchr:  r  Úforce_filter_reduction_configsÚdistort_benchmarking_resultÚbisect_pre_grad_graphÚ'bisect_keep_custom_backend_for_inductorr	  r»   r
  r  s   @r   r,  r,  ý  sÊ   ø‡ € Ø27Ð)ð 26Ð!ð $)Ðà!%€NØ#'Ðà"'ÐØ"'ÐØ#Ðð .0¯Z©Z¯^©^Ø2ó.Ðð .0¯Z©Z¯^©^Ø2ó.Ðð 27Ð.à>BÐð €Lð .2Ð$ð 	�	Š	Ð@ÓAÀSÑHð #ð #%§)¢)Ø3°Ró#Ðð "ÐØ.3Ð+÷s ƒ r   r,  )Ú*c                   ór   a € ] tR tRt o ]P
                  P                  RR4      R8H  tRtRt	V 3R lt
RtV tR# )	Úeager_numericsi=  Ú'TORCHINDUCTOR_EMULATE_DIVISION_ROUNDINGr%   r   Fc                ó>   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[ ;R&   # )r   Údivision_roundingÚdisable_ftzÚuse_pytorch_libdevicer   )r   r  s   "€r   r   Úeager_numerics.__annotate__=  s.   ø‡ ‚ ñ ñ ñ	 ñ Ññ ñ(  Ñ'ò) r   r   N)r¶   r·   r¸   r¹   r'   r(   r)   rK  rL  rM  r	  r»   r
  r  s   @r   rH  rH  =  s:   ø‡ € ð
 	�
‰
�‰Ð@À#ÓFÈ#ÑMð ð €Kð #(Ð÷) ƒ r   rH  Ú%TORCHINDUCTOR_EMULATE_PRECISION_CASTSÚ6TORCHINDUCTOR_EMULATE_PRECISION_CASTS_ON_SAVED_TENSORSc                óê  € V ^8„  d   Qh/ ^ \         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d   \        R,          ;R&   ^\         9   d   \        R,          ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d   \        R,          ;R	&   ^\         9   d   \        R,          ;R
&   ^	\         9   d
   \        ;R&   ^
\         9   d
   \        ;R&   ^\         9   d   \        \        \        3,          ;R&   ^\         9   d   \        R,          ;R&   ^\         9   d   \
        R–,          ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d
   \        ;R&   ^\         9   d   \
        R—,          ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d(   \        P                  P                  P                  ;R&   ^\         9   d/   \        P                  P                  P                  R,          ;R&   ^\         9   d/   \        P                  P                  P                  R,          ;R&   ^\         9   d,   \        \        \        \        \        3,          3,          ;R&   ^\         9   d,   \        \        \        \        \        3,          3,          ;R&   ^\         9   d   \        \        \        3,          ;R&   ^\         9   d   \
        R˜,          ;R!&   ^\         9   d@   \        \        \        \        R",          .\        R",          3,          ,          ,          ;R#&   ^ \         9   d   \        R,          ;R$&   ^!\         9   d
   \        ;R%&   ^"\         9   d   \
        R™,          ;R&&   ^#\         9   d#   \        \        .\        3,          R,          ;R'&   ^$\         9   d   \
        Rš,          ;R(&   ^%\         9   d
   \        ;R)&   ^&\         9   d   \
        R›,          ;R*&   ^'\         9   d#   \        \        .\        3,          R,          ;R+&   ^(\         9   d   \
        Rš,          ;R,&   ^)\         9   d   \
        R›,          ;R-&   ^*\         9   d#   \        \        .\        3,          R,          ;R.&   ^+\         9   d
   \        ;R/&   ^,\         9   d   \        R,          ;R0&   ^-\         9   d   \        R,          ;R1&   ^.\         9   d
   \        ;R2&   ^/\         9   d
   \        ;R3&   ^0\         9   d   \        R,          ;R4&   ^1\         9   d
   \        ;R5&   ^2\         9   d   \        R,          ;R6&   ^3\         9   d
   \        ;R7&   ^4\         9   d   R8;R9&   ^5\         9   d   \        \        ,          ;R:&   ^6\         9   d   \        \        ,          ;R;&   ^7\         9   d
   \        ;R<&   ^8\         9   d   \        \        ,          ;R=&   ^9\         9   d   \        R,          ;R>&   ^:\         9   d
   \        ;R?&   ^;\         9   d
   \        ;R@&   ^<\         9   d   \
        Rœ,          ;RA&   ^=\         9   d   \
        Rœ,          ;RB&   ^>\         9   d
   \        ;RC&   ^?\         9   d
   \        ;RD&   ^@\         9   d
   \        ;RE&   ^A\         9   d
   \        ;RF&   ^B\         9   d   \
        R�,          ;RG&   ^C\         9   d
   \        ;RH&   ^D\         9   d
   \        ;RI&   ^E\         9   d
   \        ;RJ&   ^F\         9   d   \        R,          ;RK&   ^G\         9   d   \        R,          ;RL&   ^H\         9   d   \        R,          ;RM&   ^I\         9   d
   \        ;RN&   ^J\         9   d   \        . RO3,          R,          ;RP&   ^K\         9   d
   \        ;RQ&   ^L\         9   d
   \        ;RR&   ^M\         9   d
   \        ;RS&   ^N\         9   d
   \        ;RT&   ^O\         9   d
   \        ;RU&   ^P\         9   d   \        R,          ;RV&   ^Q\         9   d   \
        Rž,          ;RW&   ^R\         9   d
   \        ;RX&   ^S\         9   d   \        R,          ;RY&   ^T\         9   d   \        R,          ;RZ&   ^U\         9   d
   \        ;R[&   ^V\         9   d   \        R,          ;R\&   ^W\         9   d   \        R,          ;R]&   ^X\         9   d
   \        ;R^&   ^Y\         9   d
   \        ;R_&   ^Z\         9   d
   \        ;R`&   ^[\         9   d
   \        ;Ra&   ^\\         9   d
   \        ;Rb&   ^]\         9   d
   \        ;Rc&   ^^\         9   d'   \        \        RŸ,          \        ,          ,          ;Rd&   ^_\         9   d
   \        ;Re&   ^`\         9   d
   \        ;Rf&   ^a\         9   d
   \        ;Rg&   ^b\         9   d
   \        ;Rh&   ^c\         9   d
   \        ;Ri&   ^d\         9   d
   \        ;Rj&   ^e\         9   d
   \        ;Rk&   ^f\         9   d   \        R,          ;Rl&   ^g\         9   d
   \        ;Rm&   ^h\         9   d
   \        ;Rn&   ^i\         9   d
   \        ;Ro&   ^j\         9   d
   \        ;Rp&   ^k\         9   d
   \        ;Rq&   ^l\         9   d
   \        ;Rr&   ^m\         9   d
   \        ;Rs&   ^n\         9   d
   \        ;Rt&   ^o\         9   d
   \        ;Ru&   ^p\         9   d
   \        ;Rv&   ^q\         9   d   \        R,          ;Rw&   ^r\         9   d
   \        ;Rx&   ^s\         9   d
   \        ;Ry&   ^t\         9   d   \        R,          ;Rz&   ^u\         9   d
   \        ;R{&   ^v\         9   d
   \        ;R|&   ^w\         9   d
   \        ;R}&   ^x\         9   d
   \        ;R~&   ^y\         9   d
   \        ;R&   ^z\         9   d
   \        ;R€&   ^{\         9   d
   \        ;R�&   ^|\         9   d
   \        ;R‚&   ^}\         9   d
   \        ;Rƒ&   ^~\         9   d
   \        ;R„&   ^\         9   d
   \        ;R…&   ^€\         9   d,   \        \        \        \        \        3,          3,          ;R†&   ^�\         9   d
   \        ;R‡&   ^‚\         9   d
   \        ;Rˆ&   ^ƒ\         9   d
   \        ;R‰&   ^„\         9   d
   \        ;RŠ&   ^…\         9   d   \
        R ,          ;RŒ&   ^†\         9   d   \
        R¡,          ;R�&   ^‡\         9   d   \
        R‹,          ;RŽ&   ^ˆ\         9   d   \
        R ,          ;R�&   ^‰\         9   d   \        \        ,          ;R�&   ^Š\         9   d   \        \        ,          ;R‘&   ^‹\         9   d   \        \        ,          ;R’&   ^Œ\         9   dK   \        \        \        P                   \        P                   \        P                   .R3,          ,          ;R“&   ^�\         9   d
   \        ;R”&   ^Ž\         9   d
   \        ;R•&   # )¢r   Úprecompilation_timeout_secondsÚfx_graph_cacheÚremote_gemm_autotune_cacheNÚfx_graph_remote_cacheÚ!bundle_triton_into_fx_graph_cacheÚnon_blocking_remote_cache_writeÚautotune_local_cacheÚautotune_remote_cacheÚbundled_autotune_remote_cacheÚforce_disable_cachesÚ&unsafe_skip_cache_dynamic_shape_guardsÚ!unsafe_marked_cacheable_functionsÚsleep_sec_TESTING_ONLYÚ'triton_kernel_default_layout_constraintÚcpp_wrapperÚcpp_wrapper_build_separateÚ
fx_wrapperÚcpp_cache_precompile_headersÚmemory_poolÚpost_grad_custom_pre_passÚpost_grad_custom_post_passÚcustom_partitioner_fnÚjoint_custom_pre_passÚjoint_custom_post_passÚpre_grad_custom_passÚ_pre_fusion_custom_passÚ_post_fusion_custom_passÚpre_grad_fusion_optionsÚpost_grad_fusion_optionsÚfx_passes_numeric_checkr¿  Úmixed_mm_choicez+torch._inductor.scheduler.BaseSchedulerNodeÚ'reorder_for_compute_comm_overlap_passesÚreorder_prefetch_limitÚ&size_threshold_for_succ_based_strategyÚbucket_all_gathers_fxÚ.bucket_all_gathers_fx_bucket_size_determinatorÚbucket_all_gathers_bucket_modeÚdedup_reduce_scattersÚbucket_reduce_scatters_fxÚ2bucket_reduce_scatters_fx_bucket_size_determinatorÚ"bucket_reduce_scatters_bucket_modeÚbucket_all_reduces_fxÚ.bucket_all_reduces_fx_bucket_size_determinatorÚ!runtime_estimations_mms_benchmarkÚintra_node_bwÚinter_node_bwÚuse_experimental_benchmarkerÚuse_torch_profiler_benchmarkerÚincremental_autotuneÚautotune_cudagraph_benchmarkingÚautotune_num_choices_displayedÚgraph_partitionzCUDAGraphPolicy | NoneÚcudagraph_policyÚcustom_should_partition_opsÚcudagraph_unsafe_unbacked_opsÚ#max_autotune_allow_flexible_layoutsÚmulti_kernel_hintsÚnvgemm_max_profiling_configsÚnvgemm_supplement_configsÚnvgemm_swap_abÚmax_autotune_gemm_search_spaceÚmax_autotune_flex_search_spaceÚfallback_by_defaultÚselective_decomposeÚuse_dceÚuse_pre_grad_passesÚpre_grad_pass_timingÚuse_joint_graph_passesÚuse_post_grad_passesÚcutedsl_enable_autotuningÚrealize_opcount_thresholdÚrealize_acc_reads_thresholdÚ realize_acc_reads_size_thresholdÚdelay_realize_cheap_outputsr   r#  Údebug_fusionÚbenchmark_fusionÚloop_ordering_after_fusionÚloop_reindexing_after_fusionÚloop_index_inversion_in_fusionÚmax_fusion_unique_io_buffersÚnumericsÚ"combo_kernel_compile_time_autotuneÚ$combo_kernel_peak_memory_increase_gbÚ&combo_kernel_peak_memory_pct_thresholdÚcombo_kernel_max_distanceÚadd_pre_grad_passesÚremove_pre_grad_passesÚdisabled_passesÚworker_start_methodÚsmall_memory_access_thresholdÚworker_suppress_loggingÚ(compile_worker_watchdog_interval_secondsÚlog_tlparseÚ_fuse_ddp_communication_passesÚ_micro_pipeline_tpÚ"partitioned_scatter_min_partitionsÚ"partitioned_scatter_max_partitionsÚ"partitioned_scatter_min_index_sizeÚ(partitioned_scatter_min_contention_ratioÚ)partitioned_scatter_non_model_floor_bytesÚpartitioned_scatter_forcerM  Úquiesce_async_compile_poolÚquiesce_async_compile_timeÚuse_static_cuda_launcherÚuse_static_triton_launcherÚ)static_launch_user_defined_triton_kernelsÚstrict_static_cuda_launcherÚstrict_static_triton_launcherÚkeep_static_cubin_rawÚuse_fast_triton_launcherÚuse_launch_metadata_schemaÚglobal_cache_dirÚforce_shape_padÚ_use_fp64_for_unbacked_floatsÚprofile_bandwidth_outputÚfreezingÚfreezing_discard_parametersÚdecompose_mem_bound_mmÚwrap_inductor_compiled_regionsÚassume_aligned_inputsÚassume_32bit_indexingÚ.unsafe_ignore_unsupported_triton_autotune_argsÚ"check_stack_no_cycles_TESTING_ONLYÚ$force_disable_cudagraph_TESTING_ONLYÚannotate_trainingÚ)enable_caching_generated_triton_templatesÚautotune_lookup_tableÚfile_lock_timeoutÚcompile_worker_wait_timeoutÚenable_autograd_for_aotÚtorchinductor_worker_logpathrÛ  Úcpu_backendÚcuda_backendÚtpu_backendÚxpu_backendÚ_save_config_ignoreÚ_cache_config_ignore_prefixÚ_cache_config_factory_keysÚexternal_matmulÚemulate_precision_castsÚ(emulate_precision_casts_on_saved_tensors)rX   Úflexible_layout)rp   rg   ÚoutputsÚcombined)rT   r¿  Úatenrn   )rp   r‚   Ú	only_fsdp)rT   r4  r5  r�   )r™   Ú
EXHAUSTIVE)ÚearlyÚlaterT   )rT   Ústrict).N)rx  r¿  rà  rÛ  )r¿  rà  rÛ  )Ú__conditional_annotations__r~   r   rü  rÃ   r   r@   rÐ   Úcustom_graph_passÚCustomGraphPassTypeÚCustomPartitionerFnTypeÚCustomSchedulerPassCallabler   re  r   r8  ÚTensor)r   s   "r   r   r      sz  € ‡	�	÷Nò ¤ñ ñO 
÷Xò ”ñ ñY 
÷f )Ò (œDÑ (ñg 
÷r EÒ D”t˜d•{Ñ Dñs 
÷xò ¤4¨$¥;ñ ñy 
÷@ò ¤ñ ñA 
÷T "Ò !”dÑ !ñU 
÷l EÒ D”t˜d•{Ñ Dñm 
÷D UÒ Tœt d�{Ñ TñE 
÷J XÒ W”dÑ WñK 
÷P 5Ò 4¬Ñ 4ñQ 
÷l 7Ò 6¤4¬¬S¨¥>Ñ 6ñm 
÷r *Ò )œ˜d�
Ñ )ñs 
÷zò ¬Ø1õ*ñ ñ{ 
÷F LÒ KŒTÑ KñG 
÷Tò œDñ ñU 
÷\ JÒ IŒDÑ Iñ] 
÷fò œdñ ñg 
÷Zò ŒWÐCÕDñ ñ[ 
÷^	 XÒ Wœ5Ÿ?™?×<Ñ<×PÑPÑ Wñ_	 
÷`	 YÒ XœEŸO™O×=Ñ=×QÑQÑ Xña	 
÷f	 XÒ W”u—‘×8Ñ8×PÑPÑ Wñg	 
÷l	 TÒ S”u—‘×8Ñ8×LÑLÑ Sñm	 
÷n	 UÒ TœŸ™×9Ñ9×MÑMÑ Tño	 
÷x	 SÒ R”e—o‘o×7Ñ7×KÑKÑ Rñy	 
÷B
	ò 	Ü	‡O�O×%Ñ%×AÑAÀDÕHñ	ñC
 
÷P
	ò 	Ü	‡O�O×%Ñ%×AÑAÀDÕHñ	ñQ
 
÷\ 8Ò 7œœc¤4¬¬S¨¥>Ð1Õ2Ñ 7ñ] 
÷d 9Ò 8œ$œs¤D¬¬c¨¥NÐ2Õ3Ñ 8ñe 
÷fò œœc¤3˜h�ñ ñg 
÷v QÒ P”ÐAÕBÑ Pñw 
÷hò ¬ÜÜÜ	Ð;Õ	<Ð=ÜÐ:Õ;ð	=õõõ*ñ ñi 
÷z *Ò )œ˜d�
Ñ )ñ{ 
÷P 0Ò /¬Ñ /ñQ 
÷V DÒ C”wÐ9Õ:Ñ CñW 
÷Z SÒ R´¼#¸Ä¸Õ0DÀtÕ0KÑ Rñ[ 
÷^ò ¤Ø4õ!ñ ñ_ 
÷h $Ò #”tÑ #ñi 
÷l ;Ò :œ7 =Õ1Ñ :ñm 
÷p WÒ V´H¼c¸UÄC¸ZÕ4HÈ4Õ4OÑ Vñq 
÷tò ¤GØ4õ%ñ ñu 
÷~ 7Ò 6”w˜}Õ-Ñ 6ñ 
÷B SÒ R´¼#¸Ä¸Õ0DÀtÕ0KÑ RñC 
÷N 0Ò /¤4Ñ /ñO 
÷V !Ò  Œs�T�zÑ  ñW 
÷^ !Ò  Œs�T�zÑ  ñ_ 
÷rò œdñ ñs 
÷\ò ¤ñ ñ] 
÷Bò ”d˜T•kñ ñC 
÷bò ¤ñ ñc 
÷@ WÒ V¤ d¥
Ñ VñA 
÷jò ”ñ ñk 
÷B 2Ò 1Ð*Ñ 1ñC 
÷L ,Ò +œT¤#�YÑ +ñM 
÷` .Ò -œt¤C�yÑ -ña 
÷f 2Ò 1¤TÑ 1ñg 
÷r #Ò "”Dœ•IÑ "ñs 
÷r SÒ Rœc D�jÑ Rñs 
÷~ò œ4ñ ñ 
÷L RÒ Q”Ñ QñM 
÷B
ò 
¤Ð(?Õ @ñ 
ñC 
÷R
ò 
¤Ð(?Õ @ñ 
ñS 
÷h "Ò !”TÑ !ñi 
÷t "Ò !”TÑ !ñu 
÷| Ò ŒÑ ñ} 
÷D !Ò  ”TÑ  ñE 
÷R FÒ E”gÐ8Õ9Ñ EñS 
÷X $Ò #œÑ #ñY 
÷Z "Ò !”dÑ !ñ[ 
÷`ò œ4ñ ña 
÷P -Ò ,œ3 �:Ñ ,ñQ 
÷` /Ò .œS 4�ZÑ .ña 
÷dò ¤#¨¥*ñ ñe 
÷xò œTñ ñy 
÷v FÒ Eœ Ð%6Ð!6Õ7¸$Õ>Ñ Eñw 
÷D IÒ HŒdÑ HñE 
÷F QÒ P”$Ñ PñG 
÷Jò œDñ ñK 
÷Vò œdñ ñW 
÷p ,Ò +¤Ñ +ñq 
÷r 0Ò /œc D�jÑ /ñs 
÷D!ò Œ'Ð%Õ
&ñ ñE! 
÷n"ò ¤Dñ ño" 
÷N# :Ò 9¤e¨d¥lÑ 9ñO# 
÷P# <Ò ;¬°­Ñ ;ñQ# 
÷Z# $Ò #œ3Ñ #ñ[# 
÷H$ 'Ò &”S˜4•ZÑ &ñI$ 
÷J$ *Ò )œ˜d�
Ñ )ñK$ 
÷V$ò ”ñ ñW$ 
÷@% 8Ò 7”SÑ 7ñA% 
÷H% .Ò -œsÑ -ñI% 
÷N%ò œñ ñO% 
÷d%ò ¬#ñ ñe% 
÷n%ò ŒTñ ño% 
÷\&ò ¤¤X¨iÕ%8¼3Õ%>Õ ?ñ ñ]& 
÷f& !Ò  ”DÑ  ñg& 
÷H' ,Ò +¤CÑ +ñI' 
÷J' -Ò ,¤CÑ ,ñK' 
÷P' /Ò .¤CÑ .ñQ' 
÷b' 6Ò 5¬%Ñ 5ñc' 
÷n' ?Ò >¬3Ñ >ño' 
÷|'ò œ4ñ ñ}' 
÷V. PÒ O”�t•Ñ OñW. 
÷\.ò œDñ ñ]. 
÷j.ò œCñ ñk. 
÷v. @Ò ?œ$Ñ ?ñw. 
÷|.ò œDñ ñ}. 
÷H/ò ¬4ñ ñI/ 
÷V/ò œTñ ñW/ 
÷`/ò œtñ ña/ 
÷t/ò ”tñ ñu/ 
÷F0ò œ$ñ ñG0 
÷X0ò œDñ ñY0 
÷b0 Ò ”#˜•*Ñ ñc0 
÷r2 Ò ”Ñ ñs2 
÷^3 6Ò 5œtÑ 5ñ_3 
÷l3ò œ# �*ñ ñm3 
÷N4 FÒ EŒ$Ñ EñO4 
÷V4 *Ò )œTÑ )ñW4 
÷\4 %Ò $œÑ $ñ]4 
÷d4 -Ò ,¤Ñ ,ñe4 
÷n4 $Ò #”tÑ #ño4 
÷z4 $Ò #”tÑ #ñ{4 
÷F5 =Ò <´Ñ <ñG5 
÷R5 1Ò 0¤DÑ 0ñS5 
÷Z5 3Ò 2¤dÑ 2ñ[5 
÷l5 XÒ W”4Ñ Wñm5 
÷r5 7Ò 6¬4Ñ 6ñs5 
÷x5 6Ò 5”tœC¤¤c¬3 h¥Ð/Õ0Ñ 5ñy5 
÷|5 WÒ V”3Ñ Vñ}5 
÷L6ò œSñ ñM6 
÷T6 &Ò %œÑ %ñU6 
÷r6ò œcñ ñs6 
÷~W BÒ AŒWÐ8Õ9Ñ AñW 
÷FX ?Ò >ŒgÐ2Õ3Ñ >ñGX 
÷LX *Ò )ŒW�XÕÑ )ñMX 
÷RX *Ò )ŒW�XÕÑ )ñSX 
÷f]ò ”Tœ#•Yñ ñg] 
÷H^ò œT¤#�Yñ ñI^ 
÷J_ò œD¤�Iñ ñK_ 
÷T_ WÒ V””h¤§¡¬e¯l©l¼E¿L¹LÐIÈ4ÐOÕPÕQÑ VñU_ 
÷vbò œñ ñwb 
÷Hcò ¬$ñ òIc 
r   i,  r�  )ztrace.upload_tarrh  ri  rj  zaot_inductor.repro_levelzaot_inductor.dump_aoti_minifierre  rf  r¯  rk  r†  )r÷  zcuda.cutlass_dirzcutlass.cutlass_dirzxpu.cutlass_dirrª  rM  rf  re  rh  ri  rj  r¯  rk  r†  rÍ  r”  rS  rU  rX  rY  (ˆ  rè  r'   rG  Úcollections.abcr   Útypingr   r   r   r   r@   Ú!torch._inductor.custom_graph_passÚtorch._environmentr   Útorch.utils._config_moduler	   r
   r   r   Útorch._inductor.choicesr   Útorch._inductor.cudagraph_utilsr   r(   r)   Úinplace_paddingÚcan_inplace_pad_graph_inputr    r*   r.   r2   r6   r:   rE   rK   Úenable_auto_functionalized_v2rí  Údisable_progressÚverbose_progressÚworker_log_pathr~   rR  rS  rT  rU  rV  rW  rX  rY  rZ  r[  r\  r]  r^  r_  r`  ra  rb  rc  Úonline_softmaxÚapply_gumbel_max_trickÚdceÚstatic_weight_shapesÚsize_assertsÚnan_assertsÚruntime_triton_nan_assertsÚscalar_assertsÚalignment_assertsÚpick_loop_ordersÚinplace_buffersÚallow_buffer_reuseÚmemory_planningr¨  Ústrict_signed_zerord  Úbenchmark_harnessÚepilogue_fusionÚepilogue_fusion_with_atomic_addÚprologue_fusionÚepilogue_fusion_firstÚ*epilogue_fusion_user_defined_triton_kernelÚpattern_matcherÚb2b_gemm_passre  rf  rg  rh  ri  rj  rk  rl  Úsplit_cat_fx_passesÚ efficient_conv_bn_eval_fx_passesÚis_predispatchÚgroup_fusionÚbatch_fusionrm  rn  Úreorder_for_localityÚ reorder_for_locality_in_trainingÚdynamic_scale_rblockÚforce_fuse_int_mm_with_mulÚ keep_addmm_fused_for_half_dtypesÚuse_mixed_mmro  rp  Ú reorder_for_compute_comm_overlapÚdecompose_shard_dim_alltoallrq  rr  Úreorder_for_peak_memoryÚreorder_for_peak_memory_debugrs  rt  ru  rv  rw  rx  ry  rz  r{  r|  Úestimate_op_runtimer}  r~  r  Ú
cpu_gpu_bwr€  Údistributed_max_autotune_gemmÚpipeline_max_autotune_gemmr�  Úmax_autotuneÚmax_autotune_pointwiseÚmax_autotune_gemmr‚  r  Ú inductor_default_autotune_warmupÚinductor_default_autotune_reprƒ  r‡   r„  Ú!max_autotune_report_choices_statsÚ.max_autotune_prune_choices_based_on_shared_memÚtriton_disable_device_detectionr…  r†  r‡  rˆ  r‰  rŠ  ÚupperÚmax_autotune_gemm_backendsr‘   r‹  rŒ  r�  rD   r  Ú_conv_default_backendsÚmax_autotune_conv_backendsÚ%max_autotune_conv_bwd_weight_backendsÚ$max_autotune_conv_bwd_input_backendsrŽ  r�  r�  r‘  r’  r“  r”  r•  r–  r—  Úautotune_fallback_to_atenÚunbacked_symint_fallbackÚsearch_autotune_cacheÚ	save_argsÚautotune_in_subprocÚ+max_autotune_subproc_result_timeout_secondsÚ-max_autotune_subproc_graceful_timeout_secondsÚ.max_autotune_subproc_terminate_timeout_secondsÚautotune_multi_deviceÚcollective_benchmark_nrunsr8  Úcollective_benchmark_timeoutÚcoordinate_descent_tuningÚ'coordinate_descent_check_all_directionsÚ coordinate_descent_search_radiusr­   r²   r´   r½   Úrun_jit_post_compile_hookrÉ   rÆ   rÇ   Úautoheuristic_log_pathÚlayout_opt_defaultÚlayout_optimizationÚforce_layout_optimizationÚcache_sdpa_constraintÚkeep_output_strideÚstrict_output_stridesÚwarn_mix_layoutÚrealize_reads_thresholdÚ"_realize_opcount_threshold_defaultr˜  Úrealize_opusers_thresholdÚrealize_cpu_opcount_thresholdÚ$_realize_acc_reads_threshold_defaultr™  Úrealize_cpu_acc_reads_thresholdrš  r›  Úfallback_randomÚalign_random_eagerÚ"fallback_embedding_bag_byte_unpackÚimplicit_fallbacksÚ assume_unaligned_fallback_outputr#  Úaggressive_fusionrœ  r�  Úenabled_metric_tablesrž  rŸ  r   Úscore_fusion_memory_thresholdÚbenchmark_epilogue_fusionÚ max_epilogue_benchmarked_choicesÚmax_fusion_sizeÚmin_overlap_ratioÚ)max_fusion_buffer_group_pairwise_attemptsr¡  Ú max_complex_pointwise_cat_inputsÚmax_pointwise_cat_inputsÚforce_pointwise_catÚunroll_reductions_thresholdÚcomment_originÚconv_1x1_as_mmÚsplit_reductionsrÒ   Úbatch_invariantr¢  Úmin_num_splitÚbenchmark_kernelÚconstant_and_index_propagationÚalways_keep_tensor_constantsÚassert_indirect_indexingÚdo_not_emit_runtime_assertionsÚcompute_all_boundsÚcombo_kernelsÚbenchmark_combo_kernelÚcombo_kernels_autotuneÚcombo_kernel_allow_mixed_sizesÚ#combo_kernel_foreach_dynamic_shapesÚcombo_kernel_max_num_argsÚcombo_kernel_max_num_nodesÚ!combo_kernel_per_subkernel_blocksr£  Úcombo_kernel_autotune_groupingÚcombo_kernels_pointwise_onlyr¤  r¥  r¦  Újoint_graph_constant_foldingÚdebug_index_assertsÚ__version__Úis_nightly_or_sourceÚdeveloper_warningsÚ"optimize_scatter_upon_const_tensorr§  r¨  r©  rø   rª  r«  r¬  r­  r®  Ú_fuse_ddp_communicationÚ_fuse_ddp_bucket_sizer¯  r°  Ú_partitioned_scatter_defaultÚpartitioned_scatter_enabledr±  r²  r³  r´  rµ  r¶  r  r  r?  rN  rM  r·  r¸  r¹  rº  r»  r¼  r½  r¾  r¿  rÀ  Úlibfb.pyrU  Ú__package__Úget_dir_pathr©  r«  ÚreplaceÚseprÁ  Ú
ValueErrorÚImportErrorÚkernel_name_max_opsÚshape_paddingÚcomprehensive_paddingÚpad_channels_lastÚpad_dynamic_shapesÚdisable_padding_cpuÚ$expand_dimension_for_pointwise_nodesÚpadding_alignment_bytesÚpadding_stride_thresholdÚpad_outputsÚbw_outputs_user_visiblerÂ  Úpermute_fusionÚprofiler_mark_wrapper_callÚgenerate_intermediate_hooksÚdebug_ir_tracebackÚ_raise_error_for_testingrÃ  Ú_profile_varÚprofile_bandwidthÚprofile_bandwidth_regexrÄ  Ú/profile_bandwidth_with_do_bench_using_profilingÚdisable_cpp_codegenrÅ  rÆ  rÇ  rÈ  rÉ  rÊ  rË  rÌ  rÍ  Úenable_linear_binary_foldingrÎ  rÏ  rÐ  rÑ  rÒ  rÓ  rk  rÔ  rn  rx  r½  r¿  r6  rs  rx  r²  rº  r¿  rÕ  rÖ  r×  rØ  rÝ  rà  rõ  r÷  r"  rÙ  rÚ  rÛ  rÜ  Ú*write_are_deterministic_algorithms_enabledr&  r,  Útorch.utils._config_typingrH  rÝ  rÞ  Úmodulesr¶   r   )rè  s   @r   Ú<module>rŸ     s  øðß 	�	Û 
Ý $ß 4Ó 4ã Û (Ý (÷ó ÷ Ý7Ý?à—*‘*—.‘.Ð!@À#ÓFÈ#ÑM€Ø#Ð õCõõCõKõõFõõ
ð ‡J�J‡N�NÐ7¸Ó=ÀÑDð ð
 	€ð Ð ð Ð ñ 8A·{²{Ñ3Èð ñ
 '*Ø‡J�J‡N�NÐAÀ6ÓJó'Ð ó ñ
 Ø?Ø;Ø1Øô	€ó ð $)Ð Ó (ñ &CÓ%DÐ Ó Dñ .Ó/ð "ó ñ )/ØMØBØô)Ð ó ð "Ð Ó !ñ &CÓ%DÐ Ó Dñ .SÓ-TÐ Ó Tñ $Ð*VÔWÐ Ó Wð 05Ð &Ó 4ð 57Ð !Ó 6ð &*Ð Ó )ð ð (ó ð —J‘J—N‘NÐ#>ÀÓDÈÑK€Ó Kð ‡J�J‡N�NÐ=¸sÓCÀsÑJð ó ð —:‘:—>‘>Ð"<¸cÓBÀcÑI€
Ó Ið ‡J�J‡N�NØ4¹Y¿[º[±cÈcóð ñð ó ð —‘—‘Ð >ÀÓDÈÑK€ð ‡J�J‡N�NÐ9¸3Ó?À3ÑFð ð
 €ð Ð ð �z‰z�~‰~Ð:¸CÓ@ÀCÑG€Ø�j‰j�n‰nÐ8Ó9¸SÑ@€à‡J�J‡N�NÐ=Ó>À#ÑEð ð —‘—‘Ð >ÀÓDÈÑK€ð ‡J�J‡N�NÐ4¹Y¿[º[±cÈcÓRØ
ñð ð Ð ð €ð Ð ð —*‘*—.‘.Ð!@À#ÓFÈ#ÑM€ð —
‘
—‘Ð<Ó=ÀÑD€ð Ð ð HJÇzÁzÇ~Á~Ø óH€ó ð
 Ð ð €ð #(Ð ñ *Ó+€ð Ð ð .3Ð *ð €ð €ð TXÐ Ó WØTXÐ Ó Xð TXÐ Ó Wð PTÐ Ó SØPTÐ Ó Tð
 OSÐ Ó Rð 	ð ó 	ð 	ð ó 	ð
 Ð ð $)Ð  ð €ð €ð €ð* 68Ð Ó 7ð 79Ð Ó 8ð Ð ð ‡J�J‡N�NÐ<¸cÓBÀcÑIð !ð
 —z‘z—~‘~Ð&JÈCÓPÐTWÑWÐ ð #Ð ð
 $(Ð  ð €ð �Ø�Ø�aØ˜$ð	+Ð ó ð FQ€Ó Pð $)Ð  ð ‡J�J‡N�NÐ?ÀÓEÈÑLð ð. ð (ó ð &*Ð Ó )ð Ð Ø %Ð ð /0Ð &Ó /ð >DÐ Ó CàNRÐ .Ó Rð ð ó ð
 $Ð Ó #à4:Ð Ó :àRVÐ 2Ó Vð ð #ó ð
 17Ð Ó 6àNRÐ .Ó Rð  Ð à*/Ð !Ó /ð !€Ó  ð !€Ó  ð €
ñ &,ØØ?Ø<ô&Ð ó ð ‡J�J‡N�NÐ@ÓAÀSÑHð ð ‡J�J‡N�NÐ;Ó<ÀÑCð ñ (.ØØAØ>ô(Ð ó ð �z‰z�~‰~Ð:Ó;¸sÑB€ð Ÿ™Ÿ™Ð(NÓOÐSVÑVÐ ð —J‘J—N‘NÐ#DÓEÈÑLÐ ñ %5Ø(°%ô%Ð ó ñ $'Ø‡IƒIÐ5°rÓ:ó$Ð  ñ !$Ø‡IƒIÐ2°CÓ8ó!Ð ð ‡J�J‡N�NÐBÓCÀsÑJð  ó õñ .UÓ-VÐ Ó Vð ‡J�J‡N�NÐDÀcÓJÈcÑQð "ð ‡J�J‡N�NÐQÐSVÓWØ
ñð /ð ‡J�J‡N�NÐBÀCÓHÈCÑOð  ð ‡J�J‡N�NÐ2¹y¿{º{±CÐPSÓTØ
ñð ó ð .2Ð Ó 1ð
 *,Ð Ó +ð ,.Ð Ó -ð -2Ð #Ó 1ð !#Ð Ó "ð  ŸZ™ZŸ^™^Ø.Ð0Aóç‚%ƒ'ð õñ ,QÓ+RÐ Ó Rð ‡J�J‡N�NÐ<¸cÓBÀcÑIð ó ð —z‘z—~‘~Ð&DÀcÓJÈcÑQ€Ó Qð +0¯-ª-×*;×*;Ñ*;™ÀÐ ð
  ŸZ™ZŸ^™^Ø.°óç‚%ƒ'ð ð
 )+¯
©
¯©Ø9Ð;Qó)ç‚%ƒ'ð &ð
 (*§z¡z§~¡~Ø8Ð:Pó(ç‚%ƒ'ð %ð DFÇ:Á:Ç>Á>Ø2°IóDç‚%ƒ'ð ó 
ð DFÇ:Á:Ç>Á>Ø2°IóDç‚%ƒ'ð ó 
ð "Ð Ó !ð "Ð Ó !ð €Ó ð !Ð Ó  ð =FÐ Ó Eð  $Ð Ó #Ø!Ð Ó !ð ‡J�J‡N�NÐ.°Ó4¸Ñ;ð ó ð
 "Ð ð  Ð ð Ð à�J‰J�N‰NÐ4Ó5¸Ñ<€	ð —j‘j—n‘nÐ%HÓIÈSÑPÐ ð
 /3Ð +à03Ð -à14Ð .ð Ÿ
™
Ÿ™Ð'LÓMÐQTÑTÐ ñ !Ø‡J�J‡N�NÐ=¸tÓDóÐ ñ
  %Ø‡J�J‡N�NÐ?ÀÓFó Ð ð
 ‡J�J‡N�NÐ<Ó=ÀÑDð ð ‡J�J‡N�NÐJÓKÈsÑRð (ñ $'Ø‡J�J‡N�NÐ<¸cÓBó$Ð  òò
÷
@ñ @÷Nñ Nð ‡J�J‡N�NÐ<¸cÓBÀcÑIð õ
Bõ:õ6ð Ÿ™Ÿ™Ø*¨IóÐ ð
 !&§¢× 1× 1Ñ 1‘S°sÐ à‡J�J‡N�NÐ6Ð8JÓKÈsÑRð ð ŸJ™JŸN™NÐ+KÈSÓQÐUXÑXÐ ð ‡J�J‡N�NÐ8¸#Ó>À#ÑEð ð —Z‘Z—^‘^Ð$FÈÓLÐPSÑSÐ ð Ð ð —*‘*—.‘.Ð!@ÓAÀSÑH€ð
 Ð Ø%'Ð "Ø(,Ð Ó ,ØÐ ð !#Ð ð ()Ð $Ø*.Ð Ó .Ø"$Ð àð !ó ñ %+Ø>Øô%Ð ó ð €ð Ð ð &+Ð "ð Ð à‡J�J‡N�NÐCÓDÈÑKð !ð BFÐ Ó Eð Ð ð —Z‘Z—^‘^Ð$@ÓAÀSÑH€Ó HØŸ™Ÿ™Ð(HÓIÈSÑPÐ Ó PØŸ
™
Ÿ™Ð'LÈbÓQÐ à‡J�J‡N�NØ2¹9¿;º;±CÈCóð ñð ó ð ‡J�J‡N�NÐ?ÀÓEÈÑLð ó ð (,Ð Ó +ð !#Ð ð ‡J�J‡N�NÐ<¸cÓBÀcÑIð ð
 $%Ð  ð €ð Ð ð -/Ð )ð ,0Ð Ó /ð
 $%Ð  ð
 Ð ð Ð ð  Ð ð €ð €ð —9“9Ð=¸sÓCÀsÑJÐ ð —	“	Ð7Ó8¸CÑ?€ð —)“)Ð;Ó<ÀÑC€ð *,¯©¯©Ø˜ió*€ó ñ �B—J‘J—N‘NÐ#@À!ÓDÓE€à—:‘:—>‘>Ð"BÀCÓHÈCÑOÐ ð "&Ð ð  %Ð ð  Ð ð "'Ð ð Ð ð €àÐ ð Ð ð "#Ð à&*Ð #àÐ àÑ ð %*Ñ !ñ
 ,2ØBØEØô,Ñ "ó ð "&Ñ à$Ñ ð 6:Ñ $Ó 9Ø7;Ñ &Ó ;ñ
 "$Ñ Ó #ð  $Ñ ð Ñ ð  × 1Ò 1Ñ1×OÐO°U¸e×>OÒ>OÑ5OÑ Ù“[×8Ð8Ñ$8Ñ ð ‡J�J‡N�NÐEÀsÓKÈsÑRñ #ð
 #'Ñ Ó &Ø%)Ñ Ó )ñ Ø2Øô�ó öò 6Ó7Ñ Ó 7ð &.Ñ Ó -ñ !'Ø7Ø:Øô!Ñ ó ñ 14Ø‡J�J‡N�NÐCÀRÓHó1Ñ (ó ñ
 Ø Øô�ó ð  Ñ ØÑ ð  ØðCÑ ó ð
 !Ñ Ó  ð ',§m¢m×&7×&7Ñ&7™s¸SÑ à‡J�J‡N�NØ3Ñ5Qóð ññ ð +,Ñ "Ó +Ø*,Ñ "Ó ,ð +/Ñ "Ó .ð 36Ñ (Ó 5ð 2?Ñ )Ó >ð ‡J�J‡N�NÐ<¸cÓBÀcÑIñ ó ÷
:ò :÷
P-ò P-öf6öñD '0§k¢k™dÒ7MÓ7O�Ó Oñ $*Ø:Ø=Øô$Ñ ó ñ #)Øô#Ñ ó ñ ">Ó!?Ñ Ó ?ñ $*Ø
;ô$Ñ ó ñ 39ØIØLØô3Ñ )ó ð ‡J�J‡N�NÐ>ÀÓDÈÑKñ ó ñ
 '-Ø
>ô'Ñ ó ð ‡J�J‡N�NÐ8¸#Ó>À#ÑEñ ó ð ‡J�J‡N�NÐ;¸SÓAÀSÑHñ ó ð ‡J�J‡N�NÐ=¸sÓCÀsÑJñ ó ó
 Ù‡;‚;ð
 ß$Ð$çˆ;Ù&×3Ó3Ø—’—’™[×0Ò0°°b·f²fÓ=¸zÓJó Òñ  '×3Ó3°JÓ?Òð
 Ñð Ñ ð —
‘
—‘Ð<¸cÓBÀcÑI�ð ‡J�J‡N�NÐ8¸#Ó>À#ÑEñ ð Ñ ð Ñ ð Ñ ð (-Ñ $ð Ñ ð(  Ñ ð �ð Ñ ð �Ó ð —‘—‘Ð >ÀÓDÈÑK�ð #Ñ ð
 $Ñ ð Ñ ð !Ñ ñ +4«+¤oÑ Ó 5à�z‰z�~‰~Ð5°rÓ:�Ù  BÑ&Ñ Ù ,°Ô 3™"¹Ñ ð (*§z¡z§~¡~Ø" Dó(Ñ ó ð
 ‡J�J‡N�NÐHÓIÈSÑPñ 0ð Ñ ð —‘—‘Ð 8¸#Ó>À#ÑE�Ó Eð %*Ñ Ó )ð  %Ñ Ó $ð (-Ñ Ó ,ð
 $Ñ Ó #ð $Ñ Ó #ð 8=Ñ .Ó <ð ,1Ñ "Ó 0ð .3Ñ $Ó 2ð ‡J�J‡N�NÐ?ÀÓEÈÑLñ ð Ÿ*™*Ÿ.™.Ð)JÈCÓPÐTWÑWÑ Ó Wð 37Ñ )Ó 6ð 46Ñ Ó 5á˜RŸZ™ZŸ^™^Ð,MÈuÓUÓVÑ Ó Vñ $'Ø‡J�J‡N�NÐ>ÀÓDó$Ñ ó ð !&Ñ Ó %ö	ñ %+Ø1Øô%Ñ ó ÷ò ÷"M+ò M+ö`÷P&ò P&÷fA.ò A.÷N%ò %÷(ò (ñD ‘WÓô‰7ó ó ññ4 ‘WÓôT‰'ó Tó ñT÷aOò aOðJ =B�Ó Að 7?�Ó >ð "*�Ó )ð "*�Ó )÷&ò &÷
ò ö8?÷uò uöp+ó"Ñ ó ó"*Ñ ó ðD ð)Ñ ó ð
 UW�Ó Vð ‡IƒIÐHÈ#ÓNÐRUÑUñ +÷
 ò  ÷94ò 94÷x Ý,÷(ò (ð@ ‡J�J‡N�NÐ:¸CÓ@ÀCÑGñ ó ð ‡J�J‡N�NÐKÈSÓQÐUXÑXñ )ó ñ
 �c—k’k¡(Õ+Ö ,øñ[2 ™Ð$ô  ØÔð ús&   ý#AN* ý5AAN* ÿAN* ÁN*AN<ÁN;AN<