Ë
    ÌÓ^j‹À ã                   óæR  — U d dl Z d dlZd dlmZ d dlmZ d dlmZmZ d dl	m
Z
mZ d dl	Z	d dlZd dlmc mZ d dlmZ d dlmZ d dlmZ d d	lmZmZmZ d d
lmZmZmZmZm Z m!Z!m"Z"m#Z# d dl$m%Z% d dl&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5 d dl6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z= d dl>m?Z? d dl@Z@e j                  j‚                  e j„                  j                  j†                  j‚                  e j„                  j                  jˆ                  j‚                  e j„                  j                  jŠ                  j‚                  e j„                  j                  jŠ                  j‚                  gZFeGe?   eHd<   e j                  j’                  e j                  j”                  e j                  j–                  e j„                  j                  jŠ                  j˜                  e j„                  j                  jŠ                  j˜                  hZMeNeO   eHd<   g  e
j                   eFD � �cg c]#  } | j¢                  D �cg c]  } eR| |«      ‘Œ c}‘Œ% c}} «      ¢ZSeGeO   eHd<   eSD �cg c]	  }|eMvsŒ|‘Œ c}ZSi ZTeUeOeVf   eHd<   eFD ]W  ZWeWj¢                  D ]F  ZX eReWeX«      ZYeWj´                  j·                  dd«      j·                  dd«      Z\eYeTvsŒ=e\› deX› �eTeY<   ŒH ŒY  edd«      Z] G d„ de«      ZAd„ Z^ G d„ d«      Z_ G d„ d«      Z` G d „ d!e«      Za G d"„ d#«      Zb G d$„ d%«      Zcd&„ Zdd'„ Zed(„ Zfd)„ Zgd*„ Zhd+„ Zid,„ Zjd-„ Zkd.„ Zld/„ Zmd0„ Znd1„ Zod2„ Zpd3„ Zqd4„ Zrd5„ Zsd6„ Ztd7„ Zud8„ Zvd9„ Zwd:„ Zxd;„ Zyd<„ Zzd=„ Z{d>„ Z|d?„ Z}d@„ Z~dA„ ZdB„ Z€dC„ Z�dD„ Z‚dE„ ZƒdF„ Z„dG„ Z…dH„ Z†dI„ Z‡dJ„ ZˆdK„ Z‰dL„ ZŠdM„ Z‹dN„ ZŒdO„ Z�dP„ ZŽdQ„ Z�dR„ Z�dS„ Z‘dT„ Z’dU„ Z“dV„ Z”dW„ Z•dX„ Z–dY„ Z—dZ„ Z˜d[„ Z™d\„ Zšd]„ Z›d^„ Zœd_„ Z�d`„ Zžda„ ZŸdb„ Z dc„ Z¡dd„ Z¢de„ Z£df„ Z¤dg„ Z¥dh„ Z¦di„ Z§dj„ Z¨dk„ Z©dl„ Zªdm„ Z«dn„ Z¬do„ Z­dp„ Z®dq„ Z¯dr„ Z°ds„ Z±dt„ Z²du„ Z³dv„ Z´dw„ Zµdx„ Z¶dy„ Z·dz„ Z¸d{„ Z¹d|„ Zºd}„ Z»d~„ Z¼d„ Z½d€„ Z¾d�„ Z¿d‚„ ZÀdƒ„ ZÁd„„ ZÂd…„ ZÃdîd‡„ZÄdˆ„ ZÅd‰„ ZÆdŠ„ ZÇd‹„ ZÈdŒ„ ZÉd�„ ZÊdŽ„ ZËd�„ ZÌd�„ ZÍd‘„ ZÎd’„ ZÏd“„ ZÐd”„ ZÑd•„ ZÒd–„ ZÓd—„ ZÔ e%e�jª                  d˜d™exr e: dš¬›«       e%e�jª                  d˜dœexr e: dš¬›«       e%e�jª                  d˜d�exr e: dš¬›«       e%e�jª                  d˜d�exr e:e �j¬                  fdš¬ž«      fZ×dŸ„ ZØd „ ZÙd¡„ ZÚd¢„ ZÛd£„ ZÜd¤„ ZÝd¥„ ZÞd¦„ Zße �jÀ                  �jÂ                  �jÅ                  «       xr) e �jÀ                  �jÂ                  �jÇ                  d§d «      Zäg  ece j                  �jÊ                  et e%e#«      f¬¨«      ‘ ece j                  �jÌ                  e9eu e%e#«       e%e�jª                  d˜d© e@�jÎ                  dª«      ¬««      f¬¬«      ‘ ece j                  �jÐ                  e9ev e% e�jÒ                  d­«      d˜d©«       e%e#«      f¬¬«      ‘ ece j                  �jÔ                  ew¬®«      ‘ ece j                  �jÖ                  e9ex¬¯«      ‘ ece j                  �jØ                  e9ey e% e�jÒ                  d­«      d˜d©«       e%e#«      f¬¬«      ‘ ece j                  �jÚ                  eq¬®«      ‘ ece j                  �jÜ                  er e%e�jª                  d˜d© e@�jÎ                  dª«      dš¬›«      f¬¨«      ‘ ece j                  �jÞ                  ese9 e% e�jÒ                  d­«      d˜d©«       e%e#d˜d�«      f¬°«      ‘ ece j                  �jà                  d±eze} e%e�jª                  d²d³ e@�jÎ                  dª«      ¬««       e%e�jª                  d²d´ e@�jÎ                  dª«      ¬««      f¬µ«      ‘ ece j                  �jâ                  d±e{e} e%ed˜d© e@�jÎ                  dª«      ¬««       e%e�jª                  d²d³ e@�jÎ                  dª«      ¬««       e%e�jª                  d²d´ e@�jÎ                  dª«      ¬««      f¬µ«      ‘ ece j                  �jä                  d±e|e} e%e#«       e%e�jª                  d²d³ e@�jÎ                  dª«      ¬««       e%e�jª                  d²d´ e@�jÎ                  dª«      ¬««      f¬µ«      ‘ ece j                  �jæ                  e� e%e�jª                  d˜d¶d·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �jê                   ee~d¹d†¬º«      e9d± e% e!e �jì                  d»i«      d˜d©«      f¬¼«      ‘ ece j                  �jî                   ee~d½d†¬º«      e9d± e%e�jª                  d˜d©dše �jð                  g¬¸«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �jò                   ee~d¿d†¬º«      e9d± e%e#d·¬À«       e%e�jª                  d˜d©«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �jô                   ee~d¹d†d±¬Á«      e9d± ee �jö                  «       e%e�jª                  d˜dÂe �jö                  fdš¬Ã«      f e% e!e �jì                  d»i«      d˜d©«       e% e!e �jö                  dÄi«      d˜d©«      f¬Å«      ‘ ece j                  �jø                   ee~d½d†d±¬Á«      e9d± ee �jö                  «       e%e�jª                  d˜d©e �jú                  e �jü                  e �jþ                  f¬Æ«       e%e�jª                  d˜d©dše �jð                  e �jþ                  g¬¸«       e%e�jª                  d˜dÂe �jö                  fdš¬Ã«       e%e=d˜dÂe �jö                  fdÇ¬Ã«      f e% e!e �jì                  d»i«      d˜d©«       e% e!e �jö                  dÄi«      d˜d©«      f¬Å«      ‘ ece j                  �j                    ee~d¿d†d±¬Á«       ee �jö                  «      e9d± e%e#«       e%e�jª                  d˜d©«       e%e�jª                  d˜dÂe �jö                  fdš¬Ã«       e%e=d˜dÂe �jö                  fdÇ¬Ã«      f e% e!e �jì                  d»i«      d˜d©«       e% e!e �jü                  d»i«      d˜dÂ«       e% e!e �jö                  dÄi«      d˜d©«      f¬È«      ‘ ece j                  �j                  e e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j                  e€ e%e�jª                  d˜d¶d·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �j                  e°e9 e%e#«       e% e�jÒ                  d­«      d˜d©«      f¬°«      ‘ ece j                  �j                  e±e9 e%e#«       e% e�jÒ                  d­«      d˜d©«      f¬°«      ‘ ece j                  �j
                  e• e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j                  e– e% e�jÒ                  d­«      d˜d©«       e%e8d˜d�e �jè                  gd·¬Ã«      f¬¨«      ‘ ece j                  �j                   ee~d¹d±¬º«      e9d± e%e"«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                   ee~d½d±¬º«      e9d± e%e"«       e%e�jª                  d˜d©dše �jð                  g¬¸«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                   ee~d¿d±¬º«      e9d± e%e"«       e%e#«       e%e�jª                  d˜d©«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                   ee~d¹d±d±¬Á«      e9d± e%e"«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                   ee~d½d±d±¬Á«      e9d± e%e"«       e%e�jª                  d˜d©dše �jð                  g¬¸«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                   ee~d¿d±d±¬Á«      e9d± e%e"«       e%e#«       e%e�jª                  d˜d©«      f e% e!e �jì                  d»i«      d˜d©«      f¬¾«      ‘ ece j                  �j                  ed e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j                  ee e% ee �jì                   e d»d»¬É«      e �jð                   e d»d»¬É«      i«      d˜dÊdË¬À«      g e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬Ì«      ‘ ece j                  �j                  e© e% e�jÒ                  d­«      d˜d™«       e% e�jÒ                  d­«      d˜dœ«      f¬¨«      ‘ ece j                  �j                   eª e% e�jÒ                  d­«      d˜d™«       e% e�jÒ                  d­«      d˜dœ«       e%e�jª                  d˜d© e@�jÎ                  dª«      xr eä d·¬›«      f¬¨«      ‘ ece j                  �j"                  e« e% e�jÒ                  d­«      d˜d™«       e% e�jÒ                  d­«      d˜dœ«       e% e�jÒ                  d­«      d˜d©«       e%e8d·¬À«      f¬¨«      ‘ ece j                  �j$                  e¬¬®«      ‘ ece j                  j˜                  e­e®¬Í«      ‘ ece j                  �j&                  e¯e9¬Î«      ‘ ece j                  �j(                  ef e% ee �jè                   e dÏdÄ¬É«      i«      d˜dÊd·e �jè                  g¬¸«      f e% e�jÒ                  d­«      d˜d©«       e% e�jÒ                  d­«      d˜dÂ«       e% e�jÒ                  d­«      d˜d™«       e% e�jÒ                  d­«      d˜dœ«      f¬Ì«      ‘ ece j                  �j*                  ej e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �j,                  e´ e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j.                  eµ e% e�jÒ                  d­«      d˜d©«       e%e8d˜d·¬À«       e% e�jÒ                  d­«      d˜dœ«      f¬¨«      ‘ ece j                  �j0                  e¶e· e% e�jÒ                  d­«      d˜d©«       e%e8d˜d·¬À«       e% e�jÒ                  d­«      d˜dœ«      f¬Ð«      ‘ ece j                  �j2                  e¹ e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �j4                  e¸ e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j6                  egeØ e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬Ð«      ‘ ece j                  �j8                  eh e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j:                  ei e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j<                  e£ e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �j>                  e¤eß e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬Ð«      ‘ ece j                  �j@                  e— e% e�jÒ                  d­«      d˜d©«       e%e8d˜e �jè                  gd·¬Ã«      f¬¨«      ‘ ece j                  �jB                  e˜ e% e�jÒ                  d­«      d˜d©«       e%e8d˜e �jè                  gd·¬Ã«      f¬¨«      ‘ ece j                  �jD                  e™eš ed±d†¬Ñ«       e%e�jª                  d˜d©«       e% ee �jè                   e dÒdÏ¬É«      i«      d˜dÊe �jè                  gdË¬Ã«       e%e�jª                  d˜dÂe �jè                  gdš¬Ã«       e%e�jª                  d˜dÂe �jè                  gdÇ¬Ã«      f¬Ó«      ‘ ece j                  �jF                  e›eœ ed±d±¬Ñ«      e9 e%e�jª                  d˜d©«       e% ee �jè                   e dÔdÕ¬É«      i«      d˜d�e �jè                  g¬Æ«       e% ee �jH                   e dÕdÖ¬É«      i«      d˜d�e �jH                  g¬Æ«       e% ee �jè                   e d×dØ¬É«      i«      d˜dÂe �jè                  g¬Æ«       e%e�jª                  d˜dÂe �jH                  gdš¬Ã«       e%e�jª                  d˜dÂe �jH                  gdÇ¬Ã«       e% ee �jè                   e dÙdÔ¬É«      i«      d˜dÚdše �jè                  g¬¸«       e% ee �jè                   e dÙdÔ¬É«      i«      d˜dÚdÇe �jè                  g¬¸«       e% ee �jè                   e dÔdÔ¬É«      i«      d˜dÊe �jè                  g¬Æ«       e% ee �jH                   e dÖdÖ¬É«      i«      d˜dÊe �jH                  g¬Æ«       e% ee �jH                   e dÙdÖ¬É«      i«      d˜dÚdše �jH                  g¬¸«      f e% e�jÒ                  dÛ«      d˜d™«       e% e�jÒ                  dÜ«      d˜dœ«      f¬Ý«      ‘ ece j                  �jJ                  e� e% e�jÒ                  d­«      d˜d©«       e%e8d˜d·¬À«       e% e�jÒ                  d­«      d˜d™«       e% e�jÒ                  d­«      d˜dœ«       e% e�jÒ                  d­«      d˜d�«      f¬¨«      ‘ ece j                  �jL                  eƒ e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �jN                  e‚¬®«      ‘ ece j                  �jP                  ežeŸ ed±d±¬Þ«       e% e�jÒ                  d­«      d˜dÂ«       e% ee �jì                   e d»d»¬É«      i«      d˜d©dË¬À«       e% e�jÒ                  d­«      d˜d©dš¬À«       e% e�jÒ                  d­«      d˜d©d·¬À«       e% e�jÒ                  d­«      d˜d©dÇ¬À«       e% e�jÒ                  d­«      d˜d™e:dš¬›«      f¬ß«      ‘ ece j                  �jR                  e ¬®«      ‘ ece j                  �jT                  e¡d†¬à«      ‘ ece j                  �jV                  e¢¬®«      ‘ ece j                  �jX                   ee¥d¹¬á«      d± e% e�jÒ                  d­«      d˜d©«      f¬â«      ‘ ece j                  �jZ                   ee¥d½¬á«      d± e% e�jÒ                  d­«      d˜d©«      f¬â«      ‘ ece j                  �j\                   ee¥d¿¬á«      d± e%edãd©«       e%edãd�«       e%edãdÊ«       e%edãdä«       e%edãdÚ«       e% e�jÒ                  d­«      d˜d©«      f¬â«      ‘ ece j                  �j^                  e¨¬®«      ‘ ece j                  �j`                  e¦ e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �jb                  e§¬®«      ‘ ece j                  �jd                  d±eº e% e�jÒ                  d­«      d˜dœdË¬À«      g e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜då«      f¬æ«      ‘ ece j                  �jf                  d±e» e% ee �jì                   e d»d»¬É«      i«      d˜d�dËe;¬ç«       e% ee �jè                   e d»dÔ¬É«      i«      d˜dÊd·¬À«       e% e�jÒ                  d­«      d˜dœdË¬À«      g e% e�jÒ                  d­«      d˜d©«      f¬æ«      ‘ ece j                  �jh                  e¼ e% e�jÒ                  d­«      d˜dœdË¬À«      g e% e�jÒ                  d­«      d˜d©«      f¬Ì«      ‘ ece j                  �jj                  e½d± e% e�jÒ                  d­«      d˜dœdË¬À«      g e% e�jÒ                  d­«      d˜d©«      f¬è«      ‘ ece j                  �jl                  d±eÀ e% ee �jè                   e dÙdÏ¬É«      i«      d˜d�d·¬À«      g e% e�jÒ                  d­«      d˜d©«      f¬æ«      ‘ ece j                  �jn                  e¾e¿e9 e% ee �jì                   e d»d»¬É«      i«      d˜d�d·¬À«      g e% e�jÒ                  d­«      d˜d©«      f¬é«      ‘ ece j                  �jp                  e„eärdn) e%e�jª                  d˜d© e@�jÎ                  dª«      d·¬›«      f¬¨«      ‘ ece j                  �jr                  e†¬®«      ‘ ece j                  �jt                  e… e%e#«      f¬¨«      ‘ ece j                  �jv                  e‡ e%e#«      f¬¨«      ‘ ece j                  �jx                   eeÁd±¬ê«      eÙ¬Í«      ‘ ece j                  �jz                  eÁeÙ¬Í«      ‘ ece j                  �j|                  eÂeÚ¬Í«      ‘ ece j                  �j~                  e²eärdn) e%e�jª                  d˜d© e@�jÎ                  dª«      d·¬›«      f¬¨«      ‘ ece j                  �j€                  e³ e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �j‚                  e‰¬®«      ‘ ece j                  �j„                  eŠ¬®«      ‘ ece j                  �j†                  e‹ e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �jˆ                  eŒ e% e�jÒ                  d­«      d˜d©«       e%e�jª                  d˜dÊd·e �jè                  g¬¸«      f¬¨«      ‘ ece j                  �jŠ                  e� e% e�jÒ                  d­«      d˜d©«      f¬¨«      ‘ ece j                  �jŒ                  eŽ e%e#«      f¬¨«      ‘ ece j                  �jŽ                  e� e%e#«      f¬¨«      ‘ ece j                  �j�                  e�¬®«      ‘ ece j                  �j’                  e‘eärdn) e%e�jª                  d˜d© e@�jÎ                  dª«      d·¬›«      f¬¨«      ‘ ece j                  �j”                  e’eärdn) e%e�jª                  d˜d© e@�jÎ                  dª«      d·¬›«      f¬¨«      ‘ ece j                  �j–                  e“ e%e#«      f¬¨«      ‘ ece j                  �j˜                  e” e%e#«      f¬¨«      ‘ ece j                  �jš                  d± eeÄd±¬ê«      eÛe×¬ë«      ‘ ece j                  �jœ                  d± eeÄd†¬ê«      eÛe×¬ë«      ‘ ece j                  �jž                  d±eÅeÛ e%e#«      fe×¬ì«      ‘ ece j                  �j                   eÆ¬®«      ‘ ece j                  �j¢                  eÇe9 e% e�jÒ                  d­«      d˜d©dš¬À«       e% e�jÒ                  d­«      d˜d©d·¬À«       e% e�jÒ                  d­«      d˜d©dÇ¬À«      f¬°«      ‘ ece j                  �j¤                  eÈe9 e% e�jÒ                  d­«      d˜d©dš¬À«       e% e�jÒ                  d­«      d˜d©d·¬À«       e% e�jÒ                  d­«      d˜d©dÇ¬À«      f¬°«      ‘ ece j                  �j¦                  eÉ¬®«      ‘ ece j                  �j¨                  eÊe9 e% e�jÒ                  d­«      d˜d©dš¬À«       e% e�jÒ                  d­«      d˜d©d·¬À«       e% e�jÒ                  d­«      d˜d©dÇ¬À«      f¬°«      ‘ ece j                  �jª                  eËe9 e% e�jÒ                  d­«      d˜d©dš¬À«       e% e�jÒ                  d­«      d˜d©d·¬À«       e% e�jÒ                  d­«      d˜d©dÇ¬À«      f¬°«      ‘ ece j                  �j¬                  eˆ e%e#«      f¬¨«      ‘ ece j                  �j®                  eÌ¬®«      ‘ ece j                  �j°                  eÍ e%e�jª                  d˜d©d·¬À«      f¬¨«      ‘ ece j                  �j²                  eÎ e%e�jª                  d˜d©d·¬À«      f¬¨«      ‘ ece j                  �j´                  eÒeÜ¬Í«      ‘ ece j                  �j¶                  eÓeÝ¬Í«      ‘ ece j                  �j¸                  eÔeÞ e%e�jª                  d˜d©«      f¬Ð«      ‘ ece j                  �jº                  eÏ¬®«      ‘ ece j                  �j¼                  eÐ e%e�jª                  d˜d©d·¬À«      f¬¨«      ‘ ece j                  �j¾                  eÑ e%e�jª                  d˜d©d·¬À«      f¬¨«      ‘�Z`eGec   eHdí<   yc c}w c c}} w c c}w )ïé    N)Údeepcopy)ÚEnum)ÚwrapsÚpartial)ÚchainÚproduct)Úpack_padded_sequence)Úmake_tensor)Ú
TEST_CUDNN)Úfloating_typesÚfloating_and_complex_types_andÚget_all_fp_dtypes)Ú_TestParametrizerÚ_update_param_kwargsÚexpectedFailureMPSÚtoleranceOverrideÚtolÚprecisionOverrideÚskipMetaÚskipMPS)ÚDecorateInfo)Úcosineembeddingloss_referenceÚcross_entropy_loss_referenceÚctcloss_referenceÚhingeembeddingloss_referenceÚhuberloss_referenceÚkldivloss_referenceÚ#linear_cross_entropy_loss_referenceÚmarginrankingloss_referenceÚmultimarginloss_referenceÚmultilabelmarginloss_referenceÚnllloss_referenceÚnlllossNd_referenceÚsmoothl1loss_referenceÚsoftmarginloss_referenceÚget_reduction)Úfreeze_rng_stateÚ	skipIfMPSÚGRADCHECK_NONDET_TOLÚTEST_WITH_ROCMÚ
IS_WINDOWSÚskipIfTorchDynamoÚ	skipIfXpu)Ú
ModuleTypeÚMODULE_NAMESPACESÚMODULES_TO_SKIPÚMODULE_CLASSESÚMODULE_CLASS_NAMESztorch.Ú z.modulesú.ÚTrainEvalMode)Ú
train_onlyÚ	eval_onlyÚtrain_and_evalc                   ó>   — e Zd ZdZdej
                  dfd„Zd„ Zd„ Zy)ÚmoduleszQ PROTOTYPE: Decorator for specifying a list of modules over which to run a test. NTc                 óh   — t        |«      | _        |�t        |«      nd | _        || _        || _        y ©N)ÚlistÚmodule_info_listÚsetÚallowed_dtypesÚtrain_eval_modeÚskip_if_dynamo)ÚselfÚmodule_info_iterabler@   rA   rB   s        úq/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/torch/testing/_internal/common_modules.pyÚ__init__zmodules.__init__L   s5   € ä $Ð%9Ó :ˆÔØ5CÐ5Oœc .Ô1ÐUYˆÔØ.ˆÔØ,ˆÕó    c                 óX  — g }| j                   t        j                  k(  s| j                   t        j                  k(  r|j	                  d«       | j                   t        j
                  k(  s| j                   t        j                  k(  r|j	                  d«       |j                  s|d d }|S )NTFé   )rA   r5   r6   r8   Úappendr7   Útrain_and_eval_differ)rC   Úmodule_infoÚtraining_flagss      rE   Ú_get_training_flagszmodules._get_training_flagsS   s�   € ØˆØ× Ñ ¤M×$<Ñ$<Ò<Ø×$Ñ$¬×(DÑ(DÒDØ×!Ñ! $Ô'à× Ñ ¤M×$;Ñ$;Ò;Ø×$Ñ$¬×(DÑ(DÒDØ×!Ñ! %Ô(ð ×0Ò0Ø+¨B¨QÐ/ˆNàÐrG   c           
   #   óP  ‡K  — |€t        d«      ‚| j                  D �]U  }t        |j                  |j                  «      «      }| j
                  �|j                  | j
                  «      }| j                  |«      }t        ||«      D ]ç  \  }}|j                  }	t        |«      dkD  r|	d|rdnd› �z  }	d|i}
t        |
d|«       t        |
d|«       	 t        ‰«      ˆfd	„«       }| j                  r?t        j                  j                   j"                  j$                  s t'        d
«      |«      }t)        |j*                  |j,                  ‰j,                  |j                  |«      }||	|
|f–— Œé �ŒX y # t.        $ r#}t1        d|	› d|j2                  › d�«       |‚d }~ww xY w­w)Nz¨The @modules decorator is only intended to be used in a device-specific context; use it with instantiate_device_type_tests() instead of instantiate_parametrized_tests()rI   Ú_Ú
train_modeÚ	eval_moderL   ÚdtypeÚtrainingc                  ó   •—  ‰| i |¤ŽS r<   © )ÚargsÚkwargsÚtests     €rE   Útest_wrapperz/modules._parametrize_test.<locals>.test_wrapper}   s   ø€ á# TÐ4¨VÑ4Ð4rG   z/Policy: we don't run ModuleInfo tests w/ DynamozFailed to instantiate z for module ú!)ÚRuntimeErrorr>   r?   Úsupported_dtypesÚdevice_typer@   ÚintersectionrN   r   Úformatted_nameÚlenr   r   rB   ÚtorchÚtestingÚ	_internalÚcommon_utilsÚTEST_WITH_TORCHINDUCTORr,   r   Úget_decoratorsÚ__name__Ú	ExceptionÚprintÚname)rC   rY   Úgeneric_clsÚ
device_clsrL   ÚdtypesrM   rT   rS   Ú	test_nameÚparam_kwargsrZ   Údecorator_fnÚexs    `            rE   Ú_parametrize_testzmodules._parametrize_testc   s»  øè ø€ ØÐÜð  Bó Cð Cð  ×0Ñ0ó "	ˆKÜ˜×5Ñ5°j×6LÑ6LÓMÓNˆFØ×"Ñ"Ð.Ø×,Ñ,¨T×-@Ñ-@ÓA�à!×5Ñ5°kÓBˆNÜ%,¨^¸VÓ%Dò Ñ!�˜5ð (×6Ñ6�	Ü�~Ó&¨Ò*Ø 1±X¡\À;Ð$OÐ!PÑP�Ið !.¨{Ð;�Ü$ \°7¸EÔBÜ$ \°:¸xÔHðä˜4“[ó5ó !ð5ð ×*Ò*´5·=±=×3JÑ3J×3WÑ3W×3oÒ3oØ'kÔ'8Ð9jÓ'kÐlxÓ'y˜ä#*¨;×+EÑ+EÀ{×G[ÑG[Ø+/¯=©=¸*×:PÑ:PÐRWó$Y�Lð (¨°LÀ,ÐOÓOò1ñ"	øô> !ò äÐ2°9°+¸\È+×JZÑJZÐI[Ð[\Ð]Ô^Ø�Hûðüs+   ƒCF&ÃBE7Å1F&Å7	F#Æ FÆF#Æ#F&)	rh   Ú
__module__Ú__qualname__Ú__doc__r5   r8   rF   rN   rs   rV   rG   rE   r:   r:   I   s"   „ Ù[à<@Ø!.×!=Ñ!=Èdó-òó (rG   r:   c                 ó<   — | t         v r	t         |    S | j                  S r<   )r2   rh   )Ú
module_clss    rE   Úget_module_common_namery   Ž   s"   € ØÔ'Ñ'ä! *Ñ-Ð-à×"Ñ"Ð"rG   c                   ó   — e Zd ZdZddgZd„ Zy)ÚFunctionInputz: Contains args and kwargs to pass as input to a function. rW   rX   c                 ó    — || _         || _        y r<   )rW   rX   )rC   rW   rX   s      rE   rF   zFunctionInput.__init__š   s   € ØˆŒ	Øˆ�rG   N©rh   rt   ru   rv   Ú	__slots__rF   rV   rG   rE   r{   r{   –   s   „ ÙDØ˜Ð"€IórG   r{   c                   ó    — e Zd ZdZg d¢Zdd„Zy)ÚModuleInputzA Contains args / kwargs for module instantiation + forward pass. ©Úconstructor_inputÚforward_inputÚdescÚreference_fnNc                 óx   ‡— || _         || _        || _        ‰| _        ‰�t	        ‰«      ˆfd„«       }|| _        y y )Nc                 óx   •— t        |«      t        |«      }} ‰| t        | j                  «       «      g|¢­i |¤ŽS r<   )r   r=   Ú
parameters)ÚmrW   rX   r…   s      €rE   Úcopy_reference_fnz/ModuleInput.__init__.<locals>.copy_reference_fn«   s;   ø€ ô  (¨›~¬x¸Ó/?�f�ñ $ A¤t¨A¯L©L«NÓ';ÐM¸dÒMÀfÑMÐMrG   )r‚   rƒ   r„   r…   r   )rC   r‚   rƒ   r„   r…   rŠ   s       ` rE   rF   zModuleInput.__init__£   sP   ø€ Ø!2ˆÔØ*ˆÔØˆŒ	Ø(ˆÔàÐ#ä�<Ó óNó !ðNð !2ˆDÕð $rG   )Nr3   Nr}   rV   rG   rE   r€   r€   Ÿ   s   „ ÙKÚN€Iô2rG   r€   c                   ó   — e Zd ZdZdZdZy)ÚModuleErrorEnumz7 Enumerates when error is raised when testing modules. r   rI   N)rh   rt   ru   rv   ÚCONSTRUCTION_ERRORÚFORWARD_ERRORrV   rG   rE   rŒ   rŒ   µ   s   „ ÙAØÐØ�MrG   rŒ   c                   ó:   — e Zd ZdZg d¢Zej                  edœd„Zy)ÚErrorModuleInputzw
    A ModuleInput that will cause the operation to throw an error plus information
    about the resulting error.
    ©Úmodule_error_inputÚerror_onÚ
error_typeÚerror_regex)r“   r”   c                ó<   — || _         || _        || _        || _        y r<   r‘   )rC   r’   r“   r”   r•   s        rE   rF   zErrorModuleInput.__init__Â   s"   € ð #5ˆÔØ ˆŒØ$ˆŒØ&ˆÕrG   N)	rh   rt   ru   rv   r~   rŒ   r�   r\   rF   rV   rG   rE   r�   r�   º   s"   „ ñò
 P€Ið
 *×<Ñ<Ø(õ		'rG   r�   c                   ó¾   — e Zd ZdZdd e«       ej                  ej                  fej                  ej                  fdddddddœd„Z	d	„ Z
d
„ Zed„ «       Zed„ «       Zy)Ú
ModuleInfoz+ Module information to be used in testing. rV   NTç        F)ÚskipsÚ
decoratorsrn   ÚdtypesIfMPSÚdtypesIfHpuÚsupports_gradgradÚgradcheck_nondet_tolÚmodule_memformat_affects_outrK   Úmodule_error_inputs_funcÚgradcheck_fast_modec                ó@  — || _         || _        g |r|ng ¢|r|ng ¢­| _        || _        || _        || _        || _        |	| _        |
| _        || _	        || _
        || _        t        |t        j                  j                  j                   j"                  «      | _        y r<   )rx   Úmodule_inputs_funcr›   rn   rœ   r�   rž   rŸ   r    rK   r¡   r¢   Ú
issubclassrb   Únnr:   ÚlazyÚLazyModuleMixinÚis_lazy)rC   rx   r¤   rš   r›   rn   rœ   r�   rž   rŸ   r    rK   r¡   r¢   s                 rE   rF   zModuleInfo.__init__Ñ   s˜   € ð& %ˆŒØ"4ˆÔØZ©:™Z¸2ÐZÉ5Á%ÐVXÑZˆŒØˆŒØ&ˆÔØ&ˆÔØ!2ˆÔØ$8ˆÔ!Ø,HˆÔ)Ø%:ˆÔ"Ø(@ˆÔ%Ø#6ˆÔ Ü! *¬e¯h©h×.>Ñ.>×.CÑ.C×.SÑ.SÓTˆ�rG   c                 óÒ   — g }| j                   D ]U  }t        |t        «      r2|j                  |||||«      sŒ)|j	                  |j                   «       ŒE|j                  |«       ŒW |S r<   )r›   Ú
isinstancer   Ú	is_activeÚextendrJ   )rC   Ú
test_classro   ÚdevicerS   rp   ÚresultÚ	decorators           rE   rg   zModuleInfo.get_decoratorsò   s_   € ØˆØŸ™ò 	)ˆIÜ˜)¤\Ô2Ø×&Ñ& z°9¸fÀeÈ\ÕZØ—M‘M )×"6Ñ"6Õ7à—‘˜iÕ(ð	)ð ˆrG   c                 ó^   — |dk(  r| j                   S |dk(  r| j                  S | j                  S )NÚmpsÚhpu)rœ   r�   rn   )rC   r^   s     rE   r]   zModuleInfo.supported_dtypesü   s4   € Ø˜%ÒØ×#Ñ#Ð#Ø˜EÒ!Ø×#Ñ#Ð#à—;‘;ÐrG   c                 ó,   — t        | j                  «      S r<   )ry   rx   ©rC   s    rE   rk   zModuleInfo.name  s   € ä% d§o¡oÓ6Ð6rG   c                 ó:   — | j                   j                  dd«      S )Nr4   rP   )rk   Úreplacer¶   s    rE   r`   zModuleInfo.formatted_name  s   € à�y‰y× Ñ   cÓ*Ð*rG   )rh   rt   ru   rv   r   rb   Úfloat16Úfloat32Úbfloat16rF   rg   r]   Úpropertyrk   r`   rV   rG   rE   r˜   r˜   Î   s~   „ Ù5ð Ø Ù&Ó(Ø#Ÿm™m¨U¯]©]Ð<Ø#Ÿn™n¨e¯m©mÐ=Ø#'Ø&)Ø.3à',Ø*.Ø%)ôUòBòð ñ7ó ð7ð ñ+ó ñ+rG   r˜   c           
      ó$  — t        t        |||¬«      }t        t        dd«      t         |d«      ¬«      d„ ¬«      t        t        ddd¬	«      t         |d«      «      d
d„ ¬«      t        t        dd«      t         |d«      «      dd„ ¬«      g}|S )N©r¯   rS   Úrequires_gradé
   é   ©é   rÀ   )Úinputc                 óœ   — t        j                  ||d   j                  «       «      |d   j                  dd«      j	                  dd«      z   S )Nr   rI   éÿÿÿÿrÃ   rÁ   )rb   ÚmmÚtÚviewÚexpand)r‰   ÚprÄ   s      rE   ú<lambda>z/module_inputs_torch_nn_Linear.<locals>.<lambda>  sE   € ´U·X±X¸eÀQÀqÁTÇVÁVÃXÓ5NÐQRÐSTÑQU×QZÑQZÐ[\Ð^`ÓQa×QhÑQhÐijÐlmÓQnÑ5n€ rG   ©r‚   rƒ   r…   F©ÚbiasÚno_biasc                 óP   — t        j                  ||d   j                  «       «      S )Nr   )rb   rÇ   rÈ   ©r‰   rË   Úis      rE   rÌ   z/module_inputs_torch_nn_Linear.<locals>.<lambda>  s   € ´·±¸!¸Q¸q¹T¿V¹V»XÓ1F€ rG   r�   é   é   Úno_batch_dimc                 óš   — t        j                  |j                  dd«      |d   j                  «       «      j                  d«      |d   z   S )NrI   rÆ   r   )rb   rÇ   rÉ   rÈ   rÒ   s      rE   rÌ   z/module_inputs_torch_nn_Linear.<locals>.<lambda>  s=   € ´·±¸!¿&¹&ÀÀB»-ÈÈ1ÉÏÉËÓ1R×1WÑ1WÐXZÓ1[Ð^_Ð`aÑ^bÑ1b€ rG   ©r   r
   r€   r{   )rL   r¯   rS   r¿   rT   rX   Ú
make_inputÚmodule_inputss           rE   Úmodule_inputs_torch_nn_LinearrÛ     s•   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°B¸Ó&:Ü"/±jÀÓ6IÔ"JÙ!nô	pô 	¤m°B¸ÀÔ&FÜ"/±
¸7Ó0CÓ"DØ"Ù!Fô	Hô 	¤m°A°qÓ&9Ü"/±
¸1³Ó">Ø'Ù!bô	dð€Mð ÐrG   c                 ób  ‡— t        t        |||¬«      }dd„Št        t        ddd«      t         |d«       |d«      «      ‰¬«      t        t        dddd	¬
«      t         |d«       |d«      «      dˆfd„¬«      t        t        ddd«      t         |d«       |d«      «      dˆfd„¬«      g}|S )Nr¾   c                 ó   — t        j                  d||d   |«      }|rp|j                  d   dk(  r|j                  d«      |d   z   }|S ||d   j                  dd«      j	                  |j                  d   |d   j                  d   «      z   }|S )Nzbn,anm,bm->bar   rI   rÆ   )rb   ÚeinsumÚshaperÉ   rÊ   )r‰   rË   Úx1Úx2rÏ   r°   s         rE   Úbilinear_reference_fnz>module_inputs_torch_nn_Bilinear.<locals>.bilinear_reference_fn%  sŒ   € Ü—‘˜o¨r°1°Q±4¸Ó<ˆÙØ�x‰x˜‰{˜aÒØŸ™ R›¨1¨Q©4Ñ/�ð ˆð   ! A¡$§)¡)¨A¨rÓ"2×"9Ñ"9¸"¿(¹(À1¹+ÀqÈÁtÇzÁzÐRSÁ}Ó"UÑU�ØˆrG   é   rÔ   rÃ   )rÁ   rã   )rÁ   rÔ   rÍ   FrÎ   rÐ   c                 ó   •—  ‰| |||d¬«      S )NFrÎ   rV   ©r‰   rË   rà   rá   râ   s       €rE   rÌ   z1module_inputs_torch_nn_Bilinear.<locals>.<lambda>5  s   ø€ Ñ6KÈAÈqÐRTÐVXÐ_dÔ6e€ rG   r�   rÖ   c           	      óZ   •—  ‰| ||j                  dd«      |j                  dd«      «      S )NrI   rÆ   )rÉ   rå   s       €rE   rÌ   z1module_inputs_torch_nn_Bilinear.<locals>.<lambda>9  s3   ø€ Ñ6KÈAÈqÐRT×RYÑRYÐZ[Ð]_ÓR`Ðbd×biÑbiÐjkÐmoÓbpÓ6q€ rG   )TrØ   )	rL   r¯   rS   r¿   rT   rX   rÙ   rÚ   râ   s	           @rE   Úmodule_inputs_torch_nn_Bilinearrç   "  s´   ø€ Üœ¨V¸5ÐP]Ô^€Jóô 	¤m°A°q¸!Ó&<Ü"/±
¸6Ó0BÁJÈvÓDVÓ"WØ!6ô	8ô 	¤m°A°q¸!À%Ô&HÜ"/±
¸6Ó0BÁJÈvÓDVÓ"WØ"Û!eô	gô 	¤m°A°q¸!Ó&<Ü"/±
¸1³¹zÈ!»}Ó"MØ'Û!qô	sð€Mð ÐrG   c           
      ób  — t        t        |||¬«      }di fdddifdddifddd	ifd
d
difg}g }|D ]û  \  }	}
|
fd„} |d«      j                  «       }|j                  d
d«      r |d«      n |d«      j                  «       }|j	                  t        t        di |
¤Žt        ||«      |	|¬«      «        |d«      j                  «       }|j                  d
d«      r |d«      n |d«      j                  «       }|j	                  t        t        di |
¤Žt        ||«      d|	z   |¬«      «       Œý |S )Nr¾   r3   Úreduction_sumÚ	reductionÚsumÚreduction_batchmeanÚ	batchmeanÚreduction_noneÚnoneÚ
log_targetTc                 ó   — t        ||fi |¤ŽS r<   )r   ©r‰   rË   rÓ   rÈ   Úconstructor_kwargss        rE   r…   z6module_inputs_torch_nn_KLDivLoss.<locals>.reference_fnL  ó   € Ü& q¨!ÑBÐ/AÑBÐBrG   ©rÀ   rÀ   Fr�   rV   Úscalar_)r   r
   ÚlogÚgetrJ   r€   r{   )rL   r¯   rS   r¿   rT   rX   rÙ   ÚcasesrÚ   r„   ró   r…   rÄ   ÚtargetÚscalar_inputÚscalar_targets                   rE   Ú module_inputs_torch_nn_KLDivLossrý   ?  sh  € Üœ¨V¸5ÐP]Ô^€Jð 
ˆRˆØ	˜;¨Ð.Ð/Ø	 ¨kÐ :Ð;Ø	˜K¨Ð0Ð1Ø	˜ dÐ+Ð,ð%€Eð €MØ$)ò 
Ñ ˆÐ Ø8Jó 	Cñ ˜8Ó$×(Ñ(Ó*ˆØ)/¯©°LÀ%Ô)H‘˜HÔ%ÉjÐYaÓNb×NfÑNfÓNhˆØ×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3°E¸6Ó&BØ!Ø%1ô3ô	
ñ " "“~×)Ñ)Ó+ˆð %Ÿj™j¨°uÔ=‰J�rŒNÁ:ÈbÃ>×CUÑCUÓCWð 	ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3°LÀ,Ó&OØ&¨Ñ-Ø%1ô3õ	
ð%
ð2 ÐrG   c                 ót  — |||fd„}t        t        ||d¬«      }di fdddifddd	ifd
d
difdd |d«      j                  «       ifd |d«      j                  «       ddœfd |d«      j                  «       ddœfg}g }	|D �]4  \  }
}|fd„}|	j                  t	        t        d i |¤Žt         |d«      t        j                  d|¬«      j                  «       j                  d«      j                  «       j                  «       «      |
|¬«      «       |fd„}|	j                  t	        t        d i |¤Žt         |d«      t        j                  ddd|¬«      j                  «       j                  d«      j                  «       j                  «       «      d|
› �|¬«      «       |	j                  t	        t        d i |¤Žt         |d«      t        j                  ddddd|¬«      j                  «       j                  d«      j                  «       j                  «       «      d|
› �|¬«      «       |	j                  t	        t        d i |¤Žt         |d«      t        j                  dd|¬«      j                  «       j                  d«      j                  «       j                  «       «      d|
› �|¬«      «       �Œ7 |	S )!Nc                 ó^   — t        | ||d¬«      j                  d¬«      j                  |«      S )NFr¾   rI   ©Údim)r
   Úlog_softmaxÚrequires_grad_)rß   r¯   rS   r¿   s       rE   rÙ   z2module_inputs_torch_nn_NLLLoss.<locals>.make_inputh  s/   € Ü˜5¨°uØ).ô0ß0;±À°Ó0BÇ>Á>ÐR_ÓC`ð	arG   Fr¾   r3   ré   rê   rë   rî   rï   Úignore_indexrã   ÚweightsÚweightrÃ   Úweights_ignore_index)r  r  Úweights_ignore_index_negrÆ   c                 ó   — t        ||fi |¤ŽS r<   )r"   rò   s        rE   r…   z4module_inputs_torch_nn_NLLLoss.<locals>.reference_fn~  s   € Ü$ Q¨Ñ@Ð-?Ñ@Ð@rG   )é   rÃ   r
  ©r¯   r�   c                 ó   — t        ||fi |¤ŽS r<   )r#   rò   s        rE   Únd_reference_fnz7module_inputs_torch_nn_NLLLoss.<locals>.nd_reference_fn‰  rô   rG   )rã   rÃ   rÕ   rÕ   rÕ   Únd_)rã   rÃ   rÕ   rÕ   rã   rã   Úhigher_dim_)rã   rÃ   rÕ   Ú3d_rV   )r   r
   ÚabsrJ   r€   r{   rb   ÚemptyÚuniform_ÚmulÚfloorÚlong)rL   r¯   rS   r¿   rT   rX   rÙ   Úmake_weightrù   rÚ   r„   ró   r…   r  s                 rE   Úmodule_inputs_torch_nn_NLLLossr  g  sÅ  € Ø!'¨uÀMó aô œ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜.¨!Ð,Ð-Ø	�X™{¨1›~×1Ñ1Ó3Ð4Ð5Ø	©K¸«N×,>Ñ,>Ó,@ÐRSÑ!TÐUØ	#±¸A³×0BÑ0BÓ0DÐVXÑ%YÐZð%€Eð €MØ$)ó )
Ñ ˆÐ à8Jó 	Að 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÜ49·K±KÀÈ6Ô4R×4[Ñ4[Ó4]×4aÑ4aÐbcÓ4d×4jÑ4jÓ4l×4qÑ4qÓ4só'uà!Ø%1ô	3ô	
ð <Nó 	Cð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3Ù& |Ó4Ü!ŸK™K¨¨1¨a¸Ô?×HÑHÓJ×NÑNÈqÓQ×WÑWÓY×^Ñ^Ó`ó'bð  # 4 &˜\Ø%4ô6ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3Ù&Ð'9Ó:Ü!ŸK™K¨¨1¨a°°A¸fÔE×NÑNÓP×TÑTÐUVÓW×]Ñ]Ó_×dÑdÓfó'hð  +¨4¨&Ð1Ø%4ô6ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3Ù& yÓ1Ü!ŸK™K¨¨1°VÔ<×EÑEÓG×KÑKÈAÓN×TÑTÓV×[Ñ[Ó]ó'_ð  # 4 &˜\Ø%4ô6ö	
ðE)
ðV ÐrG   c                 ó¨  — t        t        |||¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdddifg}g }	|D ]‹  \  }
}|j                  dd«      }|r |dd«      j                  «       n |dd«      j                  «       }|	j	                  t        t        di |¤Žt         |dd«       |dd«      |«      |
t        ¬«      «       Œ� |	S )Nr¾   Fr3   ré   rê   rë   Úreduction_meanÚmeanrî   rï   ÚhomoscedasticTrI   rÔ   rÃ   r�   rV   )r   r
   Úpopr  rJ   r€   r{   Úno_batch_dim_reference_fn)rL   r¯   rS   r¿   rT   rX   rÙ   Úmake_targetrù   rÚ   r„   ró   r  Ú	var_inputs                 rE   Ú&module_inputs_torch_nn_GaussianNLLLossr!  ª  s  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	˜?¨DÐ1Ð2ð%€Eð €MØ$)ò 

Ñ ˆÐ Ø*×.Ñ.¨ÀÓFˆÙ.;‘J˜q !Ó$×(Ñ(Ô*ÁÈAÈqÓAQ×AUÑAUÓAWˆ	Ø×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸qÀ!Ó4DÙ4?ÀÀ1Ó4EØ4=ó'?ð "Ü%>ô@õ	
ð

ð ÐrG   c                 ó*  ‡— |t         j                  k(  rdddœni }t        t        f|||dœ|¤Ž}t        t        f||ddœ|¤Ž}di fddd	ifd
ddifdddifdddifdddifddddœfg}	dd„Šg }
|	D ]   \  }}|fˆfd„	}|j	                  dd«      }|r |d«      n$ |d«      j                  «       j                  d«      }|
j                  t        t        di |¤Žt        | |d«      j                  «       j                  «       «      ||¬«      «       Œ¢ |
S )Néþÿÿÿrã   ©ÚlowÚhighr¾   Fr3   ré   rê   rë   r  r  rî   rï   ÚfullTÚno_log_inputÚ	log_inputÚfull_no_log_input)r'  r)  c                 óÔ  — |r#| j                  «       |j                  | «      z
  }n%| |j                  | |z   j                  «       «      z
  }|r`||j                  |j                  «       «      |z
  ddt        j                  z  |z  j                  «       z  z   j                  |dk  d«      z  }|dk(  r|S |dk(  r!|j                  «       | j                  «       z  S |j                  «       S )Nç      à?ç       @rI   r   rï   r  )Úexpr  r÷   ÚmathÚpiÚmasked_fillrë   Únumel)rÓ   rÈ   r)  r'  rê   Úepsr°   s          rE   Úpoissonnllloss_reference_fnzJmodule_inputs_torch_nn_PoissonNLLLoss.<locals>.poissonnllloss_reference_fnÛ  sÇ   € ÙØ—U‘U“W˜qŸu™u Q›xÑ'‰Fà˜Ÿ™  C¡Ÿ}™}›Ó/Ñ/ˆFáØ�q—u‘u˜QŸU™U›W“~¨Ñ)¨C°2¼¿¹±<À!Ñ3C×2HÑ2HÓ2JÑ,JÑJ×WÑWÐXYÐ]^ÑX^Ð`aÓbÑbˆFà˜ÒØˆMØ˜&Ò Ø—:‘:“< !§'¡'£)Ñ+Ð+à—:‘:“<ÐrG   c                 ó   •—  ‰||fi |¤ŽS r<   rV   )r‰   rË   rÓ   rÈ   ró   r4  s        €rE   r…   z;module_inputs_torch_nn_PoissonNLLLoss.<locals>.reference_fní  s   ø€ Ù.¨q°!ÑJÐ7IÑJÐJrG   ©rã   rÔ   rÃ   rÕ   çü©ñÒMbP?r�   )TFr  g:Œ0âŽyE>rV   )rb   r¹   r   r
   rø   r  ÚaddrJ   r€   r{   Úfloor_Úabs_)rL   r¯   rS   r¿   rT   rX   Úfp16_kwargsrÙ   r  rù   rÚ   r„   ró   r…   r)  rÄ   r4  s                   @rE   Ú%module_inputs_torch_nn_PoissonNLLLossr<  Æ  sv  ø€ ð
 -2´U·]±]Ò,B˜" aÒ(È€KÜœð E¨V¸5Ø'4ñEØ8CñE€Jäœ+ð >¨f¸EØ(-ñ>Ø1<ñ>€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�&˜$�Ð Ø	˜+ uÐ-Ð.Ø	 t¸%Ñ@ÐAð%€Eó ð  €MØ$)ò 
Ñ ˆÐ Ø8Jõ 	Kð '×*Ñ*¨;¸Ó=ˆ	Ù,5‘
˜<Ô(¹:ÀlÓ;S×;WÑ;WÓ;Y×;]Ñ;]Ð^cÓ;dˆØ×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3°EÙ4?ÀÓ4M×4TÑ4TÓ4V×4[Ñ4[Ó4]ó'_à!Ø%1ô	3õ	
ð
ð ÐrG   c                 ó¼  — t        t        |||¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifg}dd„}	g }
|D ]–  \  }}|
j                  t        t	        di |¤Žt	         |d«       |d«      «      |t        |	fi |¤Ž¬«      «       |
j                  t        t	        di |¤Žt	         |d«       |d«      «      |› d�t        |	fi |¤Ž¬«      «       Œ˜ |
S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   c                 óè   — |dk(  r||z
  j                  d«      S |dk(  r3||z
  j                  d«      j                  «       |j                  «       z  S ||z
  j                  d«      j                  «       S )Nrï   rã   r  )Úpowrë   r2  )r‰   rË   rÓ   rÈ   rê   s        rE   Úmse_loss_reference_fnz=module_inputs_torch_nn_MSELoss.<locals>.mse_loss_reference_fn  se   € Ø˜ÒØ˜‘E—;‘;˜q“>Ð!Ø˜&Ò Ø˜‘E—;‘;˜q“>×%Ñ%Ó'¨!¯'©'«)Ñ3Ð3à˜‘E—;‘;˜q“>×%Ñ%Ó'Ð'rG   r6  r�   rV   Ú_scalar)r  ©r   r
   rJ   r€   r{   )rL   r¯   rS   r¿   rT   rX   rÙ   r  rù   r@  rÚ   r„   ró   s                rE   Úmodule_inputs_torch_nn_MSELossrC  ý  s#  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1ð	%€Eó(ð €MØ$)ò 
Ñ ˆÐ Ø×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸|Ó4LÙ4?ÀÓ4Mó'Oà!Ü%,Ð-BÑ%YÐFXÑ%Yô	[ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸r³NÙ4?À³Oó'Eà $˜v WÐ-Ü%,Ð-BÑ%YÐFXÑ%Yô	[õ	
ð
ð  ÐrG   c                 ó  ‡— ˆfd„} |dd«      rdnd} |dd«      } |dd	«      }|�`t        |t        «      st        d
t        |«      › �«      ‚‰j	                  «       D ]&  \  }}	||v sŒ|	€Œ||   }
|	j                  |
«      ‰|<   Œ( |D �cg c]  }|j                  |«      ‘Œ }}t        «       5   | |i ‰¤Žj                  |«      }ddd«       |r!t        | «      }|dk(  rj                  d«      S S c c}w # 1 sw Y   Œ3xY w)aÏ  Reference function for modules supporting no batch dimensions.

    Unbatched inputs are unsqueezed to form a
    single batch input before passing them to the module.
    The output is squeezed to compare with the
    output of unbatched input to the module.

    Currently it only supports modules which return a single Tensor as output.
    You can bind the following kwargs.
    Kwargs:
        batch_first[bool] : If True, all the Tensors in `args` while be unsqueezed at dim `0` .
                        and output will be squeezed at dim `0` else dim `1` for both.
        kwargs_to_batchify[dict] : Dictionary specifying the name of the argument and dimension to unsqueeze.
                               Useful if there are few arguments whose batch dimension are different
                               from the ones selected by `batch_first`.
        is_criterion[bool] : Specify if the module is a criterion and handle the reduction for output accordingly.
    c                 óV   •— ‰j                  | |«      }| ‰v r‰j                  | «       |S r<   )rø   r  )ÚkeyÚdefaultÚvrX   s      €rE   Úget_and_popz.no_batch_dim_reference_fn.<locals>.get_and_pop6  s*   ø€ Ø�J‰J�s˜GÓ$ˆØ�&‰=Ø�J‰J�sŒOØˆrG   Úbatch_firstTr   rI   Úkwargs_to_batchifyNÚis_criterionFz.Expected kwargs_to_batchify to be a dict, got rï   )	r«   ÚdictÚAssertionErrorÚtypeÚitemsÚ	unsqueezer'   Úsqueezer&   )r‰   rË   rW   rX   rI  Ú	batch_dimrK  rL  ÚkrH  ÚbdimrÄ   Úsingle_batch_input_argsÚoutputrê   s      `           rE   r  r  $  s.  ø€ ô$ñ ! °Ô5‘¸1€IÙ$Ð%9¸4Ó@ÐÙ˜~¨uÓ5€LàÐ%ÜÐ,¬dÔ3Ü Ð#QÔRVÐWiÓRjÐQkÐ!lÓmÐmØ—L‘L“Nò 	.‰DˆAˆqØÐ&Ò&¨1©=Ø)¨!Ñ,�ØŸK™K¨Ó-��q’	ð	.ð
 HLÖL¸e˜uŸ™¨yÕ9ÐLÐÐLÜ	Ó	ñ JÙÐ+Ð6¨vÑ6×>Ñ>¸yÓIˆ÷Jñ Ü! !Ó$ˆ	Ø˜ÒØ—>‘> !Ó$Ð$Ø€Mùò M÷Jð Jús   ÂC5Â0C:Ã:Dc                 ó~  — |j                  dd«      rdnd}d|v r|j                  d«       d|v r|d   �|d   j                  d«      |d<   |D �cg c]  }|j                  |«      ‘Œ }}t        «       5   | |i |¤Ž}|d   j	                  |«      |d   j	                  d«      fcddd«       S c c}w # 1 sw Y   yxY w)a  Reference function for MultiheadAttention supporting no batch dimensions.

    Unbatched inputs are unsqueezed to form a
    single batch input before passing them to the module.
    The output is squeezed to compare with the
    output of unbatched input to the module.
    rJ  Tr   rI   Úkey_padding_maskN)rø   r  rQ  r'   rR  )r‰   rË   rW   rX   rS  rÄ   rV  rW  s           rE   Úno_batch_dim_reference_mharZ  S  sÙ   € ð —Z‘Z ¨tÔ4‘¸!€IØ˜ÑØ�
‰
�=Ô!Ø˜VÑ#¨Ð/AÑ(BÐ(NØ%+Ð,>Ñ%?×%IÑ%IÈ!Ó%LˆÐ!Ñ"ØGKÖL¸e˜uŸ™¨yÕ9ÐLÐÐLÜ	Ó	ñ DÙÐ+Ð6¨vÑ6ˆØ�q‘	×!Ñ! )Ó,¨f°Q©i×.?Ñ.?ÀÓ.BÐC÷Dñ Dùò M÷Dð Dús   ÁB.Á40B3Â3B<c                 ór  — t        |«      dk(  r|\  }d}n$t        |«      dk(  r|\  }}|j                  d«      }|d   rdnd}|j                  d«       j                  |«      }|f}t        «       5   | |i |¤Ž}|d   j	                  |«      |d   j	                  d«      fcddd«       S # 1 sw Y   yxY w)a  Reference function for RNN and GRU supporting no batch dimensions.

    Unbatched inputs are unsqueezed to form a
    single batch input before passing them to the module.
    The output is squeezed to compare with the
    output of unbatched input to the module.
    rI   Nrã   rJ  r   ©ra   rQ  r  r'   rR  ©	r‰   rË   rW   rX   ÚinpÚhrS  rV  rW  s	            rE   Úno_batch_dim_reference_rnn_grur`  f  sÃ   € ô ˆ4ƒy�A‚~Ø‰ˆØ‰Ü	ˆT‹�aŠØ‰ˆˆQØ�K‰K˜‹Nˆà˜MÒ*‘°€IØ
‡J�Jˆ}ÔØ
�-‰-˜	Ó
"€CØ" A˜hÐÜ	Ó	ñ DÙÐ+Ð6¨vÑ6ˆØ�q‘	×!Ñ! )Ó,¨f°Q©i×.?Ñ.?ÀÓ.BÐC÷D÷ Dò Dús   Á30B-Â-B6c                 óÔ  — t        |«      dk(  r|\  }d}n;t        |«      dk(  r-|\  }}|d   j                  d«      |d   j                  d«      f}|d   rdnd}|j                  d«       j                  |«      }|f}t        «       5   | |i |¤Ž}|d   j	                  |«      |d   d   j	                  d«      |d   d   j	                  d«      ffcddd«       S # 1 sw Y   yxY w)a  Reference function for LSTM supporting no batch dimensions.

    Unbatched inputs are unsqueezed to form a
    single batch input before passing them to the module.
    The output is squeezed to compare with the
    output of unbatched input to the module.
    rI   Nrã   r   rJ  r\  r]  s	            rE   Úno_batch_dim_reference_lstmrb  ~  sø   € ô ˆ4ƒy�A‚~Ø‰ˆØ‰Ü	ˆT‹�aŠØ‰ˆˆQØˆq‰T�^‰^˜AÓ  !¡§¡¨qÓ 1Ð2ˆà˜MÒ*‘°€IØ
‡J�Jˆ}ÔØ
�-‰-˜	Ó
"€CØ" A˜hÐÜ	Ó	ñ bÙÐ+Ð6¨vÑ6ˆØ�q‘	×!Ñ! )Ó,¨v°a©y¸©|×/CÑ/CÀAÓ/FÈÈqÉ	ÐRSÉ×H\ÑH\Ð]^ÓH_Ð.`Ða÷b÷ bò bús   Â
A
CÃC'c                 ó  — |\  }\  }}|j                  d«      |j                  d«      |j                  d«      ff}t        «       5   | |i |¤Ž}|d   j                  d«      |d   j                  d«      fcddd«       S # 1 sw Y   yxY w)zÖReference function for LSTMCell supporting no batch dimensions.

    The module is passed the input and target in batched form with a single item.
    The output is squeezed to compare with the no-batch input.
    r   rI   N)rQ  r'   rR  )	r‰   rË   rW   rX   r^  r_  ÚcrV  rW  s	            rE   Úno_batch_dim_reference_lstmcellre  –  s‹   € ð �K€C‰ˆ!ˆQØ"Ÿ}™}¨QÓ/°!·+±+¸a³.À!Ç+Á+ÈaÃ.Ð1QÐRÐÜ	Ó	ñ <ÙÐ+Ð6¨vÑ6ˆØ�q‘	×!Ñ! !Ó$ f¨Q¡i×&7Ñ&7¸Ó&:Ð;÷<÷ <ò <ús   Á0B Â B	c                 óª   — dD �cg c]C  }t        t        |¬«      t         | d«       | d«      «      t        t        d¬«      d|› �¬«      ‘ŒE c}S c c}w )	N)rï   r  rë   )rê   ©rÃ   rÃ   T©rL  Úno_batch_dim_©r‚   rƒ   r…   r„   )r€   r{   r   r  )rÙ   rê   s     rE   Ú$generate_regression_criterion_inputsrk  £  s[   € ð 3ö4ð ô 	Ü+°iÔ@Ü'©
°5Ó(9¹:Àa»>ÓJÜ Ô!:ÈÔNØ   Ð,ö		
ò4ð 4ùò 4s   …AAc                 ód  — t        t        |||¬«      }t        t        d¬«      t         |d«      «      dt        ¬«      t        t        d«      t         |d«      «      ¬«      t        t        d	d	«      t         |d«      «      d
¬«      t        t        ddd«      t         |d«      «      d¬«      gS )Nr¾   rã   )Úkernel_size)rÔ   é   rÖ   r�   )rã   rÔ   rn  ©r‚   rƒ   ©rã   Ústride©r‚   rƒ   r„   rI   Ú
stride_pad©r   r
   r€   r{   r  ©rL   r¯   rS   r¿   rT   rX   rÙ   s          rE   Ú module_inputs_torch_nn_AvgPool1drv  ­  s¦   € Üœ¨V¸5ÐP]Ô^€Jô 	¤mÀÔ&BÜ"/±
¸6Ó0BÓ"CØ'Ü!:ô	<ô 	¤m°AÓ&6Ü"/±
¸9Ó0EÓ"Fô	Hä¤m°D¸$Ó&?Ü"/±
¸9Ó0EÓ"FØ!ô	#ô 	¤m°A°q¸!Ó&<Ü"/±
¸9Ó0EÓ"FØ%ô	'ð(ð (rG   c                 óR  — t        t        |||¬«      }t        t        d«      t         |d«      «      dt        ¬«      t        t        d«      t         |d«      «      ¬«      t        t        dd«      t         |d«      «      d¬	«      t        t        ddd
«      t         |d«      «      d¬	«      t        t        dd¬«      t         |d«      «      d¬	«      t        t        ddd¬«      t         |d«      «      d¬	«      t        t        ddd
d¬«      t         |d«      «      d¬	«      gS )Nr¾   ©rã   rã   ©rÔ   rn  rn  rÖ   r�   ©rã   rÔ   rn  rn  ro  rq  rr  ©rI   rI   rs  rI   ©Údivisor_overrideÚdivisorÚdivisor_strideÚdivisor_stride_padrt  ru  s          rE   Ú module_inputs_torch_nn_AvgPool2dr�  ¿  s  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°FÓ&;Ü"/±
¸9Ó0EÓ"FØ'Ü!:ô	<ô 	¤m°FÓ&;Ü"/±
¸<Ó0HÓ"Iô	Kä¤m°F¸FÓ&CÜ"/±
¸<Ó0HÓ"IØ!ô	#ô 	¤m°F¸FÀFÓ&KÜ"/±
¸<Ó0HÓ"IØ%ô	'ô 	¤m°FÈQÔ&OÜ"/±
¸<Ó0HÓ"IØ"ô	$ô 	¤m°F¸FÐUVÔ&WÜ"/±
¸<Ó0HÓ"IØ)ô	+ô 	¤m°F¸FÀFÐ]^Ô&_Ü"/±
¸<Ó0HÓ"IØ-ô	/ð'0ð 0rG   c                 óÒ  — t        t        |||¬«      }t        t        d«      t         |d«      «      dt        ¬«      t        t        d«      t         |d«      «      ¬«      t        t        dd«      t         |d	«      «      d
¬«      t        t        ddd«      t         |d	«      «      d¬«      t        t        ddd«      t         |d	«      «      d¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        dd¬«      t         |d«      «      d¬«      t        t        ddd¬«      t         |d	«      «      d¬«      t        t        dddd¬«      t         |d	«      «      d¬«      t        t        dddd¬«      t         |d	«      «      d¬«      t        t        dddd¬«      t         |d«      «      d¬«      t        t        dddd¬«      t         |d«      «      d ¬«      t        t        dddd¬«      t         |d«      «      d!¬«      gS )"Nr¾   ©rã   rã   rã   ©rÔ   rÃ   rÃ   rÃ   rÖ   r�   ©rã   rÔ   rÃ   rÃ   rÃ   ro  rã   ©rã   rÔ   rÕ   rÕ   rÕ   rq  rr  ©rI   rI   rI   rs  rÃ   )rI   rã   rI   Ústride_pad_gpu_fixedkw_output)rã   rÃ   rÁ   rI   )rI   rI   rã   )rã   rÔ   rã   rÃ   rÁ   Ústride_pad_gpu_general_outputrÔ   r   Ústride1_pad0_gpu_inputÚstride_pad_gpu_input_nooverlapr|  r~  r  r€  Ú%divisor_stride_pad_gpu_fixedkw_outputÚ%divisor_stride_pad_gpu_general_outputÚdivisor_stride1_pad0_gpu_inputÚ&divisor_stride_pad_gpu_input_nooverlaprt  ru  s          rE   Ú module_inputs_torch_nn_AvgPool3dr�  Û  sQ  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°IÓ&>Ü"/±
¸<Ó0HÓ"IØ'Ü!:ô	<ô 	¤m°IÓ&>Ü"/±
¸?Ó0KÓ"Lô	Nä¤m°A°yÓ&AÜ"/±
¸?Ó0KÓ"LØ!ô	#ô 	¤m°A°q¸)Ó&DÜ"/±
¸?Ó0KÓ"LØ%ô	'ô 	¤m°A°q¸)Ó&DÜ"/±
¸?Ó0KÓ"LØ8ô	:ô 	¤m°I¸qÀ)Ó&LÜ"/±
¸?Ó0KÓ"LØ8ô	:ô 	¤m°A°q¸!Ó&<Ü"/±
¸?Ó0KÓ"LØ1ô	3ô 	¤m°A°q¸)Ó&DÜ"/±
¸?Ó0KÓ"LØ9ô	;ô 	¤m°IÐPQÔ&RÜ"/±
¸?Ó0KÓ"LØ"ô	$ô 	¤m°A°yÐSTÔ&UÜ"/±
¸?Ó0KÓ"LØ)ô	+ô 	¤m°A°q¸)ÐVWÔ&XÜ"/±
¸?Ó0KÓ"LØ-ô	/ô 	¤m°A°q¸)ÐVWÔ&XÜ"/±
¸?Ó0KÓ"LØ@ô	Bô 	¤m°I¸qÀ)Ð^_Ô&`Ü"/±
¸?Ó0KÓ"LØ@ô	Bô 	¤m°A°q¸!ÈaÔ&PÜ"/±
¸?Ó0KÓ"LØ9ô	;ô 	¤m°A°q¸)ÐVWÔ&XÜ"/±
¸?Ó0KÓ"LØAô	CðW-Dð -DrG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      t        t        d	«      t         |d«      «      d
¬«      gS )Nr¾   rÔ   ©rI   rÔ   rÕ   Úsinglerr  ©rÔ   rÕ   rÖ   rj  rI   Ú
one_outputrt  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveAvgPool1dr–    sƒ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸6Ó0BÓ"CÜ!:Ø'ô	)ô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FØ%ô	'ð
(ð 
(rG   c                 ó¨  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      t        t        d	«      t         |d«      «      d
¬«      t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      d¬«      gS )Nr¾   rÔ   ©rI   rÔ   rÕ   rn  r“  rr  ©rÔ   rÕ   rn  rÖ   rj  rI   Úsingle_1x1output©rÔ   rÃ   Útuple©rÔ   NÚ
tuple_nonert  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveAvgPool2drŸ    sÅ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"IØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FÜ!:Ø'ô	)ô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"IØ+ô	-ô 	¤m°FÓ&;Ü"/±
¸<Ó0HÓ"IØ ô	"ô 	¤m°IÓ&>Ü"/±
¸<Ó0HÓ"IØ%ô	'ð(ð (rG   c                 ó¨  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      t        t        d	«      t         |d
«      «      d¬«      t        t        d«      t         |d
«      «      d¬«      t        t        d«      t         |d«      «      d¬«      gS )Nr¾   rÔ   )rã   rÔ   rÕ   rã   é   r“  rr  )rÔ   rÕ   rã   r¡  rÖ   rj  ©rÔ   rÃ   rÕ   )rã   rÔ   rÕ   rÔ   r¡  rœ  )NrÃ   rÕ   rž  )rÔ   rã   rã   )rI   rI   rÔ   rã   rn  Úlast_dimrt  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveAvgPool3dr¤  4  sÅ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸?Ó0KÓ"LØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"IÜ!:Ø'ô	)ô 	¤m°IÓ&>Ü"/±
¸?Ó0KÓ"LØ ô	"ô 	¤m°LÓ&AÜ"/±
¸?Ó0KÓ"LØ%ô	'ô 	¤m°IÓ&>Ü"/±
¸?Ó0KÓ"LØ#ô	%ð&ð &rG   c           	      óÊ   — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      gS )	Nr¾   rÔ   r’  r“  rr  r”  rÖ   rj  rt  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveMaxPool1dr¦  J  sb   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸6Ó0BÓ"CÜ!:Ø'ô	)ð	*ð *rG   c                 ó^  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      t        t        d	«      t         |d«      «      d
¬«      t        t        d«      t         |d«      «      d¬«      gS )Nr¾   rÔ   r˜  r“  rr  r™  rÖ   rj  r›  rœ  r�  rž  rt  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveMaxPool2dr¨  W  s¤   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"IØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FÜ!:Ø'ô	)ô 	¤m°FÓ&;Ü"/±
¸<Ó0HÓ"IØ ô	"ô 	¤m°IÓ&>Ü"/±
¸<Ó0HÓ"IØ%ô	'ð(ð (rG   c                 óò  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      t        d¬«      t        t        d	«      t         |d«      «      d
¬«      t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      d¬«      t        t        d	«      t         |d«      «      d¬«      gS )Nr¾   rÔ   )rã   rÔ   rÕ   rn  r¡  r“  rr  )rÔ   rÕ   rn  r¡  rÖ   rj  r¢  rœ  )rÔ   NrÕ   rž  )rã   rÔ   é   é	   rÔ   Úsingle_nonatomic)rã   rÔ   rn  rÃ   rÀ   Útuple_nonatomicrt  ru  s          rE   Ú(module_inputs_torch_nn_AdaptiveMaxPool3dr®  j  sè   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸?Ó0KÓ"LØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"IÜ!:Ø'ô	)ô 	¤m°IÓ&>Ü"/±
¸?Ó0KÓ"LØ ô	"ô 	¤m°LÓ&AÜ"/±
¸?Ó0KÓ"LØ%ô	'ô 	¤m°AÓ&6Ü"/±
Ð;KÓ0LÓ"MØ+ô	-ô 	¤m°IÓ&>Ü"/±
Ð;KÓ0LÓ"MØ*ô	,ð#-ð -rG   c                 óž  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      d¬«      t        t        dd	d «      t         |d«      «      d
¬«      t        t        dd	dd«      t         |d«      «      d¬«      t        t        dd	ddd«      t         |d«      «      d¬«      t        t        dd	dd«      t         |d«      «      d¬«      t        t        dd	dd«      t         |d«      «      d¬«      t        t        dd¬«      t         |d«      «      d¬«      gS )Nr¾   rÀ   rÂ   Úaffinerr  rÕ   )rÃ   rÕ   rÔ   Ú3d_inputr7  Úaffine_simple_averageç333333Ó?FÚ
not_affineTÚnot_tracking_statsÚ3d_input_not_affine)r   rÕ   r«  Ú
zero_batchrÎ   Úaffine_not_biasrØ   ru  s          rE   Ú"module_inputs_torch_nn_BatchNorm1dr¹  ƒ  sE  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°BÓ&8Ü"/±
¸7Ó0CÓ"DØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FØ#ô	%ô 	¤m°B¸¸dÓ&CÜ"/±
¸7Ó0CÓ"DØ0ô	2ô 	¤m°B¸¸cÀ5Ó&IÜ"/±
¸7Ó0CÓ"DØ%ô	'ô 	¤m°B¸¸cÀ4ÈÓ&OÜ"/±
¸7Ó0CÓ"DØ-ô	/ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸9Ó0EÓ"FØ.ô	0ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸9Ó0EÓ"FØ%ô	'ô 	¤m°B¸UÔ&CÜ"/±
¸7Ó0CÓ"DØ*ô	,ð-.ð .rG   c                 óP  — t        t        |||¬«      }t        t        d«      t         |d«      «      ¬«      t        t        ddd «      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d	¬«      t        t        dddd
«      t         |d«      «      d¬«      t        t        ddddd
«      t         |d«      «      d¬«      t        t        dddd
«      t         |d«      «      d¬«      t        t        dd
¬«      t         |d«      «      d¬«      gS )Nr¾   rÔ   rz  ro  r7  Ú2d_simple_averagerr  gš™™™™™é?ÚmomentumFr´  Trµ  rÕ   r³  )r   rÕ   rã   rã   r·  rÎ   r¸  rØ   ru  s          rE   Ú"module_inputs_torch_nn_BatchNorm2dr½  ¡  s  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸<Ó0HÓ"Iô	Kä¤m°A°t¸TÓ&BÜ"/±
¸<Ó0HÓ"IØ,ô	.ô 	¤m°A°t¸SÓ&AÜ"/±
¸<Ó0HÓ"IØ#ô	%ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸<Ó0HÓ"IØ%ô	'ô 	¤m°A°t¸SÀ$ÈÓ&NÜ"/±
¸<Ó0HÓ"IØ-ô	/ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸<Ó0HÓ"IØ%ô	'ô 	¤m°A¸EÔ&BÜ"/±
¸<Ó0HÓ"IØ*ô	,ð%.ð .rG   c                 óP  — t        t        |||¬«      }t        t        d«      t         |d«      «      ¬«      t        t        ddd «      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d	¬«      t        t        dddd
«      t         |d«      «      d¬«      t        t        ddddd
«      t         |d«      «      d¬«      t        t        dddd
«      t         |d«      «      d¬«      t        t        dd
¬«      t         |d«      «      d¬«      gS )Nr¾   rÔ   r…  ro  r7  Ú3d_simple_averagerr  çffffffæ?r¼  Fr´  Trµ  rÕ   r³  )r   rÕ   rã   rã   rã   r·  rÎ   r¸  rØ   ru  s          rE   Ú"module_inputs_torch_nn_BatchNorm3drÁ  »  s  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&7Ü"/±
¸?Ó0KÓ"Lô	Nä¤m°A°t¸TÓ&BÜ"/±
¸?Ó0KÓ"LØ,ô	.ô 	¤m°A°t¸SÓ&AÜ"/±
¸?Ó0KÓ"LØ#ô	%ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸?Ó0KÓ"LØ%ô	'ô 	¤m°A°t¸SÀ$ÈÓ&NÜ"/±
¸?Ó0KÓ"LØ-ô	/ô 	¤m°A°t¸SÀ%Ó&HÜ"/±
¸?Ó0KÓ"LØ%ô	'ô 	¤m°A¸EÔ&BÜ"/±
¸?Ó0KÓ"LØ*ô	,ð%.ð .rG   c                 óì  — t        t        |||¬«      }| j                  t        j                  j
                  k(  rd}n,| j                  t        j                  j                  k(  rd}nd}t        t        t        dd¬«      t         ||«      «      ¬«      t        j                  t        d	¬
«      t        t        t        dd¬«      t         ||«      «      ¬«      t        j                  t        d	¬
«      gS )Nr¾   )rã   rÀ   )rã   rÀ   rÕ   rÕ   )rã   rÀ   rÃ   rÃ   rÃ   rÀ   g      ð¿)r3  ro  zeps must be positive©r“   r”   r•   r™   )r   r
   rx   rb   r¦   ÚBatchNorm1dÚBatchNorm2dr�   r€   r{   rŒ   rŽ   Ú
ValueError)rL   r¯   rS   r¿   rT   rX   rÙ   Úinput_shapes           rE   Ú.module_error_inputs_torch_nn_BatchNorm1d_2d_3drÈ  Õ  sÐ   € Üœ¨V¸5ÐP]Ô^€Jà×Ñ¤§¡×!5Ñ!5Ò5Ø‰Ø	×	Ñ	¤5§8¡8×#7Ñ#7Ò	7Ø#‰à&ˆô 	ÜÜ"/°¸Ô"=Ü+©J°{Ó,CÓDôô %×2Ñ2Ü!Ø.ô	
ô 	ÜÜ"/°¸Ô"<Ü+©J°{Ó,CÓDôô %×2Ñ2Ü!Ø.ô	
ðð rG   c                 óÔ  — |d   }|j                  dd«      }|j                  dd«      }t        t        |||¬«      }	|ri gni ddig}
d\  }}}|ft        d	„ t	        |«      D «       «      z   }d
|z   }t        j                  ddg|
«      D ��cg c]N  \  }}t        |rt        ||fi |¤Žnt        |||fi |¤Žt         |	|r|n|«      «      |rdnd|rd nt        ¬«      ‘ŒP c}}S c c}}w )NÚNr§   FÚ
transposedr¾   ÚpaddingÚsamer¢  c              3   ó&   K  — | ]	  }|d z   –— Œ y­wr�  rV   )Ú.0rÓ   s     rE   ú	<genexpr>z0module_inputs_torch_nn_ConvNd.<locals>.<genexpr>ü  s   è ø€ Ò*C°Q¨1¨q­5Ñ*Cùs   ‚rp  Tr3   rÖ   r�   )
rø   r   r
   rœ  ÚrangeÚ	itertoolsr   r€   r{   r  )rL   r¯   rS   r¿   rT   rX   rÊ  r§   rË  rÙ   Úconv_kwargs_listrm  ÚC_inÚC_outÚinput_no_batch_shapeÚinput_batch_shapeÚ
with_batchÚconv_kwargss                     rE   Úmodule_inputs_torch_nn_ConvNdrÚ  õ  s  € Øˆs‰€AØ�:‰:�f˜eÓ$€DØ—‘˜L¨%Ó0€JÜœ¨V¸5ÐP]Ô^€JÙ)˜‘t°°YÀÐ4GÐ/HÐØ&Ñ€K��uØ ˜7¤UÑ*C¼%À»(Ô*CÓ%CÑCÐØÐ3Ñ3Ðô (1×'8Ñ'8¸$À¸ÐHXÓ'Y÷ñ $ˆJ˜ô 	Ñ[_¤}°U¸KÑ'WÈ;Ò'WÜ'4°T¸5À+Ñ']ÐQ\Ñ']Ü"/±
Ù-7Ñ)Ð=Qó1Só #Tá *™"°Ù*4¡$Ô:Sö	Vóð ùó s   ÂAC$c                 óJ  — t        t        |||¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdddifg}g }	|D ]\  \  }
}|fd„}|	j                  t        t	        di |¤Žt	         |d«       |d«       |d«      j                  «       «      |
|¬«      «       Œ^ |	S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   ÚmarginrÀ  c                 ó   — t        |||fi |¤ŽS r<   )r   ©r‰   rË   Úi1Úi2rÈ   ró   s         rE   r…   z@module_inputs_torch_nn_CosineEmbeddingLoss.<locals>.reference_fn  s   € Ü0°°R¸ÑQÐ>PÑQÐQrG   ©r
  rÀ   )r
  r�   rV   ©r   r
   rJ   r€   r{   Úsign©rL   r¯   rS   r¿   rT   rX   rÙ   r  rù   rÚ   r„   ró   r…   s                rE   Ú*module_inputs_torch_nn_CosineEmbeddingLossrå  	  sæ   € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�H˜c�?Ð#ð%€Eð €MØ$)ò 

Ñ ˆÐ Ø=Oó 	Rð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸xÓ4HÉ*ÐU]ÓJ^Ù4?ÀÓ4F×4KÑ4KÓ4Mó'Oà!Ø%1ô	3õ	
ð	

ð ÐrG   c                 ód  — t        t        |||¬«      }t        t        d¬«      t         |d«      «      d„ ¬«      t        t        d¬«      t         |d«      «      d¬	«      t        t        «       t         |d
«      «      dt        ¬«      t        t        d¬«      t         |d«      «      d¬	«      gS )Nr¾   r-  ©Úalpha©rÔ   rã   rÕ   c                 ó^   — t        j                  |dk\  |d|j                  «       dz
  z  «      S )Nr   rã   rI   ©rb   Úwherer.  rÒ   s      rE   rÌ   z,module_inputs_torch_nn_ELU.<locals>.<lambda>+  s'   € ´·±¸QÀ!¹VÀQÈÈQÏUÉUËWÐWXÉ[ÑHYÓ1Z€ rG   rÍ   rV   Úscalarrr  ©rÔ   rÖ   r�   ©rã   rÔ   rã   rÕ   Ú4d_inputrt  ru  s          rE   Úmodule_inputs_torch_nn_ELUrñ  %  s¡   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m¸"Ô&=Ü"/±
¸9Ó0EÓ"FÙ!Zô	\ô 	¤m¸"Ô&=Ü"/±
¸2³Ó"?Ø!ô	#ô 	¤m£oÜ"/±
¸4Ó0@Ó"AØ'Ü!:ô	<ô 	¤m¸"Ô&=Ü"/±
¸<Ó0HÓ"IØ#ô	%ð&ð &rG   c           
      ó   — t        t        |||¬«      }t        t        d¬«      t         |d«      «      d„ ¬«      t        t        d¬«      t         |d«      «      d„ d	¬
«      t        t        d¬«      t         |d«      «      dt        ¬«      gS )Nr¾   r-  rç  ré  c                 ód   — t        j                  |dk\  |dd|z  j                  «       dz
  z  «      S ©Nr   r-  r,  rI   rë  rÒ   s      rE   rÌ   z-module_inputs_torch_nn_CELU.<locals>.<lambda>>  ó-   € ´·±¸QÀ!¹VÀQÈÈrÐTUÉvÏlÉlËnÐ_`ÑN`ÑHaÓ1b€ rG   rÍ   rV   c                 ód   — t        j                  |dk\  |dd|z  j                  «       dz
  z  «      S rô  rë  rÒ   s      rE   rÌ   z-module_inputs_torch_nn_CELU.<locals>.<lambda>A  rõ  rG   rí  rj  rî  rÖ   r�   rt  ru  s          rE   Úmodule_inputs_torch_nn_CELUr÷  8  s†   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m¸"Ô&=Ü"/±
¸9Ó0EÓ"FÙ!bô	dô 	¤m¸"Ô&=Ü"/±
¸2³Ó"?Ù!bØ!ô	#ô 	¤m¸"Ô&=Ü"/±
¸4Ó0@Ó"AØ'Ü!:ô	<ð=ð =rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        d«      t         |d«      «      d¬«      t        t        «       t         |d«      «      d	t        ¬
«      gS )Nr¾   )rÕ   rn  ro  rI   ©rÕ   rn  r¡  r  rr  rg  rÖ   r�   rt  ru  s          rE   Úmodule_inputs_torch_nn_GLUrú  I  sy   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸6Ó0BÓ"Cô	Eä¤m°AÓ&6Ü"/±
¸9Ó0EÓ"FØô	 ô 	¤m£oÜ"/±
¸4Ó0@Ó"AØ'Ü!:ô	<ð	=ð 	=rG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      d„ d¬«      t        t        d«      t         |d«      «      d„ ¬	«      t        t        «       t         |d
«      «      dt        ¬«      gS )Nr¾   rï   rV   c                 ój   — |dz  dt        j                  |t        j                  d«      z  «      z   z  S ©Nr,  ç      ð?r-  ©rb   Úerfr/  Úsqrt©r‰   rË   ÚxrP   s       rE   rÌ   z-module_inputs_torch_nn_GELU.<locals>.<lambda>^  ó0   € °Q¸±WÀÄeÇiÁiÐPQÔTX×T]ÑT]Ð^aÓTbÑPbÓFcÑ@cÑ5d€ rG   rí  rj  ré  c                 ój   — |dz  dt        j                  |t        j                  d«      z  «      z   z  S rý  rÿ  r  s       rE   rÌ   z-module_inputs_torch_nn_GELU.<locals>.<lambda>b  r  rG   rÍ   rî  rÖ   r�   rt  ru  s          rE   Úmodule_inputs_torch_nn_GELUr  X  sƒ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°FÓ&;Ü"/±
¸2³Ó"?Ù!dØ!ô	#ô 	¤m°FÓ&;Ü"/±
¸9Ó0EÓ"FÙ!dô	fô 	¤m£oÜ"/±
¸4Ó0@Ó"AØ'Ü!:ô	<ð=ð =rG   c                 óV  — t        t        |||¬«      }t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d	¬«      t        t        «       t         |d
«      «      d¬«      gS ©Nr¾   rV   rí  rr  rÃ   rÖ   rj  r6  Úchannels_last_mem_format)rã   rÔ   rÔ   rÃ   rÕ   Úchannels_last_3d_mem_formatrt  ru  s          rE   Úmodule_inputs_torch_nn_ReLUr  i  ó–   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸2³Ó"?Ø!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ô 	¤m£oÜ"/±
¸<Ó0HÓ"IØ3ô	5ô 	¤m£oÜ"/±
¸?Ó0KÓ"LØ6ô	8ð9ð 9rG   c                 óV  — t        t        |||¬«      }t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d	¬«      t        t        «       t         |d
«      «      d¬«      gS r  rt  ru  s          rE   Úmodule_inputs_torch_nn_ReLU6r  |  r  rG   c                 ó¢  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        «       t         |d«      «      t        d¬«      t        t        d«      t         |d«      «      d¬	«      t        t        d
«      t         |d«      «      d¬	«      t        t        d«      t         |d«      «      d¬	«      gS )Nr¾   ré  ro  rÃ   rÖ   rj  r,  Úwith_negvalrr  r™   rõ   Úwith_zero_negvalrV   Úwith_negval_scalarrt  ru  s          rE   Ú module_inputs_torch_nn_LeakyReLUr  �  s¹   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÓ"Fô	Hä¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ô 	¤m°CÓ&8Ü"/±
¸9Ó0EÓ"FØ&ô	(ô 	¤m°CÓ&8Ü"/±
¸8Ó0DÓ"EØ+ô	-ô 	¤m°CÓ&8Ü"/±
¸2³Ó"?Ø-ô	/ð0ð 0rG   c                 ó”  — t        t        |||¬«      }t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d	„ d
¬«      t        t        d«      t         |d«      «      d„ d¬«      t        t        «       t         |d«      «      d„ d¬«      t        t        d«      t         |d«      «      d„ d¬«      t        t        «       t         |d«      «      d„ d¬«      t        t        d«      t         |d«      «      d„ d¬«      gS )Nr¾   rV   rí  rr  rÃ   rÖ   rj  ©rã   rÔ   rÃ   c                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S ©Nr   ©Úmin)Úmax©rb   ÚclamprÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>±  ó5   € ´·±¸QÀAÔ1FÌÏÉÐUVÐ\]ÔI^ÐabÐcdÑaeÐfgÑahÑIhÑ1h€ rG   Ú1drÔ   c                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S r  r  rÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>µ  r  rG   Ú1d_multiparamr6  c                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S r  r  rÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>¹  r  rG   Ú2dc                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S r  r  rÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>½  r  rG   Ú2d_multiparam)rã   rÔ   rÃ   rÕ   rn  c                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S r  r  rÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>Á  r  rG   Ú3dc                 ór   — t        j                  |d¬«      t        j                  |d¬«      |d   d   z  z   S r  r  rÒ   s      rE   rÌ   z.module_inputs_torch_nn_PReLU.<locals>.<lambda>Å  r  rG   Ú3d_multiparamrt  ru  s          rE   Úmodule_inputs_torch_nn_PReLUr)  ¤  s)  € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸2³Ó"?Ø!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ô 	¤m£oÜ"/±
¸9Ó0EÓ"FÙ!hØô	ô 	¤m°AÓ&6Ü"/±
¸9Ó0EÓ"FÙ!hØ(ô	*ô 	¤m£oÜ"/±
¸<Ó0HÓ"IÙ!hØô	ô 	¤m°AÓ&6Ü"/±
¸<Ó0HÓ"IÙ!hØ(ô	*ô 	¤m£oÜ"/±
¸?Ó0KÓ"LÙ!hØô	ô 	¤m°AÓ&6Ü"/±
¸?Ó0KÓ"LÙ!hØ(ô	*ð9+ð +rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d¬	«      gS )
Nr¾   ré  ro  rÃ   rÖ   rj  rV   rí  rr  rt  ru  s          rE   Úmodule_inputs_torch_nn_SELUr+  É  st   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÓ"Fô	Hä¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ô 	¤m£oÜ"/±
¸2³Ó"?Ø!ô	#ð	$ð 	$rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ d¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d	„ ¬
«      gS )Nr¾   rV   c                 ó2   — |t        j                  |«      z  S r<   ©rb   Úsigmoidr  s       rE   rÌ   z-module_inputs_torch_nn_SiLU.<locals>.<lambda>Þ  ó   € °Q¼¿¹ÀqÓ9IÑ5I€ rG   rí  rj  rÃ   rÖ   rù  c                 ó2   — |t        j                  |«      z  S r<   r.  r  s       rE   rÌ   z-module_inputs_torch_nn_SiLU.<locals>.<lambda>æ  r0  rG   rÍ   rt  ru  s          rE   Úmodule_inputs_torch_nn_SiLUr2  Ø  s~   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸2³Ó"?Ù!IØ!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ô 	¤m£oÜ"/±
¸9Ó0EÓ"FÙ!Iô	KðLð LrG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      d„ ¬«      t        t        d«      t         |d«      «      d„ d	¬
«      t        t        d«      t         |d«      «      t        d¬
«      gS )Nr¾   rI   ©rÀ   é   c                 ó°   — t        j                  |«      j                  t        j                  |«      j                  dd«      j	                  dd«      «      S ©NrI   TrÀ   r5  )rb   r.  Údivrë   rÊ   rÒ   s      rE   rÌ   z0module_inputs_torch_nn_Softmax.<locals>.<lambda>ï  s?   € ´·±¸1³×1AÑ1AÄ%Ç)Á)ÈAÃ,×BRÑBRÐSTÐVZÓB[×BbÑBbÐceÐgiÓBjÓ1k€ rG   rÍ   r   rV   c                 ó�   — t        j                  |«      j                  t        j                  |«      j                  dd«      «      S )Nr   T©rb   r.  r8  rë   rÒ   s      rE   rÌ   z0module_inputs_torch_nn_Softmax.<locals>.<lambda>ò  s0   € ´·±¸1³×1AÑ1AÄ%Ç)Á)ÈAÃ,×BRÑBRÐSTÐVZÓB[Ó1\€ rG   rí  rj  rÆ   ©rÃ   rÕ   rÖ   rt  ru  s          rE   Úmodule_inputs_torch_nn_Softmaxr<  é  s†   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&6Ü"/±
¸8Ó0DÓ"EÙ!kô	mô 	¤m°AÓ&6Ü"/±
¸2³Ó"?Ù!\Ø!ô	#ô 	¤m°BÓ&7Ü"/±
¸6Ó0BÓ"CÜ!:Ø'ô	)ð*ð *rG   c           	      óÈ   — t        t        |||¬«      }t        t        «       t         |d«      «      d„ ¬«      t        t        «       t         |d«      «      t        d¬«      gS )Nr¾   ©rI   rÔ   rÀ   r5  c                 ó�   — t        j                  |«      j                  t        j                  |«      j                  dd«      «      S ©NrI   Fr:  rÒ   s      rE   rÌ   z2module_inputs_torch_nn_Softmax2d.<locals>.<lambda>   s0   € ´·±¸1³×1AÑ1AÄ%Ç)Á)ÈAÃ,×BRÑBRÐSTÐV[ÓB\Ó1]€ rG   rÍ   r¢  rÖ   rj  rt  ru  s          rE   Ú module_inputs_torch_nn_Softmax2drA  ú  s]   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸>Ó0JÓ"KÙ!]ô	_ô 	¤m£oÜ"/±
¸9Ó0EÓ"FÜ!:Ø'ô	)ð	*ð *rG   c                 óh  — t        t        |||¬«      }t        t        d«      t         |d«      «      d„ ¬«      t        t        d«      t         |d«      «      d„ d¬	«      t        t        d
«      t         |d«      «      d„ d¬	«      t        t        d«      t         |d«      «      t        d¬	«      gS )Nr¾   rI   r4  c                 óÌ   — t        j                  |«      j                  t        j                  |«      j                  dd«      j	                  dd«      «      j                  «       S r7  )rb   r.  Údiv_rë   rÊ   Úlog_rÒ   s      rE   rÌ   z3module_inputs_torch_nn_LogSoftmax.<locals>.<lambda>  sH   € ´·±¸1³×1BÑ1BÄ5Ç9Á9ÈQÃ<×CSÑCSÐTUÐW[ÓC\×CcÑCcÐdfÐhjÓCkÓ1l×1qÑ1qÓ1s€ rG   rÍ   r>  c                 ó¬   — t        j                  |«      j                  t        j                  |«      j                  dd«      «      j	                  «       S r@  ©rb   r.  rD  rë   rE  rÒ   s      rE   rÌ   z3module_inputs_torch_nn_LogSoftmax.<locals>.<lambda>  ó9   € ´·±¸1³×1BÑ1BÄ5Ç9Á9ÈQÃ<×CSÑCSÐTUÐW\ÓC]Ó1^×1cÑ1cÓ1e€ rG   Ú
multiparamrj  r   rV   c                 ó¬   — t        j                  |«      j                  t        j                  |«      j                  dd«      «      j	                  «       S )Nr   FrG  rÒ   s      rE   rÌ   z3module_inputs_torch_nn_LogSoftmax.<locals>.<lambda>  rH  rG   Úmultiparam_scalarrÆ   r;  rÖ   rt  ru  s          rE   Ú!module_inputs_torch_nn_LogSoftmaxrL    sª   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&6Ü"/±
¸8Ó0DÓ"EÙ!sô	uô 	¤m°AÓ&6Ü"/±
¸>Ó0JÓ"KÙ!eØ%ô	'ô 	¤m°AÓ&6Ü"/±
¸2³Ó"?Ù!eØ,ô	.ô 	¤m°BÓ&7Ü"/±
¸6Ó0BÓ"CÜ!:Ø'ô	)ð*ð *rG   c                 ó\  — t        t        |||¬«      }t        t        d«      t         |d«      «      ¬«      t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d	«      «      d
¬«      t        t        d«      t         |d«      «      t        d¬«      gS )Nr¾   rI   r4  ro  )rã   rÔ   rÕ   rÀ   Úmultidimrr  r   rV   rí  rÆ   )rÔ   rÃ   rÀ   rÖ   rj  rt  ru  s          rE   Úmodule_inputs_torch_nn_SoftminrO    sŸ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°AÓ&6Ü"/±
¸8Ó0DÓ"Eô	Gä¤m°AÓ&6Ü"/±
¸=Ó0IÓ"JØ#ô	%ô 	¤m°AÓ&6Ü"/±
¸2³Ó"?Ø!ô	#ô 	¤m°BÓ&7Ü"/±
¸:Ó0FÓ"GÜ!:Ø'ô	)ð*ð *rG   c                 ó¶  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ ¬«      t        t        d«      t         |d«      «      d„ d¬«      t        t        dd	«      t         |d«      «      d
„ d¬«      t        t        dd	«      t         |d«      «      d„ d¬«      t        t        «       t         |d«      «      t        d¬«      gS )Nr¾   r4  c                 óR   — t        j                  t        j                  |«      «      S r<   ©rb   Úlog1pr.  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softplus.<locals>.<lambda>4  s   € ´·±¼U¿Y¹YÀq»\Ó1J€ rG   rÍ   rã   c                 ó^   — dt        j                  t        j                  d|z  «      «      z  S )Nr,  rã   rR  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softplus.<locals>.<lambda>7  s$   € °¼5¿;¹;ÄuÇyÁyÐQRÐUVÑQVÓGWÓ;XÑ1X€ rG   Úbetarj  éœÿÿÿc                 óÊ   — |dz  dkD  j                  |«      |z  |dz  dk  j                  |«      dz  dz  t        j                  t        j                  d|z  «      «      z  z   S ©Nrã   rV  rþ  r-  ©Útype_asrb   rS  r.  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softplus.<locals>.<lambda><  ób   € ¨!¨a©%°4©×(@Ñ(@ÀÓ(CÀaÑ(GØ ™E d™?×3Ñ3°AÓ6¸Ñ;¸bÑ@Ä5Ç;Á;ÌuÏyÉyÐYZÐ]^ÑY^ÓO_ÓC`Ñ`ñ)a€ rG   Úbeta_thresholdrV   c                 óÊ   — |dz  dkD  j                  |«      |z  |dz  dk  j                  |«      dz  dz  t        j                  t        j                  d|z  «      «      z  z   S rX  rY  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softplus.<locals>.<lambda>B  r[  rG   Úbeta_threshold_scalarrÃ   rÖ   rt  ru  s          rE   Úmodule_inputs_torch_nn_Softplusr_  .  sÑ   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸8Ó0DÓ"EÙ!Jô	Lô 	¤m°AÓ&6Ü"/±
¸8Ó0DÓ"EÙ!XØô	!ô 	¤m°A°tÓ&<Ü"/±
¸8Ó0DÓ"Eñaà)ô	+ô 	¤m°A°tÓ&<Ü"/±
¸2³Ó"?ñaà0ô	2ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ð)*ð *rG   c                 óX  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      d¬«      t        t        «       t         |d	«      «      t        d
¬«      gS )Nr¾   ré  ro  rI   Úlambdarr  rV   Úlambda_scalarrÃ   rÖ   rj  rt  ru  s          rE   Ú!module_inputs_torch_nn_Softshrinkrc  K  s˜   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÓ"Fô	Hä¤m°AÓ&7Ü"/±
¸9Ó0EÓ"FØ!ô	#ô 	¤m°AÓ&7Ü"/±
¸2³Ó"?Ø(ô	*ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ð*ð *rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ ¬«      t        t        «       t         |d«      «      d„ d¬«      t        t        «       t         |d	«      «      t        d
¬«      gS )Nr¾   ré  c                 óP   — |j                  dt        j                  |«      z   «      S ©NrI   ©r8  rb   r  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softsign.<locals>.<lambda>c  ó   € °·±°q¼5¿9¹9ÀQ»<Ñ7GÓ1H€ rG   rÍ   rV   c                 óP   — |j                  dt        j                  |«      z   «      S rf  rg  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Softsign.<locals>.<lambda>f  rh  rG   rí  rj  rÃ   rÖ   rt  ru  s          rE   Úmodule_inputs_torch_nn_Softsignrj  ]  s|   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÓ"FÙ!Hô	Jô 	¤m£oÜ"/±
¸2³Ó"?Ù!HØ!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ð*ð *rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬	«      gS ©
Nr¾   r6  ro  rV   rí  rr  rÃ   rÖ   rj  rt  ru  s          rE   Úmodule_inputs_torch_nn_Tanhrm  n  ót   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸<Ó0HÓ"Iô	Kä¤m£oÜ"/±
¸2³Ó"?Ø!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ð	*ð 	*rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      ¬«      t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬	«      gS rl  rt  ru  s          rE   Ú!module_inputs_torch_nn_Tanhshrinkrp  ~  rn  rG   c                 óf  — t        t        |||¬«      }t        t        dd«      t         |d«      «      d¬«      t        t        dd«      t         |d«      «      d¬«      t        t        dd«      t         |d	«      «      d
¬«      t        t        dd«      t         |d«      «      t        d¬«      gS )Nr¾   r-  rþ  r6  Úthreshold_valuerr  g      $@Úlarge_valuerV   Úthreshold_value_scalarrÃ   rÖ   rj  rt  ru  s          rE   Ú module_inputs_torch_nn_Thresholdru  �  sª   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m°B¸Ó&;Ü"/±
¸<Ó0HÓ"IØ*ô	,ô 	¤m°B¸Ó&<Ü"/±
¸<Ó0HÓ"IØ&ô	(ô 	¤m°B¸Ó&;Ü"/±
¸2³Ó"?Ø1ô	3ô 	¤m°B¸Ó&;Ü"/±
¸1³Ó">Ü!:Ø'ô	)ð*ð *rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ ¬«      t        t        «       t         |d«      «      d„ d¬«      t        t        «       t         |d	«      «      t        d
¬«      gS )Nr¾   rù  c                 óX   — |t        j                  t        j                  |«      «      z  S r<   ©rb   ÚtanhÚFÚsoftplusrÒ   s      rE   rÌ   z-module_inputs_torch_nn_Mish.<locals>.<lambda>¦  ó   € °´U·Z±ZÄÇ
Á
È1ÃÓ5NÑ1N€ rG   rÍ   rV   c                 óX   — |t        j                  t        j                  |«      «      z  S r<   rx  rÒ   s      rE   rÌ   z-module_inputs_torch_nn_Mish.<locals>.<lambda>©  r|  rG   rí  rj  rÃ   rÖ   rt  ru  s          rE   Úmodule_inputs_torch_nn_Mishr~     s|   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÓ"FÙ!Nô	Pô 	¤m£oÜ"/±
¸2³Ó"?Ù!NØ!ô	#ô 	¤m£oÜ"/±
¸1³Ó">Ü!:Ø'ô	)ð*ð *rG   c           
      óö   — t        t        |||¬«      }t        t        «       t         |d«       |d«      «      d„ ¬«      t        t        «       t         |d«       |d«      «      d„ d¬«      gt	        |«      z   S )	Nr¾   r  c           	      óf   — d|j                  «       z  t        d„ t        ||d¬«      D «       «      z  S )Nrþ  c              3   ód   K  — | ](  \  }}||z
  j                  «       j                  «       –— Œ* y ­wr<   )r  rë   )rÏ  ÚaÚbs      rE   rÐ  zBmodule_inputs_torch_nn_L1Loss.<locals>.<lambda>.<locals>.<genexpr>¸  s6   è ø€ ò ImÙMQÈQÐPQð KLÈaÉ%ÏÉË×IZÑIZ×I\ñ Imùs   ‚.0T)Ústrict)r2  rë   Úzip©r‰   rË   rÓ   rÈ   s       rE   rÌ   z/module_inputs_torch_nn_L1Loss.<locals>.<lambda>¸  s<   € °B¸¿¹»±NÄSñ ImÜUXÐYZÐ\]ÐfjÔUkôImó Fmñ 5m€ rG   rÍ   rV   c                 ól   — d|j                  «       z  ||z
  j                  «       j                  «       z  S )Nrþ  )r2  r  rë   r†  s       rE   rÌ   z/module_inputs_torch_nn_L1Loss.<locals>.<lambda>¼  s(   € °B¸¿¹»±NÀaÈ!ÁeÇ[Á[Ã]×EVÑEVÓEXÑ4X€ rG   rí  rj  )r   r
   r€   r{   rk  ru  s          rE   Úmodule_inputs_torch_nn_L1Lossrˆ  ±  s‚   € Üœ¨V¸5ÐP]Ô^€Jô 	¤m£oÜ"/±
¸9Ó0EÙ0:¸9Ó0Eó#Gñ"mô	nô
 	¤m£oÜ"/±
¸2³Á
È2ÃÓ"OÙ!XØ!ô	#ð	$ô 'KÈ:Ó&Vñ	Wð 	WrG   c                 óp  — t        t        |||¬«      }di fdddifdddifddd	ifg}g }|D ]‡  \  }	}
|
fd
„}|j                  t        t	        di |
¤Žt	         |d«       |d«      «      |	|¬«      «       |j                  t        t	        di |
¤Žt	         |d«       |d«      «      d|	› �|¬«      «       Œ‰ |S )Nr¾   r3   ré   rê   rë   r  r  rî   rï   c                 ó   — t        ||fi |¤ŽS r<   )r$   rò   s        rE   r…   z9module_inputs_torch_nn_SmoothL1Loss.<locals>.reference_fnÍ  s   € Ü)¨!¨QÑEÐ2DÑEÐErG   ©rÕ   rÀ   r�   rV   rö   rB  ©rL   r¯   rS   r¿   rT   rX   rÙ   rù   rÚ   r„   ró   r…   s               rE   Ú#module_inputs_torch_nn_SmoothL1Lossr�  À  sþ   € Üœ¨V¸5ÐP]Ô^€Jð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1ð	%€Eð €MØ$)ò 
Ñ ˆÐ Ø8Jó 	Fð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÙ4>¸wÓ4Gó'Ià!Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸r³NÙ4>¸r³Nó'Dà& t fÐ-Ø%1ô	3õ	
ð
ð& ÐrG   c                 óŠ  — t        t        |||¬«      }t        t        ||d¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdd |d«      ifg}	dd„}
g }|	D ]m  \  }}|j                  t        t	        di |¤Žt	         |ddd¬«       |d«      j                  d«      j                  |«      «      |t        |
fi |¤Ž¬«      «       Œo  |d«      }|j                  t        t	        |¬«      t	         |ddd¬«       |d«      j                  d«      j                  |«      «      dt        |
|¬«      ¬«      «       |S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   r  r  ©rÀ   c                 óæ   — ||j                  «       z  d|z
  d|z
  j                  «       z  z    }|�||z  }|dk(  r|S |dk(  r!|j                  «       |j                  «       z  S |j                  «       S )NrI   rï   r  )r÷   rë   r2  ©r‰   rË   rÓ   rÈ   rê   r  r°   s          rE   Úbce_loss_reference_fnz=module_inputs_torch_nn_BCELoss.<locals>.bce_loss_reference_fnð  ss   € Ø�q—u‘u“w‘; ! a¡%¨A°©E¯;©;«=Ñ!8Ñ8Ð9ˆàÐØ˜f‘_ˆFà˜ÒØˆMØ˜&Ò Ø—:‘:“< !§'¡'£)Ñ+Ð+à—:‘:“<ÐrG   rá  ç{®Gáz„?ç®Gáz®ï?r$  r   r�   rV   ©r  Úscalar_weight©r  N©r   r
   rJ   r€   r{   ÚgtÚto)rL   r¯   rS   r¿   rT   rX   rÙ   r  r  rù   r’  rÚ   r„   ró   r–  s                  rE   Úmodule_inputs_torch_nn_BCELossr›  ã  sw  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€KÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�X™{¨5Ó1Ð2Ð3ð%€Eó ð €MØ$)ò 
Ñ ˆÐ Ø×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸xÈTÐX`Ô4aÙ4?ÀÓ4I×4LÑ4LÈQÓ4O×4RÑ4RÐSXÓ4Yó'[à!Ü%,Ð-BÑ%YÐFXÑ%Yô	[õ	
ð
ñ   “O€MØ×ÑÜ¤m¸=Ô&IÜ"/±
¸2À4ÈhÔ0WÙ0;¸B³×0BÑ0BÀ1Ó0E×0HÑ0HÈÓ0Oó#Qà(Ü!(Ð)>À}Ô!Uô		Wôð ÐrG   c                 ó¼  — t        t        |||¬«      }t        t        ||d¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdd |d«      ifdd |d«      ifg}	dd„}
g }|	D ]m  \  }}|j                  t        t	        di |¤Žt	         |ddd¬«       |d«      j                  d«      j                  |«      «      |t        |
fi |¤Ž¬«      «       Œo |S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   r  r  r�  Úscalar_weightsrV   c                 ó�  — | j                  d¬«      }d|z
  j                  |«      j                  |«      j                  | j                  «       j                  | |z
  j                  «       «      j	                  «       «      }|�||z  }|dk(  r|S |dk(  r!|j                  «       |j                  «       z  S |j                  «       S )Nr   r  rI   rï   r  )r  Úmul_Úadd_Úexp_rE  rë   r2  )r‰   rË   rÓ   rÈ   rê   r  Úmax_valr°   s           rE   Úbce_withlogitsloss_reference_fnzQmodule_inputs_torch_nn_BCEWithLogitsLoss.<locals>.bce_withlogitsloss_reference_fn!  s¯   € à�2—*‘* �*Ó#ˆØ�a‘%—‘˜a“×%Ñ% gÓ.×3Ñ3°g°X·O±OÓ4E×4JÑ4JÈQÈBÐQXÉL×K^ÑK^ÓK`Ó4a×4fÑ4fÓ4hÓiˆàÐØ˜f‘_ˆFà˜ÒØˆMØ˜&Ò Ø—:‘:“< !§'¡'£)Ñ+Ð+à—:‘:“<ÐrG   rá  r“  r”  r$  r   r�   r—  r˜  )rL   r¯   rS   r¿   rT   rX   rÙ   r  r  rù   r£  rÚ   r„   ró   s                 rE   Ú(module_inputs_torch_nn_BCEWithLogitsLossr¤    s   € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€KÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�X™{¨5Ó1Ð2Ð3Ø	˜H¡k°"£oÐ6Ð7ð%€Eó ð €MØ$)ò 
Ñ ˆÐ Ø×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸xÈTÐX`Ô4aÙ4?ÀÓ4I×4LÑ4LÈQÓ4O×4RÑ4RÐSXÓ4Yó'[à!Ü%,Ð-LÑ%cÐPbÑ%cô	eõ	
ð
ð ÐrG   c                 óÜ  — t        t        |||¬«      }t        t        |t        j                  d¬«      }t        t        ||d¬«      }g d¢}	di fdd |d«      ifddd	ifd
d
difdd	ddœfg}
g }t	        |	|
«      D �]î  \  }\  }}||fd„}|j                  t        t        d)d|i|¤Žt         |d«       |ddd¬«      «      d|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d«       |ddd¬«      «      d|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d«       |ddd¬«      «      d|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d«       |ddd¬«      «      d |› d|› �|¬«      «       |j                  dd «      ��ŒD|j                  t        t        d)d|i|¤Žt         |d!«       |d!«      j                  d	¬"«      «      d#|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d$«       |d$«      j                  d	¬"«      «      d%|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d&«       |d&«      j                  d	¬"«      «      d'|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d«       |d«      j                  d	¬"«      «      d(|› d|› �|¬«      «       |j                  t        t        d)d|i|¤Žt         |d«       |d)dd¬«      «      d*|› d|› �t        t        d+¬,«      ¬«      «       �Œñ |S )-Nr¾   F)r  rë   rï   r3   r  r  rî  r  rI   Úlabel_smoothingg333333Ã?Úignore_index_label_smoothing)r  r¦  c                 ó    — t        ||fd|i|¤ŽS )Nrê   )r   )r‰   rË   rÓ   rÈ   rê   ró   s         rE   r…   z=module_inputs_torch_nn_CrossEntropyLoss.<locals>.reference_fnM  s   € Ü/°°1Ñ`À	Ð`ÐM_Ñ`Ð`rG   rê   )rã   rÔ   rÕ   rÕ   )rã   rÕ   rÕ   r   rÔ   r$  Ú4d_rP   r�   ©rã   rÔ   rÕ   )rã   rÕ   r  ©rã   rÔ   rã   Ú2d_)rã   rÔ   rÕ   rÕ   rã   rã   )rã   rÕ   rÕ   rã   rã   r  )rÕ   rÔ   rÃ   rã   r   Ú4d_prob_target_)rÕ   rÔ   rÃ   Ú3d_prob_target_)rÕ   rÔ   Ú2d_prob_target_Úhigher_dim_prob_target_rV   ri  Trh  )r   r
   rb   r  r   rJ   r€   r{   rø   Úsoftmaxr  )rL   r¯   rS   r¿   rT   rX   rÙ   r  r  Ú
reductionsrù   rÚ   rê   r„   ró   r…   s                   rE   Ú'module_inputs_torch_nn_CrossEntropyLossr³  =  s(  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¼E¿J¹JÐV[Ô\€KÜœ+¨f¸EÐQVÔW€Kâ3€Jà	ˆRˆØ	�X™{¨4Ó0Ð1Ð2Ø	˜.¨!Ð,Ð-Ø	Ð.°Ð5Ð6Ø	'¸!ÐPTÑ)UÐVð%€Eð €MÜ18¸ÀUÓ1Kó DÑ-ˆ	Ñ-�DÐ,Ø/8ÐM_ó 	að 	×ÑÜ¬-Ñ*bÀ)Ð*bÐOaÑ*bÜ&3±J¸|Ó4LÙ4?À	ÈqÐWXÔ4Yó'[à" 4 &¨¨)¨Ð5Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*bÀ)Ð*bÐOaÑ*bÜ&3±J¸yÓ4IÙ4?ÀÈAÐTUÔ4Vó'Xà" 4 &¨¨)¨Ð5Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*bÀ)Ð*bÐOaÑ*bÜ&3±J¸vÓ4FÙ4?ÀÈÐQRÔ4Só'Uà" 4 &¨¨)¨Ð5Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*bÀ)Ð*bÐOaÑ*bÜ&3±JÐ?QÓ4RÙ4?ÀÐUVÐ]^Ô4_ó'aà*¨4¨&°°)°Ð=Ø%1ô	3ô	
ð ×!Ñ! .°$Ó7Ò?Ø× Ñ Ü¬mÑ.fÀiÐ.fÐSeÑ.fÜ*7¹
À<Ó8PÙ8BÀ<Ó8P×8XÑ8XÐ]^Ð8XÓ8_ó+aà#2°4°&¸¸)¸Ð!EØ)5ô	7ôð × Ñ Ü¬mÑ.fÀiÐ.fÐSeÑ.fÜ*7¹
À9Ó8MÙ8BÀ9Ó8M×8UÑ8UÐZ[Ð8UÓ8\ó+^à#2°4°&¸¸)¸Ð!EØ)5ô	7ôð × Ñ Ü¬mÑ.fÀiÐ.fÐSeÑ.fÜ*7¹
À6Ó8JÙ8BÀ6Ó8J×8RÑ8RÐWXÐ8RÓ8Yó+[à#2°4°&¸¸)¸Ð!EØ)5ô	7ôð × Ñ Ü¬mÑ.fÀiÐ.fÐSeÑ.fÜ*7¹
ÐCUÓ8VÙ8BÐCUÓ8V×8^Ñ8^ÐcdÐ8^Ó8eó+gà#:¸4¸&ÀÀ)ÀÐ!MØ)5ô	7ôð × Ñ Ü¬mÑ.fÀiÐ.fÐSeÑ.fÜ*7¹
À4Ó8HÙ8CÀBÈAÐTUÔ8Vó+Xà#0°°°a¸	°{Ð!CÜ)0Ô1JÐY]Ô)^ô	`öð}DðL ÐrG   c                 óÜ  — t        t        |||¬«      }t        t        ||d¬«      }t        t        t	        «       t	         |d«      t        j                  d|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      t        t        t	        «       t	         |d«       |d«      «      ¬«      t        j                  t        d	¬«      t        t        t	        «       t	         |d«      t        j                  g d
¢|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      t        t        t	         |d«      ¬«      t	         |d«      t        j                  ddg|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      t        t        t	        d¬«      t	         |d«       |d«      j                  d¬«      j                  «       «      ¬«      t        j                  t        d¬«      t        t        t	        d¬«      t	         |d«      t        j                  ddg|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      t        t        t	        «       t	         |d«      t        j                  d|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      gS )Nr¾   Fr«  ©r¯   rS   ro  ú@Expected floating point type for target with class probabilitiesrÃ  rp  z(expected target dtype to be Long or Byte©r   rI   rã   z7Expected input batch_size .* to match target batch_sizer•  r   rI   zGweight tensor should be defined either for all .* classes or no classes)r  r   z7ignore_index is not supported for floating point targetç      ø?)r¦  z+label_smoothing must be between 0.0 and 1.0rª  )rã   rÃ   zExpected target size)r   r
   r�   r€   r{   rb   Úzerosr  rŒ   rŽ   r\   ÚtensorrÆ  r±  Údetach)rL   r¯   rS   r¿   rT   rX   rÙ   r  s           rE   Ú-module_error_inputs_torch_nn_CrossEntropyLossr¼  •  sZ  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kô 	ÜÜ"/£/Ü+Ù˜vÓ&Ü—K‘K ¨v¼U¿Z¹ZÔHóôô %×2Ñ2Ü#ØZô	
ô 	ÜÜ"/£/Ü+Ù˜vÓ&Ù˜tÓ$óôô %×2Ñ2Ü#ØBô	
ô 	ÜÜ"/£/Ü+Ù˜vÓ&Ü—L‘L¢°6ÄÇÁÔLóôô %×2Ñ2Ü!ØQô	
ô 	ÜÜ"/±{À4Ó7HÔ"IÜ+Ù˜vÓ&Ü—L‘L ! Q °¼e¿j¹jÔIóôô %×2Ñ2Ü#Øaô	
ô 	ÜÜ"/¸QÔ"?Ü+Ù˜vÓ&Ù˜vÓ&×.Ñ.°1Ð.Ó5×<Ñ<Ó>óôô %×2Ñ2Ü#ØQô	
ô 	ÜÜ"/ÀÔ"DÜ+Ù˜vÓ&Ü—L‘L ! Q °¼e¿j¹jÔIóôô %×2Ñ2Ü#ØEô	
ô 	ÜÜ"/£/Ü+Ù˜yÓ)Ü—K‘K ¨v¼U¿Z¹ZÔHóôô %×2Ñ2Ü#Ø.ô	
ða\ð \rG   c           
      ó"  ‡‡‡‡‡‡‡‡— |j                  dd«      Š|j                  d«      Šˆˆˆfd„Šd„ }ˆfd„Šˆfd„Šˆˆˆˆˆˆfd„}g } |«       D ]9  \  }	}
\  }}|j                  t        t        |	i |
¤Žt        ||«      |¬	«      «       Œ; |S )
NÚallow_retain_graphTÚ	acc_dtypec                 ó@   •— t        j                  g | ¢|‘­‰‰‰¬«      S )Nr¾   )rb   Úrandn)Ú
batch_dimsÚin_featuresr¯   rS   r¿   s     €€€rE   rÙ   zAmodule_inputs_torch_nn_LinearCrossEntropyLoss.<locals>.make_input  s$   ø€ Ü�{‰{Ð5˜ZÐ5¨Ñ5¸fÈEÐanÔoÐorG   c           
      ó^  —  |d   j                   | j                  g| j                  ¢|j                  d   ‘­Ž }t	        |«      dkD  r* |d   j                   | j                  g| j                  ¢­Ž nd }t        ||||| j                  | j                  | j                  | j                  ¬«      S )Nr   rÆ   rI   )Úlinear_biasr  rê   r  r¦  )
ÚreshapeÚnum_classesÚout_featuresrß   ra   r   r  rê   r  r¦  )r‰   rË   rÓ   rÈ   Úlinear_weightrÅ  s         rE   r…   zCmodule_inputs_torch_nn_LinearCrossEntropyLoss.<locals>.reference_fn  s˜   € à$˜˜!™Ÿ™ Q§]¡]ÐQ°Q·^±^ÐQÀQÇWÁWÈRÁ[ÒQˆä<?À»FÀQºJˆLˆAˆa‰D�L‰L˜Ÿ™Ð8¨¯©Ó8ÈDð 	ô 3Øˆ}˜aØ#Ø—8‘8Ø—k‘k°·±ÐPQ×PaÑPaô	cð 	crG   c                 ót   •— |j                   rt        |dd‰|d¬«      S t        j                  d| |‰|d¬«      S )Nr   rI   F)r%  r&  r¯   rS   r¿   r¾   )Úis_floating_pointr
   rb   Úrandint)rÇ  rß   Útarget_dtyper¯   s      €rE   r  zBmodule_inputs_torch_nn_LinearCrossEntropyLoss.<locals>.make_target  sE   ø€ Ø×)Ò)Ü˜u¨!°!¸FÈ,ÐfkÔlÐlä—=‘=ØØØØØ"Ø#ôð rG   c               3   óÞ   •K  — dD ]c  } | d f–— | \  }}}‰�| t        ‰d¬«      f–— Œ#| t        «       f–— |€Œ4| t        d¬«      f–— | t        d¬«      f–— | t        d¬«      f–— Œe y ­w)	N©)rÁ   rÕ   rÃ   )NrÁ   rÃ   Úaspect_ratio)r¿  Úchunking_methodrã   )Úbatch_chunk_sizezaspect_ratio:2)rÑ  zaspect_ratio:4)rM  )ÚsizesÚnum_batchesrÃ  rÇ  r¿  s       €rE   Úsizes_and_optionszHmodule_inputs_torch_nn_LinearCrossEntropyLoss.<locals>.sizes_and_options  s“   øè ø€ Ø.ò 	DˆEØ˜�+ÒØ49Ñ1ˆK˜ kØÐ$ØœT¨IÀ~ÔVÐVÒVØð œ›�-ÒàÑ&ð œT°1Ô5Ð5Ò5ð œTÐ2BÔCÐCÒCØœTÐ2BÔCÐCÓCñ#	Dùs
   ƒ6A-º3A-c               3   óz  •K  —  ‰«       D �]ü  \  \  } }}}| €d}n| f}d t        j                  t        j                  |‰‰d¬«      «      g}t        g d¢d d|dz
  dz  |dz   gd	d
g|ddg«      D �]–  \  }}}}	}
| €|
rŒ|�|dk(  rŒ||f}t	        |
‰‰||	|||�!t        j
                  j                  dd‰i|¤Žnd ¬«      }t         j                  ‰fD �]0  }|j                  rg |¢|‘|
¢­}|�Œ|�Œg |¢|
¢­} ‰||«      } ‰|||«      }|j                  j                  dk7  rN|j                  sB|dk(  r=|�;|dk\  r6||k  r1t        j                  ||k(  «      r|dz   |z  ||j                  rdnd<   ||||ff–— |j                  s<|r:| dkD  r5|�3 ‰||«      } ‰|||«      }||| dz  <   |dk  s||k\  rd|d<   ||||ff–— |j                  rŒþ|dk7  s�Œ|€�Œ	 ‰||«      }t        j                  ||«      }||||ff–— �Œ3 �Œ™ �Œÿ dD ]ª  }|\  } }}| €dn| f}dD ]–  }
| €|
rŒ||f}t	        |
d‰‰dd d d	¬«      }d g}|
s0|j                  t         j
                  j                  ‰d¬«      «       |D ]>  }t	        ||¬«      } ‰||«      } ‰|g |¢|
¢­t         j                  «      }||||ff–— Œ@ Œ˜ Œ¬ y ­w)NrV   Fr¾   )rë   r  rï   rV  rI   rã   rÕ   r™   gš™™™™™¹?©rÔ   rã   rÃ   rë   r¾  )rÈ  r¯   rS   rê   r  r  r¦  ÚoptionsÚmetar  r   rÏ  )rV   r×  T)rÈ  rÏ   r¯   rS   rê   r  r  r¦  )r¾  rÒ  )rØ  )rb   r.  rÁ  r   rM  r¦   ÚLinearCrossEntropyOptionsÚint64rË  r¯   rO  Úallrß   Ú	full_likerJ   )rÔ  rÃ  rÇ  rØ  rÂ  r  rê   ÚiiÚlsÚwÚofÚmodule_argsÚmodule_kwargsrÍ  Útarget_shaperÄ   rú   rÓ  Úbase_module_kwargsÚoptions_variantsr¾  r¯   rS   rÙ   r  rÕ  s                       €€€€€€rE   Úsamplesz>module_inputs_torch_nn_LinearCrossEntropyLoss.<locals>.samples1  sÐ  øè ø€ Ù@QÓ@Só M	JÑ<Ñ3ˆ[˜+ {°WØÐ"Ø‘
à)˜^�
ØœUŸY™Y¤u§{¡{°;ÀvÐUZÐjoÔ'pÓqÐrˆGô -4Ú+Ø˜4 +°¡/°aÑ!7¸Àq¹ÐIØ˜#�JØØ˜�Oó-%ó EJÑ(�	˜2˜r 1 bð Ð&©2àØ�> i°5Ò&8àØ*¨KÐ8�Ü $Ø!#Ø!ØØ'ØØ!#Ø$&Øt{ð  uHœEŸH™H×>Ñ>ÑpÐRdÐpÐhoÒpð  NRô	!�ô &+§[¡[°%Ð$8ó .J�LØ#×5Ò5Ø'F¨Ð'F°[Ð'FÀ2Ñ'F˜Ø˜>à$Ø"Ð.à$à'9¨Ð'9°bÑ'9˜Ù& z°;Ó?�EÙ(¨°lÀLÓQ�Fà"ŸM™M×.Ñ.°&Ò8Ø$0×$BÒ$BÀyÐTZÒGZØ " °2¸²7¸rÀKÒ?OÔTY×T]ÑT]Ð^dÐhjÑ^jÔTkð >@À!¹VÀ{Ñ<R˜ F§L¢L™q°bÑ9à% }°u¸f°oÐEÒEð !-× >Ò >Ù ,Ø +¨a¢Ø " ñ !+¨:°{Ó C˜Ù!,¨[¸,ÈÓ!U˜Ø35˜˜{¨aÑ/Ñ0Ø š6 R¨;Ò%6ð )*˜F 1™IØ)¨=¸5À&¸/ÐIÒIð !-× >Ó >À9ÐPVÔCVÐ[]Ò[iñ !+¨:°{Ó C˜Ü!&§¡°¸Ó!<˜Ø)¨=¸5À&¸/ÐIÔIò].Jò/EJðM	Jðt /ò (	FˆEØ49Ñ1ˆK˜ kØ*Ð2™¸¸ˆJØ%ò %F�ØÐ&©2ØØ*¨KÐ8�Ü%)Ø!#ØØ!ØØ$ØØ!%Ø$'ô	&Ð"ð* %) 6Ð ÙØ$×+Ñ+ÜŸ™×:Ñ:Ø/AØ-.ð ;ó ôð  0ò F�GÜ$(Ð);ÀWÔ$M�MÙ& z°;Ó?�EÙ(¨Ð6H¸
Ð6HÀRÑ6HÌ%Ï+É+ÓV�FØ% }°u¸f°oÐEÓEñ	FñC%Fñ(	Fùs   ƒGJ;ÇJ;ÇJ;ÇC!J;rÍ   )rø   rJ   r€   r{   )rL   r¯   rS   r¿   rT   Úkwargs_r…   rç  rÚ   râ  rã  rÄ   rú   r¿  r¾  rÙ   r  rÕ  s    ```         @@@@@rE   Ú-module_inputs_torch_nn_LinearCrossEntropyLossré  ø  s¦   ÿ€ ð !Ÿ™Ð%9¸4Ó@ÐØ—‘˜KÓ(€Iöpò
côôD÷(CFñ CFðJ €MÙ7>³yò 
Ñ3ˆ�]¡O U¨FØ×ÑÜÜ"/°Ð"NÀÑ"NÜ+¨E°6Ó:Ø)ô+õ	
ð
ð ÐrG   c                 ó$  — t        t        |||¬«      }t        t        t	        dd||¬«      t	         |d«      t        j                  d|t
        j                  ¬«      «      ¬«      t        j                  t        d¬	«      t        t        t	        dd||¬«      t	         |d«      t        j                  d
||¬«      «      ¬«      t        j                  t        d¬	«      t        t        t	        dd||¬«      t	         |d«      t        j                  d||¬«      «      ¬«      t        j                  t        d¬	«      t        t        t	        ddt        j                  d||¬«      ||¬«      t	         |d«      t        j                  d||¬«      «      ¬«      t        j                  t        d¬	«      t        t        t	        dd||d¬«      t	         |d«      t        j                  d||¬«      «      ¬«      t        j                  t        d¬	«      gS )Nr¾   rÔ   rã   rµ  ©rÃ   rÔ   )rÃ   rã   ro  r¶  rÃ  )rÕ   rã   zDExpected input batch_size [(]4[)] to match target batch_size [(]5[)]r;  zcexpected equal input and linear_weight last dimensions [(]in_features[)], got 5 and 3, respectively)r  r¯   rS   z2expected weight shape to be [(]2,[)], got [(]3,[)]r-  )r¯   rS   r¦  z;expected label_smoothing to be in range [[]0, 1[]], got 2.0)r   r
   r�   r€   r{   rb   r¹  r  rŒ   rŽ   r\   rÆ  Úonesr�   ru  s          rE   Ú3module_error_inputs_torch_nn_LinearCrossEntropyLossrí  Á  sÏ  € Üœ¨V¸5ÐP]Ô^€Jô 	ÜÜ"/°°1¸VÈ5Ô"QÜ+Ù˜vÓ&Ü—K‘K ¨v¼U¿Z¹ZÔHóôô %×2Ñ2Ü#ØZô	
ô 	ÜÜ"/°°1¸VÈ5Ô"QÜ+Ù˜vÓ&Ü—K‘K ¨v¸UÔCóôô %×2Ñ2Ü!Ø^ô	
ô 	ÜÜ"/°°1¸VÈ5Ô"QÜ+Ù˜vÓ&Ü—K‘K ¨v¸UÔCóôô %×2Ñ2Ü#Ø}ô	
ô 	ÜÜ"/°°1¼U¿Z¹ZÈÐRXÐ`eÔ=fØ7=ÀUô#Lä+Ù˜vÓ&Ü—K‘K ¨v¸UÔCóôô %×7Ñ7Ü#ØLô	
ô 	ÜÜ"/°°1¸VÈ5ÐbeÔ"fÜ+Ù˜vÓ&Ü—K‘K ¨v¸UÔCóôô %×7Ñ7Ü#ØUô	
ðg?ð ?rG   c                 óš  — t        t        |||¬«      }t        t        |d¬«      }di fdddifddd	ifd
ddifdddifg}t        j                  t        j                  g}	g }
t        |	|«      D �]Ú  \  }\  }}|fd„}|j                  dd«      }|dk(  rdnd}|dk(  rdnd}|
j                  t        t        di |¤Žt         |d«      j                  d«       |d|||¬«      dd«      |› d�|¬«      «       |
j                  t        t        di |¤Žt         |d«      j                  d«       |d|||¬«      t        j                  d|¬«      t        j                  d|¬«      «      |› d�|¬«      «       |
j                  t        t        di |¤Žt         |d«      j                  d«       |d|||¬«      dd«      |› d�|¬«      «       |
j                  t        t        di |¤Žt         |d«      j                  d«       |d|||¬«      t        j                  d|¬«      t        j                  d|¬«      «      |› d�|¬«      «       �ŒÝ |
S ) Nr¾   F)r¯   r¿   r3   ré   rê   rë   r  r  rî   rï   Úblanké   c                 ó    — t        ||||fi |¤ŽS r<   )r   )r‰   rË   rÓ   rÈ   ÚilÚtlró   s          rE   r…   z4module_inputs_torch_nn_CTCLoss.<locals>.reference_fn  s   € Ü$ Q¨¨2¨rÑHÐ5GÑHÐHrG   r   rI   r
  )é2   rÔ   r
  rã   )rÔ   é   )rS   r%  r&  )rô  rô  rô  )rõ  é   r5  Ú_lengths_intlistsr�   r  Ú_lengths_tensors)éK   Ú_1d_target_lengths_intlistsÚ_1d_target_lengths_tensorsrV   )r   r
   rb   Úintr  r   rø   rJ   r€   r{   r  rº  )rL   r¯   rS   r¿   rT   rX   rÙ   r  rù   Útarget_dtypesrÚ   rÍ  r„   ró   r…   rï  r%  r&  s                     rE   Úmodule_inputs_torch_nn_CTCLossrþ    sŸ  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨fÀEÔJ€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�7˜B�-Ð ð%€Eô —Y‘Y¤§
¡
Ð+€Mà€MÜ4;¸MÈ5Ó4Qó -
Ñ0ˆÑ0�tÐ/Ø@Ró 	Ið #×&Ñ& w°Ó2ˆØ˜B’;‰a AˆØ˜b’[‰r bˆà×ÑÜÜ"/Ñ"EÐ2DÑ"EÜ+©J°{Ó,C×,OÑ,OÐPQÓ,RÙ,7¸À|ÐY\ÐcgÔ,hØ,8¸,óHð �vÐ.Ð/Ø)ô+ô	
ð 	×ÑÜÜ"/Ñ"EÐ2DÑ"EÜ+©J°{Ó,C×,OÑ,OÐPQÓ,RÙ,7¸À|ÐY\ÐcgÔ,hÜ,1¯L©L¸ÈfÔ,UÜ,1¯L©L¸ÈfÔ,UóWð �vÐ-Ð.Ø)ô+ô		
ð 	×ÑÜÜ"/Ñ"EÐ2DÑ"EÜ+©J°{Ó,C×,OÑ,OÐPQÓ,RÙ,7¸È|ÐadÐkoÔ,pØ,8¸,óHð �vÐ8Ð9Ø)ô+ô	
ð 	×ÑÜÜ"/Ñ"EÐ2DÑ"EÜ+©J°{Ó,C×,OÑ,OÐPQÓ,RÙ,7¸È|ÐadÐkoÔ,pÜ,1¯L©L¸ÈfÔ,UÜ,1¯L©L¸ÈfÔ,UóWð �vÐ7Ð8Ø)ô+ö		
ðI-
ð^ ÐrG   c                 óH  — t        t        |||¬«      }t        t        ddd«      t         |d«      «      d¬«      t        t        dddd¬	«      t         |d«      «      d
¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        dddd«      t         |d«      «      d¬«      t        t        dddd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d¬«      t        t        dddd¬	«      t         |d«      «      d¬«      t        t        dddd«      t         |d«      «      d¬«      t        t        dddd«      t         |d«      «      d¬«      g
S )Nr¾   rÔ   rn  r7  )rÃ   rn  rÕ   Ú	1d_affinerr  FrÎ   Ú1d_affine_not_biasrª  )rÃ   rª  Ú1d_affine_GNrI   )é–   rn  Ú1d_affine_large_batchrÕ   ©rÃ   rÕ   rÕ   Ú1d_no_affine_INrÀ   rÂ   Ú1d_no_affine_LN)rÃ   rn  rã   rÔ   Ú	2d_affiner«  )rÃ   r«  rã   rÔ   Ú2d_affine_not_bias)rÃ   rÔ   rã   rÔ   Ú2d_no_affine_INÚ2d_no_affine_LNrØ   ru  s          rE   Ú module_inputs_torch_nn_GroupNormr  E  s¦  € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨q°$Ó7Ü'©
°9Ó(=Ó>Øô	ô 	Ü+¨A¨q°$¸UÔCÜ'©
°9Ó(=Ó>Ø%ô	'ô 	Ü+¨A¨r°4Ó8Ü'©
°7Ó(;Ó<Øô	!ô 	Ü+¨A¨q°$Ó7Ü'©
°8Ó(<Ó=Ø(ô	*ô 	Ü+¨A¨q°$¸Ó>Ü'©
°9Ó(=Ó>Ø"ô	$ô 	Ü+¨A¨r°4¸Ó?Ü'©
°7Ó(;Ó<Ø"ô	$ô 	Ü+¨A¨q°$Ó7Ü'©
°<Ó(@ÓAØô	ô 	Ü+¨A¨q°$¸UÔCÜ'©
°<Ó(@ÓAØ%ô	'ô 	Ü+¨A¨q°$¸Ó>Ü'©
°<Ó(@ÓAØ"ô	$ô 	Ü+¨A¨q°$¸Ó>Ü'©
°<Ó(@ÓAØ"ô	$ðK(&ð (&rG   c           	      óú   — t        t        t        dd«      t        «       ¬«      t        j                  t
        d¬«      t        t        t        dd«      t        «       ¬«      t        j                  t
        d¬«      gS )	zT
    Error inputs for GroupNorm that test error messages include actual values.
    rÔ   rÀ   ro  z9num_channels \(10\) must be divisible by num_groups \(3\)rÃ  rÕ   é   z9num_channels \(13\) must be divisible by num_groups \(5\))r�   r€   r{   rŒ   r�   rÆ  ©rL   r¯   rS   r¿   rT   rX   s         rE   Ú&module_error_inputs_torch_nn_GroupNormr  s  sp   € ô
 	ÜÜ"/°°2Ó"6Ü+›oôô %×7Ñ7Ü!ØTô	
ô 	ÜÜ"/°°2Ó"6Ü+›oôô %×7Ñ7Ü!ØTô	
ðð rG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      ¬«      t        t        d«      t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d	¬
«      gS )Nr¾   r-  )rÃ   rÔ   rã   rÃ   ro  rV   rí  rr  rÃ   rÖ   rj  rt  ru  s          rE   Ú!module_inputs_torch_nn_Hardshrinkr  �  s~   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨BÓ/Ü'©
°<Ó(@ÓAô	
ô 	Ü+¨BÓ/Ü'©
°2«Ó7Øô	
ô
 	Ü+›oÜ'©
°1«Ó6Ü2Øô		
ðð rG   c           	      óÆ   — t        t        |||¬«      }t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d¬«      gS )Nr¾   rÃ   rÖ   rj  rï  rð  rr  rt  ru  s          rE   Ú module_inputs_torch_nn_Hardswishr  £  s]   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+›oÜ'©
°1«Ó6Ü2Øô		
ô 	Ü+›oÜ'©
°<Ó(@ÓAØô	ðð rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ ¬«      t        t        «       t         |d«      «      d„ d¬«      t        t        «       t         |d	«      «      t        d
¬«      gS )Nr¾   ré  c                 ó&   — |j                  dd«      S ©NrÆ   rI   ©r  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Hardtanh.<locals>.<lambda>»  ó   € ¨¯©°°Q«€ rG   rÍ   rV   c                 ó&   — |j                  dd«      S r  r  rÒ   s      rE   rÌ   z1module_inputs_torch_nn_Hardtanh.<locals>.<lambda>À  r  rG   rí  rj  rÃ   rÖ   rt  ru  s          rE   Úmodule_inputs_torch_nn_Hardtanhr  ´  s~   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+›oÜ'©
°9Ó(=Ó>Ù7ô	
ô
 	Ü+›oÜ'©
°2«Ó7Ù7Øô		
ô 	Ü+›oÜ'©
°1«Ó6Ü2Øô		
ðð rG   c                 ó”  — t        t        |||¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdddifg}g }	|D �]   \  }
}|fd„}|	j                  t        t	        di |¤Žt	         |d«       |d«      j                  d«      j                  |«      j                  d«      j                  d«      «      |
|¬«      «       |	j                  t        t	        di |¤Žt	         |d«       |d«      j                  d«      j                  |«      j                  d«      j                  d«      «      d|
› �|¬«      «       �Œ |	S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   rÜ  r,  c                 ó   — t        ||fi |¤ŽS r<   )r   rò   s        rE   r…   z?module_inputs_torch_nn_HingeEmbeddingLoss.<locals>.reference_fnÚ  s   € Ü/°°1ÑKÐ8JÑKÐKrG   r�  r   rã   rI   r�   rV   rö   )	r   r
   rJ   r€   r{   r™  rš  rŸ  Úsub_rä  s                rE   Ú)module_inputs_torch_nn_HingeEmbeddingLossr  Ì  sx  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�H˜c�?Ð#ð%€Eð €MØ$)ó 
Ñ ˆÐ Ø8Jó 	Lð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸uÓ4EÙ4?ÀÓ4F×4IÑ4IÈ!Ó4L×4OÑ4OÐPUÓ4V×4[Ñ4[Ð\]Ó4^×4cÑ4cÐdeÓ4fó'hà!Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸r³NÙ4?À³O×4FÑ4FÀqÓ4I×4LÑ4LÈUÓ4S×4XÑ4XÐYZÓ4[×4`Ñ4`ÐabÓ4có'eà& t fÐ-Ø%1ô	3ö	
ð
ð& ÐrG   c                 óð   — t        t        |||¬«      }di fdddifdddifddd	ifg}g }|D ]G  \  }	}
|
fd
„}|j                  t        t	        di |
¤Žt	         |d«       |d«      «      |	|¬«      «       ŒI |S )Nr¾   r3   ré   rê   rë   r  r  rî   rï   c                 ó   — t        ||fi |¤ŽS r<   )r   rò   s        rE   r…   z6module_inputs_torch_nn_HuberLoss.<locals>.reference_fnû  rô   rG   r‹  r�   rV   rB  rŒ  s               rE   Ú module_inputs_torch_nn_HuberLossr"  ï  s¸   € Üœ¨V¸5ÐP]Ô^€Jð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1ð	%€Eð €MØ$)ò 

Ñ ˆÐ Ø8Jó 	Cð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÙ4>¸wÓ4Gó'Ià!Ø%1ô	3õ	
ð	

ð ÐrG   c                 ó<  — t        t        |||¬«      }|j                  dd«      }|d   }d\  }	}
}}}dddd	œ}||   }d
|z   }t        |rt	        |
|«      nt	        |	|
|«      t	         ||«      «      ¬«      t        |rt	        |
|||«      nt	        |	|
|||«      t	         ||«      «      d¬«      t        |rt	        |
|«      nt	        |	|
|«      t	         ||«      «      t
        d¬«      t        |rt	        |
|||«      nt	        |	|
|||«      t	         ||«      «      t
        d¬«      t        |rt	        |
|d¬«      nt	        |	|
|d¬«      t	         ||«      «      d¬«      t        |rt	        |
|dd¬«      nt	        |	|
|dd¬«      t	         ||«      «      d¬«      gS )Nr¾   r§   FrÊ  )rÔ   r7  r³  FT)rÔ   r
  ry  r„  ©rI   rã   rÔ   rg  ro  Útracking_statsrr  Útracking_stats_no_batch_dimrj  rÖ   T)r°  r°  )r°  rÏ   r¸  )r   r
   rø   r€   r{   r  )rL   r¯   rS   r¿   rT   rX   rÙ   r§   rÊ  Únum_featuresr3  r¼  r°  Útrack_running_statsÚinput_no_batch_shape_dictrÖ  r×  s                    rE   Ú%module_inputs_torch_nn_InstanceNormNdr*  		  sÄ  € Üœ¨V¸5ÐP]Ô^€JØ�:‰:�f˜eÓ$€DØˆs‰€AØ?XÑ<€L�#�x Ð)<Ø$+°	¸lÑ KÐØ4°QÑ7ÐØÐ3Ñ3Ðô 	á04”˜c 8Ô,¼-ÈÐVYÐ[cÓ:dä'©
Ð3DÓ(EÓFô		Hô
 	áMQ”˜c 8¨VÐ5HÔIÜ˜l¨C°¸6ÐCVÓWä'©
Ð3DÓ(EÓFØ!ô	#ô 	á04”˜c 8Ô,¼-ÈÐVYÐ[cÓ:dä'©
Ð3GÓ(HÓIÜ2Ø.ô	0ô 	áMQ”˜c 8¨VÐ5HÔIÜ˜l¨C°¸6ÐCVÓWä'©
Ð3GÓ(HÓIÜ2Øô	!ô 	á=A”˜c 8°DÕ9Ü˜l¨C°À$ÔGä'©
Ð3DÓ(EÓFØô	ô 	áIM”˜c 8°D¸uÕEÜ˜l¨C°À$ÈUÔSä'©
Ð3DÓ(EÓFØ"ô	$ðG)&ð )&rG   c                 ó^  — t        t        |||¬«      }t        t        dgd«      t         |d«      «      d¬«      t        t        dgd«      t         |d«      «      d¬«      t        t        dgdd	«      t         |d«      «      d
¬«      t        t        g d¢d«      t         |d«      «      d¬«      t        t        g d¢dd	«      t         |d«      «      d¬«      t        t        dgd«      t         |d«      «      d¬«      t        t        g d¢ddd	¬«      t         |d«      «      d¬«      gS )Nr¾   rÕ   r7  r  Ú1d_elementwise_affinerr  ©é€   rÕ   rÕ   Ú!1d_elementwise_affine_large_batchFÚ1d_no_elementwise_affine©rã   rã   rÕ   ©rÃ   rã   rã   rÕ   Ú3d_elementwise_affineÚ3d_no_elementwise_affine©r   rÕ   Ú1d_empty_elementwise_affineT)Úelementwise_affinerÏ   Ú3d_elementwise_affine_no_biasrØ   ru  s          rE   Ú module_inputs_torch_nn_LayerNormr9  =	  s+  € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨Q¨C°Ó6Ü'©
°9Ó(=Ó>Ø(ô	*ô 	Ü+¨Q¨C°Ó6Ü'©
°;Ó(?Ó@Ø4ô	6ô 	Ü+¨Q¨C°°uÓ=Ü'©
°9Ó(=Ó>Ø+ô	-ô 	Ü+ªI°tÓ<Ü'©
°<Ó(@ÓAØ(ô	*ô 	Ü+ªI°t¸UÓCÜ'©
°<Ó(@ÓAØ+ô	-ô 	Ü+¨Q¨C°Ó6Ü'©
°6Ó(:Ó;Ø.ô	0ô 	Ü+ªI°tÐPTÐ[`ÔaÜ'©
°<Ó(@ÓAØ0ô	2ð3ð rG   c                 ó  — t        t        |||¬«      }d„ }t        t        dgd«      t         |d«      «      d|¬«      t        t        dgd«      t         |d«      «      d	|¬«      t        t        dgdd
«      t         |d«      «      d|¬«      t        t        g d¢d«      t         |d«      «      d|¬«      t        t        g d¢dd
«      t         |d«      «      d|¬«      t        t        dgd«      t         |d«      «      d|¬«      gS )Nr¾   c                 óê  — | j                   }|€)t        j                  |j                  «      j                   }|j                  }| j
                  }| j                  }t        t        |«      «      D �cg c]
  }||z
  dz
  ‘Œ }}j                  «       }|t        j                  |j                  d«      j                  |d¬«      | j                   z   «      z  }	|�|	|z  }	|	j                  |«      S c c}w )NrI   rã   T)r  Úkeepdim)r3  rb   ÚfinforS   ÚndimÚnormalized_shaper  rÑ  ra   ÚfloatÚrsqrtr?  r  rZ  )
r‰   rË   rÓ   r3  r>  r?  r  ÚdimsÚ
upcasted_ir°   s
             rE   Úrms_norm_reference_fnz=module_inputs_torch_nn_RMSNorm.<locals>.rms_norm_reference_fnb	  sÕ   € Ø�e‰eˆØˆ;Ü—+‘+˜aŸg™gÓ&×*Ñ*ˆCØ�v‰vˆØ×-Ñ-ÐØ—‘ˆÜ&+¬CÐ0@Ó,AÓ&BÖC ��q‘˜1“ÐCˆÐCØ—W‘W“Yˆ
ØœeŸk™k¨*¯.©.¸Ó*;×*@Ñ*@ÀTÐSWÐ*@Ó*XÐ[\×[`Ñ[`Ñ*`ÓaÑaˆØÐØ�fÑˆFØ�~‰~˜aÓ Ð ùò Ds   Á2C0rÕ   r7  r  r,  r�   r-  r/  Fr0  r1  r2  r3  r4  r5  r6  rØ   )rL   r¯   rS   r¿   rT   rX   rÙ   rD  s           rE   Úmodule_inputs_torch_nn_RMSNormrE  _	  s  € Üœ¨V¸5ÐP]Ô^€Jò!ô 	Ü+¨Q¨C°Ó6Ü'©
°9Ó(=Ó>Ø(Ø.ô		0ô
 	Ü+¨Q¨C°Ó6Ü'©
°;Ó(?Ó@Ø4Ø.ô		0ô
 	Ü+¨Q¨C°°uÓ=Ü'©
°9Ó(=Ó>Ø+Ø.ô		0ô
 	Ü+ªI°tÓ<Ü'©
°<Ó(@ÓAØ(Ø.ô		0ô
 	Ü+ªI°t¸UÓCÜ'©
°<Ó(@ÓAØ+Ø.ô		0ô
 	Ü+¨Q¨C°Ó6Ü'©
°6Ó(:Ó;Ø.Ø.ô		0ð5ð rG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        d«      t         |d«      «      d¬«      t        t        d	d
dd«      t         |d«      «      d¬«      gS )Nr¾   rÔ   )rI   rÕ   r¡  r  rr  rã   )rI   rÕ   r¡  r¡  Ú2d_uneven_padrI   rþ  r,  r-  )rI   rÕ   r¡  r¡  r¡  Ú3d_custom_paramsrØ   ru  s          rE   Ú(module_inputs_torch_nn_LocalResponseNormrI  ’	  s‰   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨AÓ/Ü'©
°9Ó(=Ó>Øô	ô 	Ü+¨AÓ/Ü'©
°<Ó(@ÓAØ ô	"ô 	Ü+¨A¨r°3¸Ó;Ü'©
°?Ó(CÓDØ#ô	%ðð rG   c           
      ó  — t        t        |||¬«      }t        t        dd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      ¬«      t        t        ddd«      t         |d	«      «      t        d
¬«      gS )Nr¾   r¸  rã   )rI   rÔ   r¡  Únormrr  rÔ   ro  )rÔ   r¡  rÖ   rj  rt  ru  s          rE   Úmodule_inputs_torch_nn_LPPool1drL  ¥	  sŽ   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨C°Ó3Ü'©
°9Ó(=Ó>Øô	ô 	Ü+¨A¨q°!Ó4Ü'©
°9Ó(=Ó>ô	@ô 	Ü+¨A¨q°!Ó4Ü'©
°6Ó(:Ó;Ü2Øô		!ðð rG   c           
      ó  — t        t        |||¬«      }t        t        ddd«      t         |d«      «      ¬«      t        t        ddd«      t         |d«      «      t        d¬«      t        t        dd«      t         |d«      «      d	¬
«      gS )Nr¾   rã   ©rI   rÔ   r¡  r¡  ro  ©rÔ   r¡  r¡  rÖ   rj  r¸  rK  rr  rt  ru  s          rE   Úmodule_inputs_torch_nn_LPPool2drP  ¹	  sŽ   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨q°!Ó4Ü'©
°<Ó(@ÓAô	Cô 	Ü+¨A¨q°!Ó4Ü'©
°9Ó(=Ó>Ü2Øô		!ô
 	Ü+¨C°Ó3Ü'©
°<Ó(@ÓAØô	ðð rG   c           
      ó  — t        t        |||¬«      }t        t        ddd«      t         |d«      «      ¬«      t        t        ddd«      t         |d«      «      t        d¬«      t        t        dd«      t         |d«      «      d	¬
«      gS )Nr¾   rã   )rI   rÔ   r¡  r¡  r¡  ro  )rÔ   r¡  r¡  r¡  rÖ   rj  r¸  rK  rr  rt  ru  s          rE   Úmodule_inputs_torch_nn_LPPool3drR  Ì	  sŽ   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨q°!Ó4Ü'©
°?Ó(CÓDô	Fô 	Ü+¨A¨q°!Ó4Ü'©
°<Ó(@ÓAÜ2Øô		!ô
 	Ü+¨C°Ó3Ü'©
°?Ó(CÓDØô	ðð rG   c           
      ó  — t        t        |||¬«      }t        t        d«      t         |d«      «      d¬«      t        t        dd«      t         |d«      «      d¬«      t        t        dd¬«      t         |d«      «      d	¬«      gS )
Nr¾   rÃ   )rã   rÀ   rÃ   r±  rr  rq  T©Úreturn_indicesrU  rØ   ru  s          rE   Ú module_inputs_torch_nn_MaxPool1drV  ß	  s‡   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨AÓ.Ü'©
°:Ó(>Ó?Øô	ô 	Ü+¨A¨qÓ1Ü'©
°:Ó(>Ó?Øô	ô 	Ü+¨A¸dÔCÜ'©
°:Ó(>Ó?Ø!ô	#ðð rG   c           
      ó  — t        t        |||¬«      }t        t        ddd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d	¬«      t        t        dddd
¬«      t         |d«      «      d¬«      gS )Nr¾   ©rÔ   rÔ   rx  r{  rO  r±  rr  rN  rð  TrT  rU  rØ   ru  s          rE   Ú module_inputs_torch_nn_MaxPool2drY  ò	  s’   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨F°F¸FÓCÜ'©
°9Ó(=Ó>Øô	ô 	Ü+¨F°F¸FÓCÜ'©
°<Ó(@ÓAØô	ô 	Ü+¨F°F¸FÐSWÔXÜ'©
°<Ó(@ÓAØ!ô	#ðð rG   c                 óÂ  — t        t        |||¬«      }t        t        t	        d«      t	         |d«      «      ¬«      t
        j                  t        d¬«      t        t        t	        d«      t	         |d«      «      ¬«      t
        j                  t        d¬«      t        t        t	        dd	¬
«      t	         |d«      «      ¬«      t
        j                  t        d¬«      gS )zQ
    Error inputs for MaxPool2d that test error messages for invalid inputs.
    r¾   rã   r›  ro  z;non-empty 3D or 4D \(batch mode\) tensor expected for inputrÃ  ©rI   rã   rÔ   rÃ   rÕ   rÔ   rÕ   ©rÌ  )rI   rI   rÀ   rÀ   z3pad should be at most half of effective kernel size)r   r
   r�   r€   r{   rŒ   rŽ   r\   ru  s          rE   Ú&module_error_inputs_torch_nn_MaxPool2dr]  
  sÉ   € ô œ¨V¸5ÐP]Ô^€Jô 	ÜÜ"/°Ó"2Ü+©J°vÓ,>Ó?ôô %×2Ñ2Ü#ØVô	
ô 	ÜÜ"/°Ó"2Ü+©J°Ó,GÓHôô %×2Ñ2Ü#ØVô	
ô 	ÜÜ"/°¸1Ô"=Ü+©J°~Ó,FÓGôô %×2Ñ2Ü#ØNô	
ð-ð rG   c                 ó`  — t        t        |||¬«      }t        t        d«      t         |d«      «      ¬«      t        t        dd«      t         |d«      «      d¬«      t        t        ddd«      t         |d«      «      d	¬«      t        t        dddd
¬«      t         |d«      «      d¬«      gS )Nr¾   rƒ  r†  ro  rã   rq  rr  r‡  Ústride_paddingTrT  rU  rØ   ru  s          rE   Ú module_inputs_torch_nn_MaxPool3dr`  -
  s¯   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨IÓ6Ü'©
°?Ó(CÓDô	Fô 	Ü+¨A¨yÓ9Ü'©
°?Ó(CÓDØô	ô 	Ü+¨A¨q°)Ó<Ü'©
°?Ó(CÓDØ!ô	#ô 	Ü+¨A¨q°)ÈDÔQÜ'©
°?Ó(CÓDØ!ô	#ðð rG   c                 ó  ‡— t        t        ‰||¬«      }ˆfd„}t        t        dd |«       ¬«      t         |d«      «      d¬«      t        t        d	d
 |«       ¬«      t         |d«      «      d¬«      t        t        dd |«       d¬«      t         |d«      «      d¬«      t        t        dd |«       ¬«      t         |d«      «      t        d¬«      t        t        d	d
 |«       ¬«      t         |d«      «      t        d¬«      gS )Nr¾   c                  ól   •— t        j                  dt         j                  ‰ ¬«      j                  «       S )N)rI   rÔ   rã   ©rS   r¯   ©rb   r  Údoubler  r  s   €rE   Úmake_random_sampleszGmodule_inputs_torch_nn_FractionalMaxPool2d.<locals>.make_random_samplesF
  ó#   ø€ Ü�{‰{˜9¬E¯L©LÀÔH×QÑQÓSÐSrG   rã   r,  ©Úoutput_ratioÚ_random_samples)rI   rÔ   rÕ   r¡  Úratiorr  r«  rë  ©Úoutput_sizerj  )rI   rÔ   r¡  rn  ÚsizeT©ri  rj  rU  Úratio_return_indices)rÔ   rÕ   r¡  Úratio_no_batch_dimrj  )rÔ   r¡  rn  Úsize_no_batch_dimrt  ©rL   r¯   rS   r¿   rT   rX   rÙ   rf  s    `      rE   Ú*module_inputs_torch_nn_FractionalMaxPool2drt  C
  s  ø€ Üœ¨V¸5ÐP]Ô^€JôTô 	Ü+¨A¸CÑQdÓQfÔgÜ'©
°<Ó(@ÓAØô	ô 	Ü+¨FÀÑXkÓXmÔnÜ'©
°<Ó(@ÓAØô	ô 	Ü+Ø Ñ5HÓ5JÐ[_ôô (©
°<Ó(@ÓAØ'ô	)ô 	Ü+¨A¸CÑQdÓQfÔgÜ'©
°9Ó(=Ó>Ü2Ø%ô		'ô
 	Ü+¨FÀÑXkÓXmÔnÜ'©
°9Ó(=Ó>Ü2Ø$ô		&ð)ð rG   c                 ój  ‡— t        t        ‰||¬«      }ˆfd„}t        t        dd |«       ¬«      t         |d«      «      d¬«      t        t        d	d
 |«       ¬«      t         |d«      «      d¬«      t        t        dd |«       ¬«      t         |d«      «      d¬«      t        t        dd |«       d¬«      t         |d«      «      d¬«      t        t        dd |«       ¬«      t         |d«      «      t        d¬«      t        t        d	d
 |«       ¬«      t         |d«      «      t        d¬«      gS )Nr¾   c                  ól   •— t        j                  dt         j                  ‰ ¬«      j                  «       S )N©rã   rÃ   rÔ   rc  rd  r  s   €rE   rf  zGmodule_inputs_torch_nn_FractionalMaxPool3d.<locals>.make_random_samplesh
  rg  rG   rã   r,  rh  )rã   rÃ   rÕ   rÕ   rÕ   rk  rr  rƒ  )rÃ   rÃ   rÃ   rl  )rã   rÃ   r¡  r¡  r¡  rn  )rÃ   rã   rÔ   )rÀ   rÔ   rã   )rã   rÃ   é   r¡  rÕ   ÚasymsizeTro  rp  )rÃ   rÕ   rÕ   rÕ   rq  rj  )rÃ   r¡  r¡  r¡  rr  rt  rs  s    `      rE   Ú*module_inputs_torch_nn_FractionalMaxPool3drz  e
  s/  ø€ Üœ¨V¸5ÐP]Ô^€JôTô 	Ü+¨A¸CÑQdÓQfÔgÜ'©
°?Ó(CÓDØô	ô 	Ü+¨IÀ9Ñ^qÓ^sÔtÜ'©
°?Ó(CÓDØô	ô 	Ü+¨IÀ:Ñ_rÓ_tÔuÜ'©
Ð3CÓ(DÓEØô	ô 	Ü+Ø Ñ5HÓ5JÐ[_ôô (©
°?Ó(CÓDØ'ô	)ô 	Ü+¨A¸CÑQdÓQfÔgÜ'©
°<Ó(@ÓAÜ2Ø%ô		'ô
 	Ü+¨IÀ9Ñ^qÓ^sÔtÜ'©
°<Ó(@ÓAÜ2Ø$ô		&ð1ð rG   c                 óV  — t        t        |||¬«      }t        t        «       t         |d«      «      d¬«      t        t        «       t         |d«      «      t        d¬«      t        t        «       t         |d«      «      d	¬«      t        t        «       t         |d
«      «      d¬«      gS r  rt  ru  s          rE   Úmodule_inputs_torch_nn_Sigmoidr|  ‹
  sš   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+›oÜ'©
°2«Ó7Øô	
ô
 	Ü+›oÜ'©
°1«Ó6Ü2Øô		
ô 	Ü+›oÜ'©
°<Ó(@ÓAØ+ô	
ô
 	Ü+›oÜ'©
°?Ó(CÓDØ.ô	
ð#ð rG   c           
      ó  — t        t        |||¬«      }t        t        «       t         |d«      «      d„ d¬«      t        t        «       t         |d«      «      d„ ¬«      t        t        «       t         |d	«      «      t        d
¬«      gS )Nr¾   rV   c                 ó>   — |j                  «       j                  «       S r<   ©r/  r÷   rÒ   s      rE   rÌ   z3module_inputs_torch_nn_LogSigmoid.<locals>.<lambda>®
  ó   € ¨¯©«¯©Ó):€ rG   rí  rj  r  c                 ó>   — |j                  «       j                  «       S r<   r  rÒ   s      rE   rÌ   z3module_inputs_torch_nn_LogSigmoid.<locals>.<lambda>´
  r€  rG   rÍ   rÃ   rÖ   rt  ru  s          rE   Ú!module_inputs_torch_nn_LogSigmoidr‚  §
  s~   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+›oÜ'©
°2«Ó7Ù:Øô		
ô 	Ü+›oÜ'©
°9Ó(=Ó>Ù:ô	
ô
 	Ü+›oÜ'©
°1«Ó6Ü2Øô		
ðð rG   c                 óf  — t        t        |||¬«      }t        t        |t        j                  d¬«      }di fdddifdddifd	dd
ifdddifg}g }	|D ]\  \  }
}|fd„}|	j	                  t        t        di |¤Žt         |d«       |d«       |d«      j                  «       «      |
|¬«      «       Œ^ |	S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   rÜ  r,  c                 ó   — t        |||fi |¤ŽS r<   )r   rÞ  s         rE   r…   z>module_inputs_torch_nn_MarginRankingLoss.<locals>.reference_fnÍ
  s   € Ü.¨r°2°qÑOÐ<NÑOÐOrG   )rô  r�   rV   )r   r
   rb   r  rJ   r€   r{   rã  rä  s                rE   Ú(module_inputs_torch_nn_MarginRankingLossr…  ¿
  sê   € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¼E¿J¹JÐV[Ô\€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�H˜c�?Ð#ð%€Eð €MØ$)ò 

Ñ ˆÐ Ø=Oó 	Pð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸uÓ4EÁzÐRWÓGXÙ4?ÀÓ4F×4KÑ4KÓ4Mó'Oà!Ø%1ô	3õ	
ð	

ð ÐrG   c                 ó¾  — t        t        |||¬«      }t        t        |t        j                  d¬«      }di fdddifdddifd	dd
ifg}g }	|D ]�  \  }
}|fd„}|	j	                  t        t        di |¤Žt         |d«       |ddd¬«      «      d|
› �|¬«      «       |	j	                  t        t        di |¤Žt         |d«       |ddd¬«      «      |
|¬«      «       Œ� |	S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   c                 ó   — t        ||fi |¤ŽS r<   )r!   rò   s        rE   r…   zAmodule_inputs_torch_nn_MultiLabelMarginLoss.<locals>.reference_fnè
  s   € Ü1°!°QÑMÐ:LÑMÐMrG   r�  rÀ   r   r$  Ú1d_r�   r‹  rV   ©r   r
   rb   r  rJ   r€   r{   rä  s                rE   Ú+module_inputs_torch_nn_MultiLabelMarginLossrŠ  Û
  s  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¼E¿J¹JÐV[Ô\€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1ð	%€Eð €MØ$)ò 
Ñ ˆÐ Ø8Jó 	Nð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸uÓ4EÙ4?ÀÈ!ÐRTÔ4Uó'Wà" 4 &˜\Ø%1ô	3ô	
ð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÙ4?ÀÈQÐUWÔ4Xó'Zà!Ø%1ô	3õ	
ð
ð( ÐrG   c                 óˆ  — t        t        |||¬«      }t        t        |t        j                  d¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdddifdddifdd |d«      ifg}	g }
|	D ]J  \  }}|fd„}|
j	                  t        t        di |¤Žt         |d«       |ddd¬«      «      ||¬«      «       ŒL |
S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   rË   rã   rÜ  r,  r  r  rÀ   c                 ó   — t        ||fi |¤ŽS r<   )r    rò   s        rE   r…   z<module_inputs_torch_nn_MultiMarginLoss.<locals>.reference_fn  s   € Ü,¨Q°ÑHÐ5GÑHÐHrG   r‹  rÕ   r   r$  r�   rV   r‰  )rL   r¯   rS   r¿   rT   rX   rÙ   r  r  rù   rÚ   r„   ró   r…   s                 rE   Ú&module_inputs_torch_nn_MultiMarginLossr�  þ
  s  € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¼E¿J¹JÐV[Ô\€KÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	ˆs�AˆhˆØ	�H˜c�?Ð#Ø	�X™{¨2›Ð/Ð0ð%€Eð €MØ$)ò 

Ñ ˆÐ Ø8Jó 	Ið 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÙ4?ÀÈÐQSÔ4Tó'Và!Ø%1ô	3õ	
ð	

ð ÐrG   c                 óþ   — t        t        |||¬«      }t        t        t	        «       t	         |d«      t        j                  g d¢|t
        j                  ¬«      «      ¬«      t        j                  t        d¬«      gS )z˜
    Error inputs for MultiMarginLoss that test the improved error message
    for inconsistent target size.
    Regression test for issue #106251.
    r¾   r‹  r·  rµ  ro  zYtarget tensor should be 1-D with size equal to.*Expected target size \[5\].*but got \[3\]rÃ  )r   r
   r�   r€   r{   rb   rº  r  rŒ   rŽ   r\   ru  s          rE   Ú,module_error_inputs_torch_nn_MultiMarginLossr�    sk   € ô œ¨V¸5ÐP]Ô^€Jô 	ÜÜ"/£/Ü+Ù˜wÓ'Ü—L‘L¢°6ÄÇÁÔLóôô %×2Ñ2Ü#Øtô	
ðð rG   c                 ó†  — t        t        |||¬«      }t        t        |t        j                  d¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifdd |d«      ifg}	dd„}
g }|	D ]O  \  }}|j	                  t        t        di |¤Žt         |d«       |ddd¬«      «      |t        |
fi |¤Ž¬«      «       ŒQ |S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   r  rÀ   c                 ó`  — ||j                  «       j                  «       z  d|z
  | j                  «       j                  «       z  z   }|�||z  }| j                  |j                  «       dz
  «      |j	                  d«      z  }|dk(  r|S |dk(  r|j                  «       S |j                  «       S )NrI   rÆ   rï   r  )r/  r÷   rë   r  rn  r  r‘  s          rE   Ú&multilabelsoftmargin_loss_reference_fnz_module_inputs_torch_nn_MultiLabelSoftMarginLoss.<locals>.multilabelsoftmargin_loss_reference_fnC  sœ   € Ø�Q—Y‘Y“[—_‘_Ó&Ñ&¨!¨a©%°Q°B·<±<³>×3EÑ3EÓ3GÑ)GÑGˆØÐØ�fÑˆFØ�'—‘˜qŸu™u›w¨™{Ó+¨a¯f©f°R«jÑ8ˆà˜ÒØˆMØ˜&Ò Ø—;‘;“=Ð à—:‘:“<ÐrG   r‹  r   rã   r$  r�   r—  rV   r‰  )rL   r¯   rS   r¿   rT   rX   rÙ   r  r  rù   r’  rÚ   r„   ró   s                 rE   Ú/module_inputs_torch_nn_MultiLabelSoftMarginLossr“  6  sû   € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¼E¿J¹JÐV[Ô\€KÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1Ø	�H™k¨"›oÐ.Ð/ð%€Eó ð €MØ$)ò 
Ñ ˆÐ Ø×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸wÓ4GÙ4?ÀÈQÐUVÔ4Wó'Yà!Ü%,Ð-SÑ%jÐWiÑ%jô	lõ	
ð
ð ÐrG   c                 ó2  — t        t        |||¬«      }t        t        ||d¬«      }di fdddifdddifd	dd
ifg}g }	|D ]U  \  }
}|fd„}|	j                  t        t	        di |¤Žt	         |d«       |d«      j                  «       «      |
|¬«      «       ŒW |	S )Nr¾   Fr3   ré   rê   rë   r  r  rî   rï   c                 ó   — t        ||fi |¤ŽS r<   )r%   rò   s        rE   r…   z;module_inputs_torch_nn_SoftMarginLoss.<locals>.reference_fnj  s   € Ü+¨A¨qÑGÐ4FÑGÐGrG   )rÕ   rÕ   r�   rV   râ  rä  s                rE   Ú%module_inputs_torch_nn_SoftMarginLossr–  ]  sÒ   € Üœ¨V¸5ÐP]Ô^€JÜœ+¨f¸EÐQVÔW€Kð 
ˆRˆØ	˜;¨Ð.Ð/Ø	˜K¨Ð0Ð1Ø	˜K¨Ð0Ð1ð	%€Eð €MØ$)ò 

Ñ ˆÐ Ø8Jó 	Hð 	×ÑÜ¬-Ñ*MÐ:LÑ*MÜ&3±J¸vÓ4FÙ4?ÀÓ4G×4LÑ4LÓ4Nó'Pà!Ø%1ô	3õ	
ð	

ð ÐrG   c           	      óÈ  — g }t        d ||||«      D ]Í  }|j                  j                  |j                  j                  }	}||	d<   ||	d<   t	        j
                  j                  |i |	¤Ž}
d}|j                  }d|j                  v r)|j                  d   |j                  d<   |j                  d= |j                  t        t        |
|«      ||j                  ¬«      «       ŒÏ |S )Nr¯   rS   rã   Úsrc_maskÚmaskrr  )Ú.module_inputs_torch_nn_TransformerEncoderLayerr‚   rW   rX   rb   r¦   ÚTransformerEncoderLayerrƒ   rJ   r€   r{   r„   )rL   r¯   rS   r¿   rT   rX   rç  Úlayer_module_inputÚl_argsÚl_kwargsÚencoder_layerÚ
num_layersrƒ   s                rE   Ú)module_inputs_torch_nn_TransformerEncoderr¡  x  sô   € à€GÜLØ�&˜% °ó:ò Ðð /×@Ñ@×EÑEØ.×@Ñ@×GÑGð ˆà#ˆ�ÑØ!ˆ�ÑÜŸ™×8Ñ8¸&ÐMÀHÑMˆØˆ
ð +×8Ñ8ˆØ˜×-Ñ-Ñ-Ø+8×+?Ñ+?À
Ñ+KˆM× Ñ  Ñ(Ø×$Ñ$ ZÐ0Ø�‰”{Ü+¨M¸:ÓFØ'Ø#×(Ñ(ô
õ 	ðð( €NrG   c                 óÎ  — t        t        |||¬«      }t        t        dddd«      t         |d«      «      d¬«      t        t        ddd	dt        j
                  «      t         |d«      «      d
¬«      t        t        ddd	dd¬«      t         |d«      «      d¬«      g}d t        j                  g d¢|t        j                  ¬«      f}d t        j                  g d¢|t        j                  ¬«      j                  d«      f}	t        j                  |	|ddd«      D ]]  \  }
}}}}|j                  t        t        ddd	d|||¬«      t         |d«      |
|¬«      t        t        |ddi¬«      d|› �¬«      «       Œ_ d„ }|ret        j                  dd«      D ]L  \  }}|j                  t        t        ddd	dd||¬«      t         |d«      «      |r|nd d|› d|› �¬«      «       ŒN |S )Nr¾   rÃ   rã   rx  r™   r  Úrelu_activationrr  rÁ   Úgelu_activationFrÎ   rÐ   ©FFTrµ  rX  ©TF©Úd_modelÚnheadÚdim_feedforwardÚdropoutrJ  Ú
norm_firstrÏ   r›  )r˜  Úsrc_key_padding_maskr­  r   ©rJ  rK  Úno_batch_dim_batch_first_rj  c                 óÚ   — | j                   st        d«      ‚| j                  d«       t        j                  «       5   | |i |¤Ž}d d d «       | j                  d«       S # 1 sw Y   ŒxY w)Nz#Expected module.training to be TrueFT)rT   rN  Útrainrb   Úno_grad)Úmodulerˆ   rW   rX   rW  s        rE   Úfast_path_reference_fnzNmodule_inputs_torch_nn_TransformerEncoderLayer.<locals>.fast_path_reference_fnÀ  s_   € Ø�ŠÜ Ð!FÓGÐGØ�‰�UÔÜ�]‰]‹_ñ 	-Ù˜TÐ, VÑ,ˆF÷	-à�‰�TÔØˆ÷	-ð 	-ús   ½	A!Á!A*T)r«  rJ  r¬  rÏ   Ú	fastpath_Ú_norm_first_)r   r
   r€   r{   rz  Úgelurb   rº  ÚboolrÊ   rÒ  r   rJ   r  )rL   r¯   rS   r¿   rT   rX   rÙ   rç  Úkey_padding_masksÚ
attn_masksr˜  r­  r¬  rJ  rÏ   r´  s                   rE   rš  rš  ‘  s  € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨q°"°cÓ:Ü'Ù˜9Ó%óð #ô	
ô 	Ü+¨A¨q°!°S¼!¿&¹&ÓAÜ'Ù˜9Ó%óð #ô	
ô 	Ü+¨A¨q°!°S¸uÔEÜ'Ù˜9Ó%óð ô	
ð€Gð0 œuŸ|™|Ò,@ÈÔW\×WaÑWaÔbÐcÐØœŸ™Ò%9À&ÔPU×PZÑPZÔ[×bÑbÐciÓjÐk€Jä×Ñ˜jÐ*;¸]ÈMÐ[hÓiòÑEˆÐ&¨
°KÀà�‰ÜÜ"/¸ÀÐTUØ8;ÈØ;EÈDô#Rô ,Ù˜vÓ&°ÐPdôô %Ô%>Ø1<ÐRhÐjkÐQlônà0°°Ð>ô
õ	ðò$ñ Ü )× 1Ñ 1°-ÀÓ Oò 	ÑˆJ˜Ø�N‰NÜÜ&3Ø˜1˜a¨¸$È:Ð\`ô'ô #0Ù" 9Ó-ó#ñ <@Ñ!7ÀTØ$ T F¨,°z°lÐCô
õð	ð €NrG   c                 óp  — t        t        |||¬«      }t        t        dddd«      t         |d«       |d«      «      d¬«      t        t        ddd	dt        j
                  «      t         |d«       |d«      «      d
¬«      t        t        ddd	dd¬«      t         |d«       |d«      «      d¬«      g}d t        j                  g d¢|t        j                  ¬«      f}d t        j                  g d¢|t        j                  ¬«      j                  d«      f}	t        j                  |	|ddd«      D �]  \  }
}}}}|
}|}|j                  t        t        ddd	d|||¬«      t         |d«       |d«      |
|||¬«      t        t        |dddœ¬«      d|› �¬«      «        |d«       |d«      }}|s$|j                  dd«      |j                  dd«      }}|�|j                  dd«      fdz  \  }}|j                  t        t        ddd	d|||¬«      t        |||
|||¬«      d|› d|› d|› �¬«      «       �Œ |S )Nr¾   rÃ   rã   rx  r™   r  r£  rr  rÁ   r¤  FrÎ   rÐ   r¥  rµ  rX  r¦  r§  r›  )Útgt_maskÚmemory_maskÚtgt_key_padding_maskÚmemory_key_padding_maskr   )r¾  r¿  r®  r¯  rj  rI   rÔ   Únorm_first_Ú_batch_first_Ú_bias_)r   r
   r€   r{   rz  r·  rb   rº  r¸  rÊ   rÒ  r   rJ   r  Ú	transpose)rL   r¯   rS   r¿   rT   rX   rÙ   rç  r¹  rº  r¼  r¾  r¬  rÏ   rJ  r½  r¿  ÚsrcÚtgts                      rE   Ú.module_inputs_torch_nn_TransformerDecoderLayerrÆ  Ü  sˆ  € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨q°"°cÓ:Ü'Ù˜9Ó%¡z°)Ó'<óð #ô	
ô 	Ü+¨A¨q°!°S¼!¿&¹&ÓAÜ'Ù˜9Ó%¡z°)Ó'<óð #ô	
ô 	Ü+¨A¨q°!°S¸uÔEÜ'Ù˜9Ó%¡z°)Ó'<óð ô	
ð€Gð. œuŸ|™|Ò,@ÈÔW\×WaÑWaÔbÐcÐØœŸ™Ò%9À&ÔPU×PZÑPZÔ[×bÑbÐciÓjÐk€Jä×Ñ˜jÐ*;¸]ÈMÐ[hÓió"ÑEˆÐ&¨
°D¸+ð ˆØ"6ÐØ�‰ÜÜ"/¸ÀÐTUØ8;ÈØ;EÈDô#Rô ,Ù˜vÓ&©
°6Ó(:ÀXÐ[fØ)=ÐWnôô %Ô%>Ø1<ØQRÐopÑ8qôsð 1°°Ð>ôô	ñ ˜iÓ(©*°YÓ*?ˆSˆÙØ—}‘} Q¨Ó*¨C¯M©M¸!¸QÓ,?�ˆCØÐ+Ø=Q×=XÑ=XÐYZÐ\]Ó=^Ð<`ÐcdÑ<dÑ9Ð#Ð%9Ø�‰ÜÜ"/¸ÀÐTUØ8;ÈØ;EÈDô#Rô ,Ø˜ x¸[Ø)=ÐWnôð # : ,¨m¸K¸=ÈÈtÈfÐUô	ö
	ð1"ðH €NrG   c                 óD  — t        t        |||¬«      }g }d t        j                  g d¢|t        j                  ¬«      f}d t        j                  g d¢|t        j                  ¬«      j                  d«      f}	t        j                  |	|ddd«      D �]
  \  }
}}}}|
fdz  \  }}|fdz  \  }}|j                  t        t        dddd	d	d
|||¬«	      t         |d«       |d«      ||||¬«      t        t        |dddœ¬«      d|› �¬«      «        |d«       |d«      }}|s$|j                  dd	«      }|j                  dd	«      }|�|j                  dd«      fdz  \  }}|j                  t        t        dddd	d	d
|||¬«	      t        ||||||¬«      ¬«      «       �Œ |S )Nr¾   r¥  rµ  rX  r¦  rã   rÃ   rÁ   rI   r™   )	r¨  r©  rª  Únum_encoder_layersÚnum_decoder_layersr«  rJ  r¬  rÏ   r›  )r¼  r˜  r¾  r­  r   )r¾  r­  r®  r¯  rj  r  rÔ   ro  )r   r
   rb   rº  r¸  rÊ   rÒ  r   rJ   r€   r{   r  rÃ  )rL   r¯   rS   r¿   rT   rX   rÙ   rç  r¹  rº  r™  rY  r¬  rÏ   rJ  r˜  r¼  r­  r¾  rÄ  rÅ  s                        rE   Ú"module_inputs_torch_nn_TransformerrÊ    sð  € Üœ¨V¸5ÐP]Ô^€JØ€GàœuŸ|™|Ò,@ÈÔW\×WaÑWaÔbÐcÐØœŸ™Ò%9À&ÔPU×PZÑPZÔ[×bÑbÐciÓjÐk€Jä×Ñ˜jÐ*;¸]ÈMÐ[hÓió$Ñ=ˆÐ 
¨D°+ð  $˜g¨™kÑˆ�8Ø6FÐ5HÈ1Ñ5LÑ2ÐÐ2Ø�‰ÜÜ"/¸ÀÐTUØCDÐYZØ8;ÈÐakÐrvô#xô ,Ù˜vÓ&©
°6Ó(:ÀXÐX`Ø)=ÐThôô %Ô%>Ø1<ØQRÐlmÑ8nôpð 1°°Ð>ôô	ñ ˜iÓ(©*°YÓ*?ˆSˆÙØ—-‘-  1Ó%ˆCØ—-‘-  1Ó%ˆCØÐ'Ø:J×:QÑ:QÐRSÐUVÓ:WÐ9YÐ\]Ñ9]Ñ6Ð Ð"6à�‰ÜÜ"/¸ÀÐTUØCDÐYZØ8;ÈÐakÐrvô#xô ,Ø˜ x¸(Ø)=ÐThôô	ö		ð7$ðJ €NrG   c           
      óV  — t        t        j                  |t        j                  d¬«      }t	        t        dd¬«      t         |dd«      j                  d«      «      ¬«      t	        t        dd¬«      t         |dd	«      j                  d«      j                  d
d	«      «      d¬«      gS )NFr¾   rÃ   rÔ   ©Únum_embeddingsÚembedding_dimrã   ro  rI   i   r¡  Údiscontiguousrr  )r   rb   r  r  r€   r{   Úrandom_rÊ   )rL   r¯   rS   r¿   rT   rX   Ú
make_emptys          rE   Ú module_inputs_torch_nn_EmbeddingrÒ  M  s�   € ÜœŸ™¨V¼5¿:¹:ÐUZÔ[€JäÜ+¸1ÈAÔNÜ'©
°1°aÓ(8×(@Ñ(@ÀÓ(CÓDô	
ô 	Ü+¸1ÈAÔNÜ'©
°1°cÓ(:×(BÑ(BÀ1Ó(E×(LÑ(LÈQÐPSÓ(TÓUØ ô	
ð
ð 
rG   c                 ó¾  — g }t        j                  |«      j                  dk(  ru|j                  t	        t        t        dd¬«      t        t        j                  g d¢|t         j                  ¬«      «      ¬«      t        j                  t        d¬	«      «       |j                  t	        t        t        dd¬«      t        t        j                  d
dg|t         j                  ¬«      «      ¬«      t        j                  t        d¬	«      «       |j                  t	        t        t        dd¬«      t        «       ¬«      t        j                  t        d¬	«      «       |S )zQ
    Error inputs for Embedding that test error messages for invalid inputs.
    ÚcpurÀ   rÔ   rÌ  )r   rÕ   r
  rµ  ro  zindex out of range in selfrÃ  r¸  g      @zFExpected tensor for argument.*indices.*to have.*scalar type.*Long.*IntrÆ   z/Trying to create tensor with negative dimension)rb   r¯   rO  rJ   r�   r€   r{   rº  r  rŒ   rŽ   Ú
IndexErrorrº   r\   r�   )rL   r¯   rS   r¿   rT   rX   rç  s          rE   Ú&module_error_inputs_torch_nn_EmbeddingrÖ  \  s  € ð €Gô ‡|�|�FÓ× Ñ  EÒ)Ø�‰ÜÜÜ&3À2ÐUVÔ&WÜ"/´·±ºZÐPVÔ^c×^hÑ^hÔ0iÓ"jôô )×6Ñ6Ü%Ø9ôô
	
ð ‡N�NÜÜÜ"/¸rÐQRÔ"SÜ+¬E¯L©L¸#¸s¸ÈFÔZ_×ZgÑZgÔ,hÓiôô %×2Ñ2Ü#Øaô	
ô
ð ‡N�NÜÜÜ"/¸rÐQRÔ"SÜ+›oôô %×7Ñ7Ü#ØJô	
ô
ð €NrG   c                 óœ  — t        t        |||¬«      }g }d}d t        j                  g d¢|t        j                  ¬«      f}	d t        j                  g d¢|t        j                  ¬«      j                  d«      f}
t        j                  ||||	|
«      }|D ]³  \  }}}}}|j                  t        t        ddd|||¬«      t         |d	«       |d	«       |d	«      ||¬
«      t        ¬«      «       |j                  t        t        ddd|||¬«      t         |d	«       |d	«       |d	«      ||¬
«      t        t        d¬«      ¬«      «       Œµ |S )Nr¾   r¦  r¥  rµ  )rÔ   rÔ   rÔ   rÔ   T)Ú	embed_dimÚ	num_headsrJ  rÏ   Úadd_bias_kvÚadd_zero_attnrX  )rY  Ú	attn_maskrÍ   F©rJ  )r   r
   rb   rº  r¸  rÊ   rÒ  r   rJ   r€   r{   rZ  )rL   r¯   rS   r¿   rT   rX   rÙ   rç  Ú	bool_valsr¹  rº  ÚproductsrÏ   rÚ  rÛ  rY  rÜ  s                    rE   Ú)module_inputs_torch_nn_MultiheadAttentionrà  �  sX  € äœ¨V¸5ÐP]Ô^€JØ€GØ€IØœuŸ|™|Ò,@ÈÔW\×WaÑWaÔbÐcÐØœŸ™Ò%9À&ÔPU×PZÑPZÔ[×bÑbÐclÓmÐn€JÜ× Ñ  ¨I°yÐBSÐU_Ó`€HØIQò 
ÑEˆˆk˜=Ð*:¸IØ�‰ÜÜ"/¸!ÀqÐVZØ59À{Ðboô#qä+©J°vÓ,>Á
È6Ó@RÑT^Ð_eÓTfØ=MÐYbôdä7ôô	
ð 	�‰ÜÜ"/¸!ÀqÐV[Ø59À{Ðboô#qä+©J°vÓ,>Á
È6Ó@RÑT^Ð_eÓTfØ=MÐYbôdä$Ô%?ÈUÔSôõ	
ð
ð( €NrG   c                 ó¨  — t        t        |||¬«      }t        t        dd«      t         |d«       |d«      «      t        ¬«      t        t        ddd¬«      t         |d«       |d«      «      t        ¬«      g}|j                  dd«      }|rD|j                  t        t        dddd	¬
«      t         |d«       |d«      «      t        ¬«      «       |S )Nr¾   rÕ   rÀ   rÍ   TrÎ   Úis_rnnFÚrelu)rÏ   Únonlinearity)r   r
   r€   r{   r  rø   rJ   )	rL   r¯   rS   r¿   rT   rX   rÙ   rç  râ  s	            rE   Ú#module_inputs_torch_nn_RNN_GRU_Cellrå  ®  sÁ   € äœ¨V¸5ÐP]Ô^€JäÜ+¨A¨rÓ2Ü'©
°1«±zÀ"³~ÓFÜ2ô	
ô
 	Ü+¨A¨r¸Ô=Ü'©
°1«±zÀ"³~ÓFÜ2ô	
ð€Gð �Z‰Z˜ %Ó(€FÙð 	�‰ÜÜ"/°°2¸DÈvÔ"VÜ+©J°q«M¹:Àb»>ÓJÜ6ôô	
ð €NrG   c                 ó  — t        t        |||¬«      }t        t        dd«      t         |d«       |d«       |d«      f«      t        ¬«      t        t        ddd¬«      t         |d«       |d«       |d«      f«      t        ¬«      f}|S )Nr¾   rÕ   rÀ   rÍ   TrÎ   )r   r
   r€   r{   re  ©rL   r¯   rS   r¿   rT   rX   rÙ   rç  s           rE   Úmodule_inputs_torch_nn_LSTMCellrè  Í  s‡   € äœ¨V¸5ÐP]Ô^€JäÜ+¨A¨rÓ2Ü'©
°1«¹
À2»É
ÐSUËÐ7WÓXÜ8ô	
ô
 	Ü+¨A¨r¸Ô=Ü'©
°1«¹
À2»É
ÐSUËÐ7WÓXÜ8ô	
ð€Gð €NrG   c                 óŽ   — | j                   }| j                  d«       t        | |«      }|j                  j                  |«       |S )NF)r¿   r  r	   Údata)r^  Úbatch_sizesÚrequired_gradÚseqs       rE   Úmake_packed_sequencerî  ß  s>   € Ø×%Ñ%€MØ×Ñ�uÔÜ
˜s KÓ
0€CØ‡H�H×Ñ˜MÔ*Ø€JrG   Fc                 ó°  — t        t        |||¬«      }|d   }d}	d}
d}d}g }|rt        |	|
||«      }nt        |
||«      }|D �]�  }|r|\  }}}}n|\  }}}ddd|||dœ}ddd|||dœ}|r
|d<   ||d<   |j                  t	        t        di |¤Žt         |d	«      «      t        t        |¬
«      ¬«      «       |j                  t	        t        di |¤Žt         |d	«       ||rdnddf«      «      t        t        |¬
«      ¬«      «       |sŒÊ|j                  t	        t        di |¤Žt        t         |d«      t        j                  ddg«      «      «      t        t        |¬
«      ¬«      «       |j                  t	        t        di |¤Žt        t         |d«      t        j                  g d¢«      «      «      t        t        |¬
«      ¬«      «       �Œ’ |S )Nr¾   râ  )rã  ry  ©FTrã   )Ú
input_sizeÚhidden_sizer   rJ  rÏ   ÚbidirectionalrÔ   rä  ©rÔ   rã   rÝ  rÍ   rÃ   )rÕ   rã   rã   rÕ   )rÕ   rÕ   rã   )rÕ   rÔ   rÔ   rã   rã   rV   )
r   r
   r   rJ   r€   r{   r`  rî  rb   rº  )rL   r¯   rS   r¿   rT   Úwith_packed_sequencerX   rÙ   râ  rä  rÏ   rJ  ró  rç  Úprod_genrW   Únlrƒ  Úb_fÚbidirÚ	cons_argsÚcons_args_hiddens                         rE   Úmodule_inputs_torch_nn_RNN_GRUrü  ç  s  € äœ¨V¸5ÐP]Ô^€JØ�HÑ€FØ#€LØ€DØ€KØ!€Mà€GÙÜ˜<¨¨{¸MÓJ‰ä˜4 ¨mÓ<ˆàó *ˆÙØ $ÑˆB��3™à ‰MˆAˆs�Eà#$°QÀaØ$'°ÀUñLˆ	à*+¸AÈQØ+.¸ÈEñSÐñ Ø(*ˆI�nÑ%Ø/1Ð˜^Ñ,Ø�‰ÜÜ"/Ñ"<°)Ñ"<Ü+©J°vÓ,>Ó?Ü$Ô%CÐQTÔUôô	
ð 	�‰ÜÜ"/Ñ"CÐ2BÑ"CÜ+©J°vÓ,>Á
ÑQVÉAÐ\]Ð_`ÐKaÓ@bÓcÜ$Ô%CÐQTÔUôô	
ò  Ø�N‰NÜÜ&3Ñ&@°iÑ&@Ü"/Ô0DÁZÐPYÓEZÔ\a×\hÑ\hÐjkÐmnÐioÓ\pÓ0qÓ"rÜ!(Ô)GÐUXÔ!Yôôð �N‰NÜÜ&3Ñ&@°iÑ&@Ü"/Ô0DÁZÐPYÓEZÔ\a×\hÑ\hÒixÓ\yÓ0zÓ"{Ü!(Ô)GÐUXÔ!YôöðI*ðX €NrG   c                 ó   — t        t        |||¬«      }d}d}d}	d}
g }t        |||	|
«      }|D ]Í  }|\  }}}}d}d|d||||dœ}d|d||||dœ}|j                  t	        t        di |¤Žt         |d«      «      t        t        |¬«      ¬	«      «       |d
kD  r|n|} ||rdnd|f«       ||rdnd|f«      f}|j                  t	        t        di |¤Žt         |d«      |«      t        t        |¬«      ¬	«      «       ŒÏ |S )Nr¾   rð  )r   rã   rÔ   rã   )rñ  rò  r   Ú	proj_sizerJ  rÏ   ró  rx  rÝ  rÍ   r   rÃ   rô  rV   )r   r
   r   rJ   r€   r{   rb  )rL   r¯   rS   r¿   rT   rX   rÙ   rÏ   rJ  ró  Ú
proj_sizesrç  rö  rW   rƒ  rø  rù  rþ  rò  rú  rû  Úh_outÚhxs                          rE   Úmodule_inputs_torch_nn_LSTMr  %  sD  € äœ¨V¸5ÐP]Ô^€JØ€DØ€KØ!€MØ€Jà€GÜ�t˜[¨-¸ÓD€Hàò 
ˆØ#'Ñ ˆˆ3��yØˆØ#$°[ÐPQÐ`iØ$'°ÀUñLˆ	à*+¸KÐWXÐgpØ+.¸ÈEñSÐð 	�‰ÜÜ"/Ñ"<°)Ñ"<Ü+©J°vÓ,>Ó?Ü$Ô%@ÈcÔRôô	
ð '¨š]‘	°ˆÙ™u™!¨!¨UÐ3Ó4±jÁuÁ!ÐRSÐU`ÐAaÓ6bÐcˆØ�‰ÜÜ"/Ñ"CÐ2BÑ"CÜ+©J°vÓ,>ÀÓCÜ$Ô%@ÈcÔRôõ	
ð%
ð6 €NrG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS )Nr¾   rI   r«  rÍ   ©rI   rã   r  ro  rt  ru  s          rE   Ú&module_inputs_torch_nn_ReflectionPad1dr  O  ó^   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨AÓ.Ü'©
°6Ó(:Ó;Ü2ô	
ô
 	Ü+¨FÓ3Ü'©
°9Ó(=Ó>ô	
ð
ð 
rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS ©Nr¾   rI   r¢  rÍ   ©rI   rã   rÔ   rÃ   ©rÔ   rÃ   rÕ   rn  ro  rt  ru  s          rE   Ú&module_inputs_torch_nn_ReflectionPad2dr  ^  ó^   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨AÓ.Ü'©
°9Ó(=Ó>Ü2ô	
ô
 	Ü+¨LÓ9Ü'©
°<Ó(@ÓAô	
ð
ð 
rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS )Nr¾   rI   r6  rÍ   ©rI   rã   rI   rã   rI   rã   )rÔ   rÔ   rÔ   rÔ   rÔ   ro  rt  ru  s          rE   Ú&module_inputs_torch_nn_ReflectionPad3dr  m  ó_   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨AÓ.Ü'©
°<Ó(@ÓAÜ2ô	
ô
 	Ü+Ð,>Ó?Ü'©
°?Ó(CÓDô	
ð
ð 
rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS ©Nr¾   rI   r›  rÍ   r  r¢  ro  rt  ru  s          rE   Ú'module_inputs_torch_nn_ReplicationPad1dr  |  r  rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS r  rt  ru  s          rE   Ú'module_inputs_torch_nn_ReplicationPad2dr  ‹  r  rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS )Nr¾   rI   r
  rÍ   ©rI   rã   rÔ   rÃ   rÕ   rn  )rÔ   rÃ   rÕ   rn  r¡  ro  rt  ru  s          rE   Ú'module_inputs_torch_nn_ReplicationPad3dr  š  r  rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS r  rt  ru  s          rE   Ú module_inputs_torch_nn_ZeroPad1dr  ©  r  rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS )Nr¾   rI   r$  rÍ   r	  ro  rt  ru  s          rE   Ú module_inputs_torch_nn_ZeroPad2dr  ¸  r  rG   c           	      óÆ   — t        t        |||¬«      }t        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ¬«      gS )Nr¾   rI   r
  rÍ   r  r[  ro  rt  ru  s          rE   Ú module_inputs_torch_nn_ZeroPad3dr  Ç  r  rG   c           	      óÊ   — t        t        |||¬«      }t        t        dd«      t         |d«      «      t        ¬«      t        t        dd«      t         |d«      «      ¬	«      gS )
Nr¾   rI   rã   r›  rÍ   r  rÔ   r¢  ro  rt  ru  s          rE   Ú$module_inputs_torch_nn_ConstantPad1dr   Ö  sb   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨qÓ1Ü'©
°6Ó(:Ó;Ü2ô	
ô
 	Ü+¨F°AÓ6Ü'©
°9Ó(=Ó>ô	
ð
ð 
rG   c           	      óÊ   — t        t        |||¬«      }t        t        dd«      t         |d«      «      t        ¬«      t        t        dd«      t         |d«      «      ¬«      gS )	Nr¾   rI   rÔ   r¢  rÍ   r	  rÕ   ro  rt  ru  s          rE   Ú$module_inputs_torch_nn_ConstantPad2dr"  å  sb   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨qÓ1Ü'©
°9Ó(=Ó>Ü2ô	
ô
 	Ü+¨L¸!Ó<Ü'©
°<Ó(@ÓAô	
ð
ð 
rG   c           	      óÊ   — t        t        |||¬«      }t        t        dd«      t         |d«      «      t        ¬«      t        t        dd«      t         |d«      «      ¬	«      gS )
Nr¾   rI   rÔ   r
  rÍ   r  r¡  )rI   rã   rI   rã   rI   ro  rt  ru  s          rE   Ú$module_inputs_torch_nn_ConstantPad3dr$  ô  sc   € Üœ¨V¸5ÐP]Ô^€Jô 	Ü+¨A¨qÓ1Ü'©
°<Ó(@ÓAÜ2ô	
ô
 	Ü+Ð,>ÀÓBÜ'©
°?Ó(CÓDô	
ð
ð 
rG   c                 óv  ‡— t        t        |||¬«      }d„ Št        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ˆfd„¬«      t        t        d	«      t         |d«      «      ˆfd
„¬«      t        t        d«      t         |d«      «      ˆfd„¬«      gS )Nr¾   c           
      ót   — t        j                  | dd…dd…|d    d…f   | | dd…dd…d|d   …f   gd¬«      S )zê input:
                [[[0., 1., 2.],
                  [3., 4., 5.]]]
                pad: (1, 2)
                output:
                    [[[2., 0., 1., 2., 0., 1.],
                      [5., 3., 4., 5., 3., 4.]]]
            Nr   rI   rã   r   ©rb   Úcat©r^  Úpads     rE   Úpadding1d_circular_refzDmodule_inputs_torch_nn_CircularPad1d.<locals>.padding1d_circular_ref  sB   € ô �y‰y˜#ša¢ S¨¡V G¡H˜nÑ-¨s°Cºº1¸g¸sÀ1¹v¸g¸Ñ4FÐGÈQÔOÐOrG   rI   r›  rÍ   r  r$  c                 ó*   •—  ‰|| j                   «      S r<   r\  ©r‰   rË   rÓ   r+  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad1d.<locals>.<lambda>  ó   ø€ Ñ)?ÀÀ1Ç9Á9Ó)M€ rG   )rÔ   rI   c                 ó*   •—  ‰|| j                   «      S r<   r\  r-  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad1d.<locals>.<lambda>  r.  rG   rX  c                 ó*   •—  ‰|| j                   «      S r<   r\  r-  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad1d.<locals>.<lambda>$  r.  rG   rt  )rL   r¯   rS   r¿   rT   rX   rÙ   r+  s          @rE   Ú$module_inputs_torch_nn_CircularPad1dr1    s¬   ø€ Üœ¨V¸5ÐP]Ô^€Jò	Pô 	Ü+¨AÓ.Ü'©
°6Ó(:Ó;Ü2ô	
ô
 	Ü+¨FÓ3Ü'©
°9Ó(=Ó>ÛMô	
ô
 	Ü+¨FÓ3Ü'©
°9Ó(=Ó>ÛMô	
ô
 	Ü+¨FÓ3Ü'©
°9Ó(=Ó>ÛMô	
ð!ð rG   c                 óv  ‡— t        t        |||¬«      }d„ Št        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ˆfd„¬«      t        t        d	«      t         |d«      «      ˆfd
„¬«      t        t        d«      t         |d«      «      ˆfd„¬«      gS )Nr¾   c                 óò   — t        j                  | dd…dd…|d    d…f   | | dd…dd…d|d   …f   gd¬«      } t        j                  | dd…dd…dd…|d    d…f   | | dd…dd…dd…d|d   …f   gd¬«      S )aS  input:
                [[[[0., 1., 2],
                   [3., 4., 5.]]]]
                pad: (1, 2, 2, 1)
        output:
            [[[[2., 0., 1., 2., 0., 1.],
               [5., 3., 4., 5., 3., 4.],
               [2., 0., 1., 2., 0., 1.],
               [5., 3., 4., 5., 3., 4.],
               [2., 0., 1., 2., 0., 1.]]]]
        Nrã   rÔ   r   r   rI   r'  r)  s     rE   Úpadding2d_circular_refzDmodule_inputs_torch_nn_CircularPad2d.<locals>.padding2d_circular_ref+  s†   € ô �i‰i˜šQ¢ C¨¡F 7¡8˜^Ñ,¨c°3²qº!¸W¸cÀ!¹f¸W°}Ñ3EÐFÈAÔNˆÜ�y‰y˜#ša¢¢A¨¨A© w¡xÐ/Ñ0°#°sº1ºaÂÀGÀSÈÁVÀGÐ;KÑ7LÐMÐSTÔUÐUrG   rI   r¢  rÍ   )rI   rã   rã   rI   )rI   rI   rã   rÔ   c                 ó*   •—  ‰|| j                   «      S r<   r\  ©r‰   rË   rÓ   r4  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad2d.<locals>.<lambda>C  r.  rG   )rã   rÔ   rã   rã   c                 ó*   •—  ‰|| j                   «      S r<   r\  r6  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad2d.<locals>.<lambda>H  r.  rG   )rÔ   rÔ   rÔ   rI   )rI   rI   rÔ   rÔ   c                 ó*   •—  ‰|| j                   «      S r<   r\  r6  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad2d.<locals>.<lambda>M  r.  rG   rt  )rL   r¯   rS   r¿   rT   rX   rÙ   r4  s          @rE   Ú$module_inputs_torch_nn_CircularPad2dr9  (  s¬   ø€ Üœ¨V¸5ÐP]Ô^€JòVô  	Ü+¨AÓ.Ü'©
°9Ó(=Ó>Ü2ô	
ô
 	Ü+¨LÓ9Ü'©
°<Ó(@ÓAÛMô	
ô
 	Ü+¨LÓ9Ü'©
°<Ó(@ÓAÛMô	
ô
 	Ü+¨LÓ9Ü'©
°<Ó(@ÓAÛMô	
ð!ð rG   c                 óv  ‡— t        t        |||¬«      }d„ Št        t        d«      t         |d«      «      t        ¬«      t        t        d«      t         |d«      «      ˆfd„¬«      t        t        d	«      t         |d«      «      ˆfd
„¬«      t        t        d«      t         |d«      «      ˆfd„¬«      gS )Nr¾   c                 ó|  — t        j                  | dd…dd…|d    d…f   | | dd…dd…d|d   …f   gd¬«      } t        j                  | dd…dd…dd…|d    d…f   | | dd…dd…dd…d|d   …f   gd¬«      } t        j                  | dd…dd…dd…dd…|d    d…f   | | dd…dd…dd…dd…d|d   …f   gd¬«      S )	aN  input:
                [[[[[ 0.,  1.,  2.],
                    [ 3.,  4.,  5.]],
                   [[ 6.,  7.,  8.],
                    [ 9., 10., 11.]]]]]
            pad: (1, 2, 2, 1, 1, 2)
            output: [[[[[ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.]],

                       [[ 2.,  0.,  1.,  2.,  0.,  1.],
                        [ 5.,  3.,  4.,  5.,  3.,  4.],
                        [ 2.,  0.,  1.,  2.,  0.,  1.],
                        [ 5.,  3.,  4.,  5.,  3.,  4.],
                        [ 2.,  0.,  1.,  2.,  0.,  1.]],

                       [[ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.]],

                       [[ 2.,  0.,  1.,  2.,  0.,  1.],
                        [ 5.,  3.,  4.,  5.,  3.,  4.],
                        [ 2.,  0.,  1.,  2.,  0.,  1.],
                        [ 5.,  3.,  4.,  5.,  3.,  4.],
                        [ 2.,  0.,  1.,  2.,  0.,  1.]],

                       [[ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.],
                        [11.,  9., 10., 11.,  9., 10.],
                        [ 8.,  6.,  7.,  8.,  6.,  7.]]]]]
        NrÃ   rÕ   rã   r   rÔ   r   rI   r'  r)  s     rE   Úpadding3d_circular_refzDmodule_inputs_torch_nn_CircularPad3d.<locals>.padding3d_circular_refU  sÏ   € ôJ �i‰i˜šQ¢ C¨¡F 7¡8˜^Ñ,¨c°3²qº!¸W¸cÀ!¹f¸W°}Ñ3EÐFÈAÔNˆÜ�i‰i˜šQ¢¢1 s¨1¡v g¡hÐ.Ñ/°°cº!ºQÂÀ7ÀCÈÁFÀ7Ð:JÑ6KÐLÐRSÔTˆÜ�y‰y˜#ša¢¢A¢q¨3¨q©6¨'©(Ð2Ñ3°S¸#ºaÂÂAÂqÈ'È3ÈqÉ6È'Ð>QÑ:RÐSÐYZÔ[Ð[rG   rI   r
  rÍ   r  )rI   rI   rã   rã   rÔ   c                 ó*   •—  ‰|| j                   «      S r<   r\  ©r‰   rË   rÓ   r<  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad3d.<locals>.<lambda>‡  r.  rG   )rÔ   rã   rã   rI   rI   rã   c                 ó*   •—  ‰|| j                   «      S r<   r\  r>  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad3d.<locals>.<lambda>Œ  r.  rG   )rÔ   rÔ   rã   rI   rã   rã   c                 ó*   •—  ‰|| j                   «      S r<   r\  r>  s      €rE   rÌ   z6module_inputs_torch_nn_CircularPad3d.<locals>.<lambda>‘  r.  rG   rt  )rL   r¯   rS   r¿   rT   rX   rÙ   r<  s          @rE   Ú$module_inputs_torch_nn_CircularPad3drA  Q  s°   ø€ Üœ¨V¸5ÐP]Ô^€Jò'\ôT 	Ü+¨AÓ.Ü'©
°<Ó(@ÓAÜ2ô	
ô
 	Ü+Ð,>Ó?Ü'©
°?Ó(CÓDÛMô	
ô
 	Ü+Ð,>Ó?Ü'©
°?Ó(CÓDÛMô	
ô
 	Ü+Ð,>Ó?Ü'©
°?Ó(CÓDÛMô	
ð!ð rG   Ú
TestModuleÚ	test_gradÚcuda)Ú	active_ifr^   Útest_gradgradÚtest_non_contiguous_tensors)rE  rn   r^   c           	      ó´  — t        j                  g ||¬«      j                  d«      }|t         j                  k(  rt         j                  nt         j                  }t        j                  g ||¬«      }t        j                  g |t         j
                  ¬«      }	t        t        t        |¬«      t        ||	«      ¬«      t        j                  t        d¬«      gS )z 
    Error inputs for NLLLoss that test weight dtype must match input dtype.
    Regression test for device parity between CPU and CUDA with empty tensors.
    rµ  )r   r   r•  ro  z&expected scalar type \w+ but found \w+rÃ  )rb   rº  rÆ  r¹   rº   r  r�   r€   r{   rŒ   rŽ   r\   )
rL   r¯   rS   r¿   rT   rX   Úinput_tÚweight_dtypeÚweight_tÚtarget_ts
             rE   Ú$module_error_inputs_torch_nn_NLLLossrM  ²  s¢   € ô
 �l‰l˜2 f°EÔ:×BÑBÀ6ÓJ€GØ$)¬U¯]©]Ò$:”5—=’=ÄÇÁ€LÜ�|‰|˜B v°\ÔB€HÜ�|‰|˜B v´U·Z±ZÔ@€Hô 	ÜÜ"/°xÔ"@Ü+¨G°XÓ>ôô %×2Ñ2Ü#ØAô	
ð
ð 
rG   c                 óÔ  — t        t        |||¬«      }t        t        t	        dd«      t	         |dd«       |dd«      «      ¬«      t
        j                  t        d¬«      t        t        t	        dd«      t	         |dd«       |dd	«      «      ¬«      t
        j                  t        d
¬«      t        t        t	        dd«      t	         |dd«       |dd«      «      ¬«      t
        j                  t        d¬«      t        t        t	        dd«      t	         |dd«       |dddd«      «      ¬«      t
        j                  t        d¬«      t        t        t	        ddd«      t	         |dd«       |dd	«      «      ¬«      t
        j                  t        d
¬«      t        t        t	        ddd«      t	         |dd«       |dd	«      «      ¬«      t
        j                  t        d
¬«      g}|S )Nr¾   rÀ   r5  rÔ   é   ro  ú5input has inconsistent input_size: got 11 expected 10rÃ  é   ú9hidden0 has inconsistent hidden_size: got 21, expected 20rÕ   ú5Input batch size 3 doesn't match hidden0 batch size 5rI   z.Expected hidden to be 1D or 2D, got 4D insteadrã  ry  ©	r   r
   r�   r€   r{   rŒ   rŽ   r\   rÆ  rç  s           rE   Ú)module_error_inputs_torch_nn_RNN_GRU_CellrU  È  sÉ  € Üœ¨V¸5ÐP]Ô^€JäÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=¹zÈ!ÈRÓ?PÓQôô %×2Ñ2Ü#ØOô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=¹zÈ!ÈRÓ?PÓQôô %×2Ñ2Ü#ØSô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=¹zÈ!ÈRÓ?PÓQôô %×2Ñ2Ü#ØOô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=¹zÈ!ÈQÐPQÐSUÓ?VÓWôô %×2Ñ2Ü!ØHô	
ô 	ÜÜ"/°°B¸Ó"?Ü+©J°q¸"Ó,=¹zÈ!ÈRÓ?PÓQôô %×2Ñ2Ü#ØSô	
ô 	ÜÜ"/°°B¸Ó"?Ü+©J°q¸"Ó,=¹zÈ!ÈRÓ?PÓQôô %×2Ñ2Ü#ØSô	
ð]7€Gðp €NrG   c                 óè  — t        t        |||¬«      }t        t        t	        dd«      t	         |dd«       |dd«       |dd«      f«      ¬«      t
        j                  t        d¬«      t        t        t	        dd«      t	         |dd«       |dd	«       |dd	«      f«      ¬«      t
        j                  t        d
¬«      t        t        t	        dd«      t	         |dd«       |dd«       |dd«      f«      ¬«      t
        j                  t        d¬«      t        t        t	        dd«      t	         |dd«       |dddd«       |dddd«      f«      ¬«      t
        j                  t        d¬«      g}|S )Nr¾   rÀ   r5  rÔ   rO  ro  rP  rÃ  rQ  rR  rÕ   rS  rI   z/Expected hx\[0\] to be 1D or 2D, got 4D insteadrT  rç  s           rE   Ú%module_error_inputs_torch_nn_LSTMCellrW    s|  € Üœ¨V¸5ÐP]Ô^€JäÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=Á
È1ÈbÓ@QÑS]Ð^_ÐacÓSdÐ?eÓfôô %×2Ñ2Ü#ØOô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=Á
È1ÈbÓ@QÑS]Ð^_ÐacÓSdÐ?eÓfôô %×2Ñ2Ü#ØSô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=Á
È1ÈbÓ@QÑS]Ð^_ÐacÓSdÐ?eÓfôô %×2Ñ2Ü#ØOô	
ô 	ÜÜ"/°°BÓ"7Ü+©J°q¸"Ó,=Á
È1ÈaÐQRÐTVÓ@WÑYcÐdeÐghÐjkÐmoÓYpÐ?qÓrôô %×2Ñ2Ü!ØKô	
ð9%€GðL €NrG   c                 ó  — t        |t        «      r|j                  d«      d   n|j                  }|t        j
                  k(  r&|dk(  rt        j                  nt        j                  }nt        j
                  }t        t        |||¬«      }t        t        t        ddd«      ¬«      t        j                  t        d¬	«      t        t        t        ddd«      ¬«      t        j                  t        d
¬	«      t        t        t        dd||¬«      t         |d«      «      ¬«      t        j                   t        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        ddd¬«      ¬«      t        j                  t"        d¬	«      t        t        t        dd«      ¬«      t        j                  t"        d¬	«      t        t        t        dd«      ¬«      t        j                  t"        d¬	«      t        t        t        dd«      ¬«      t        j                  t        d¬	«      t        t        t        dd«      ¬«      t        j                  t        d¬	«      t        t        t        dd«      ¬«      t        j                  t"        d ¬	«      g}	|	S )!Nú:r   r³   r¾   rÀ   rI   ©r‚   z%hidden_size must be greater than zerorÃ  z$num_layers must be greater than zerorÔ   rÕ   rc  rw  ro  zsRNN input dtype .* does not match weight dtype .* Convert input: input\.to\(.*\), or convert model: model\.to\(.*\)rÎ   z%bias should be of type bool, got: intÚTruez%bias should be of type bool, got: strrÝ  z,batch_first should be of type bool, got: intÚFalsez,batch_first should be of type bool, got: strg      @z,input_size should be of type int, got: floatÚ10z*input_size should be of type int, got: strz$input_size must be greater than zerorÆ   g      @z-hidden_size should be of type int, got: float)r«   ÚstrÚsplitrO  rb   rº   r¹   Úfloat64r   r
   r�   r€   r{   rŒ   r�   rÆ  rŽ   Ú	TypeError)
rL   r¯   rS   r¿   rT   rX   r^   Úmismatched_dtyperÙ   rç  s
             rE   Ú$module_error_inputs_torch_nn_RNN_GRUrc  /  sÏ  € ô +5°V¼SÔ*A�&—,‘,˜sÓ# AÒ&ÀvÇ{Á{€KØ”—‘ÒØ,7¸5Ò,@œ5Ÿ=š=ÄeÇmÁmÑä Ÿ=™=ÐÜœ¨VÐ;KÐ[hÔi€Jô 	Ü¬-¸¸A¸qÓ*AÔBÜ$×7Ñ7Ü!Ø?ô		
ô 	Ü¬-¸¸BÀÓ*BÔCÜ$×7Ñ7Ü!Ø>ô		
ô 	ÜÜ"/°°1¸EÈ&Ô"QÜ+©J°yÓ,AÓBôô %×2Ñ2Ü!ð^ô		
ô 	Ü¬-¸¸1À1Ô*EÔFÜ$×7Ñ7Ü Ø?ô		
ô 	Ü¬-¸¸1À1Ô*EÔFÜ$×7Ñ7Ü Ø?ô		
ô 	Ü¬-¸¸1À6Ô*JÔKÜ$×7Ñ7Ü Ø?ô		
ô 	Ü¬-¸¸1È!Ô*LÔMÜ$×7Ñ7Ü ØFô		
ô 	Ü¬-¸¸1È!Ô*LÔMÜ$×7Ñ7Ü ØFô		
ô 	Ü¬-¸¸1È'Ô*RÔSÜ$×7Ñ7Ü ØFô		
ô 	Ü¬-¸¸QÓ*?Ô@Ü$×7Ñ7Ü ØFô		
ô 	Ü¬-¸¸aÓ*@ÔAÜ$×7Ñ7Ü ØDô		
ô 	Ü¬-¸¸1Ó*=Ô>Ü$×7Ñ7Ü!Ø>ô		
ô 	Ü¬-¸¸AÓ*>Ô?Ü$×7Ñ7Ü!Ø>ô		
ô 	Ü¬-¸¸3Ó*?Ô@Ü$×7Ñ7Ü ØGô		
ðs_€Gð@ €NrG   c           
      óò   — t        t        |||¬«      }|j                  dd«      }t        t	        |rt        dd«      n
t        d«      t         |d«      «      ¬«      t        j                  t        d¬	«      gS )
Nr¾   Úis_constantFrI   rÔ   r6  ro  z(expected 2D or 3D input \(got 4D input\)rÃ  ©	r   r
   rø   r�   r€   r{   rŒ   rŽ   rÆ  ©rL   r¯   rS   r¿   rT   rX   rÙ   re  s           rE   Ú"module_error_inputs_torch_nn_Pad1drh  œ  sq   € Üœ¨V¸5ÐP]Ô^€Jà—*‘*˜]¨EÓ2€Kô 	ÜÙ9D¤-°°1Ô"5Ì-ÐXYÓJZÜ+©J°|Ó,DÓEôô %×2Ñ2Ü!ØCô		
ðð rG   c           
      óò   — t        t        |||¬«      }|j                  dd«      }t        t	        |rt        dd«      n
t        d«      t         |d«      «      ¬«      t        j                  t        d¬	«      gS )
Nr¾   re  FrI   rÔ   r«  ro  z(expected 3D or 4D input \(got 2D input\)rÃ  rf  rg  s           rE   Ú"module_error_inputs_torch_nn_Pad2drj  ®  óq   € Üœ¨V¸5ÐP]Ô^€Jà—*‘*˜]¨EÓ2€Kô 	ÜÙ9D¤-°°1Ô"5Ì-ÐXYÓJZÜ+©J°vÓ,>Ó?ôô %×2Ñ2Ü!ØCô		
ðð rG   c           
      óò   — t        t        |||¬«      }|j                  dd«      }t        t	        |rt        dd«      n
t        d«      t         |d«      «      ¬«      t        j                  t        d¬	«      gS )
Nr¾   re  FrI   rÔ   r«  ro  z(expected 4D or 5D input \(got 2D input\)rÃ  rf  rg  s           rE   Ú"module_error_inputs_torch_nn_Pad3drm  À  rk  rG   c                 ón   — t        t        t        d¬«      ¬«      t        j                  t
        d¬«      gS )Ny      ð?        )ÚdeltarZ  z4delta must be a float or int, got: <class 'complex'>rÃ  )r�   r€   r{   rŒ   r�   ra  r  s         rE   Ú&module_error_inputs_torch_nn_HuberLossrp  Ó  s5   € äÜÜ"/°jÔ"Aôô %×7Ñ7Ü ØOô	
ð	ð 	rG   r
  )r¤   rš   Útest_memory_formatrT   )rE  )rŸ   r¤   rš   zSkipped!)r¤   )rŸ   r¤   )r¤   rŸ   rš   TÚTestEagerFusionModuleInfoÚ,test_aot_autograd_symbolic_module_exhaustiveÚ#test_aot_autograd_module_exhaustive)rK   r¤   r¡   rš   Útest_check_inplacer³   )r^   rn   rI   )rÊ  r§   g-Cëâ6?)r¤   rŸ   r    r›   rã   )r¤   rŸ   r    rš   r›   rÔ   )r^   )rÊ  r§   rË  Útest_cpu_gpu_parity)rn   r^   g{®Gázt?)r¤   rŸ   r    rn   rš   r›   )rn   Úxpu)r¤   rn   rŸ   r    rš   r›   )ÚatolÚrtolÚtest_forwardrÔ  )r¤   r›   rš   )r¤   r¡   )r¤   rŸ   r7  )r¤   r¡   rš   )Úinclude_halfÚinclude_bfloat16g¸…ëQ¸ž?)r¤   r¡   rn   r›   gü©ñÒMb`?r“  gš™™™™™©?g{®Gáz¤?r³  gš™™™™™É?Útest_save_loadz1chunked none backward not batched-grad compatiblezjacobian mismatch)r¤   r¡   rn   rŸ   r›   rš   )r|  r{  )r¤   r¡   rn   rš   )r¤   rž   )rÊ  )r¤   rK   rš   ÚTestModuleMPSÚtest_non_contiguousÚtest_factory_kwargs)rK   r¤   r›   rš   )r^   rE  )r¤   r¢   r›   rš   )r¤   r¡   rŸ   r›   rš   )râ  )rK   r¤   r¡   r›   )rK   r¤   r¡   rš   r›   Ú	module_db)F(a  rb   ÚunittestÚcopyr   Úenumr   Ú	functoolsr   r   rÒ  r   r   r/  Útorch.nn.functionalr¦   Ú
functionalrz  Útorch.nn.utils.rnnr	   Útorch.testingr
   Ú#torch.testing._internal.common_cudar   Ú$torch.testing._internal.common_dtyper   r   r   Ú*torch.testing._internal.common_device_typer   r   r   r   r   r   r   r   Ú2torch.testing._internal.common_methods_invocationsr   Ú!torch.testing._internal.common_nnr   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   Ú$torch.testing._internal.common_utilsr'   r(   r)   r*   r+   r,   r-   Útypesr.   Úoperatorr:   ÚaoÚqatÚquantizableÚ	quantizedr/   r=   Ú__annotations__ÚModuleÚ	ContainerÚ	NLLLoss2dÚ	MaxPool2dr0   r?   rO  Úfrom_iterableÚ__all__Úgetattrr1   r2   rM  r^  Ú	namespaceÚmodule_namerx   rh   r¸   Únamespace_namer5   ry   r{   r€   rŒ   r�   r˜   rÛ   rç   rý   r  r!  r<  rC  r  rZ  r`  rb  re  rk  rv  r�  r�  r–  rŸ  r¤  r¦  r¨  r®  r¹  r½  rÁ  rÈ  rÚ  rå  rñ  r÷  rú  r  r  r  r  r)  r+  r2  r<  rA  rL  rO  r_  rc  rj  rm  rp  ru  r~  rˆ  r�  r›  r¤  r³  r¼  ré  rí  rþ  r  r  r  r  r  r  r"  r*  r9  rE  rI  rL  rP  rR  rV  rY  r]  r`  rt  rz  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$  r1  r9  rA  ÚexpectedFailurer@  Ú#rnn_gru_lstm_module_info_decoratorsrM  rU  rW  rc  rh  rj  rm  rp  Úbackendsr³   Úis_availableÚis_macos_or_newerÚ_macos15_or_newerÚAdaptiveAvgPool1dÚAdaptiveAvgPool2dÚ
itemgetterÚAdaptiveAvgPool3dÚskipÚAdaptiveMaxPool1dÚAdaptiveMaxPool2dÚAdaptiveMaxPool3dÚ	AvgPool1dÚ	AvgPool2dÚ	AvgPool3drÄ  rÅ  ÚBatchNorm3dÚCELUr¹   ÚConv1drº   ÚConv2dr`  ÚConv3dÚConvTranspose1dÚchalfÚConvTranspose2dÚ	complex32Ú	complex64Ú
complex128ÚConvTranspose3dÚCosineEmbeddingLossÚELUÚFractionalMaxPool2dÚFractionalMaxPool3dÚL1LossÚSmoothL1LossÚ
LazyConv1dÚ
LazyConv2dÚ
LazyConv3dÚLazyConvTranspose1dÚLazyConvTranspose2dÚLazyConvTranspose3dÚLinearÚBilinearÚLPPool1dÚLPPool2dÚLPPool3dÚ	MaxPool1dÚ	MaxPool3dÚ	KLDivLossÚMSELossÚMarginRankingLossÚMultiLabelMarginLossÚMultiMarginLossÚSoftMarginLossÚMultiLabelSoftMarginLossÚNLLLossÚGaussianNLLLossÚPoissonNLLLossÚHingeEmbeddingLossÚ	HuberLossÚBCELossÚBCEWithLogitsLossÚCrossEntropyLossÚLinearCrossEntropyLossr»   ÚCTCLossÚGELUÚGLUÚ	GroupNormÚ
HardshrinkÚ	HardswishÚHardtanhÚInstanceNorm1dÚInstanceNorm2dÚInstanceNorm3dÚLocalResponseNormÚ	LayerNormÚRMSNormÚTransformerEncoderr›  ÚTransformerDecoderLayerÚTransformerÚMultiheadAttentionÚ	EmbeddingÚReLUÚ	LeakyReLUÚReLU6ÚPReLUÚRNNCellÚGRUCellÚLSTMCellÚSigmoidÚ
LogSigmoidÚSiLUÚSoftmaxÚ	Softmax2dÚ
LogSoftmaxÚSoftminÚSoftplusÚ
SoftshrinkÚSoftsignÚTanhÚ
TanhshrinkÚ	ThresholdÚMishÚRNNÚGRUÚLSTMÚReflectionPad1dÚReflectionPad2dÚReflectionPad3dÚReplicationPad1dÚReplicationPad2dÚReplicationPad3dÚSELUÚ	ZeroPad1dÚ	ZeroPad2dÚ	ZeroPad3dÚCircularPad1dÚCircularPad2dÚCircularPad3dÚConstantPad1dÚConstantPad2dÚConstantPad3dr�  )rž  rŸ  Úclss   000rE   ú<module>r     sv.  ðô Û Ý Ý ß $ß $Û Û ß Ð Ý 3Ý %Ý :÷Gñ G÷*÷ *ó *õ L÷m÷ m÷ m÷ mñ m÷
"÷ "ñ "õ Û ð 
‡H�H×ÑØ	‡H�H‡K�K‡O�O×ÑØ	‡H�H‡K�K×Ñ×#Ñ#Ø	‡H�H‡K�K×Ñ×!Ñ!Ø	‡H�H‡K�K×Ñ×!Ñ!ð'Ð �4˜
Ñ#ó ð 
‡H�H‡O�OØ	‡H�H×ÑØ	‡H�H×ÑØ	‡H�H‡K�K×Ñ×#Ñ#Ø	‡H�H‡K�K×Ñ×#Ñ#ð€��T‘ó ð*Ð2˜u×2Ñ2à&÷4(àð 9B×8IÑ8IÖJ¨�WˆY˜Õ$ÔJó4(ó  )ð *€��T‘
ó *ð "0ÖN˜#°3¸oÒ3M’#ÒN€ð ')Ð �D˜˜s˜‘OÓ (Ø"ò O€IØ ×(Ñ(ò OˆÙ˜Y¨Ó4ˆ
Ø"×+Ñ+×3Ñ3°H¸bÓA×IÑIÈ*ÐVXÓYˆð Ð/Ò/Ø0>Ð/?¸qÀÀÐ-NÐ˜zÒ*ñOðOñ �_Ð&SÓT€ôBÐô BòJ#÷ñ ÷2ñ 2ô,�dô ÷
'ñ '÷(<+ñ <+ò@ò(ò:%òP@òFò84òn$òN,ò^Dò&Dò0bò0
<ò4ò(ò$0ò80Dòh(ò (ò*&ò,
*ò(ò&-ò2.ò<.ò4.ò4ò@ò(ò8&ò&=ò"=ò=ò"9ò&9ò&0ò*"+òJ$òLò"*ò"
*ò*ò**ò$*ò:*ò$*ò"*ò *ò*ò&*ò"WòòF-ò`'òTUòp`òFFòRAòH=ò@+&ò\ò4ò,ò"ò0 òFò42&òh òD0òfò&ò(ò&ò&ò&ò&%òPò,òD#òLò8ò0ò8 òFò>ò2$òNò6ò2HòV@òF+ò\ò/òfò>ò>ò$ó;ò|&òTòòòòòòòòòòòò#òJ'òRBñR Ø× Ò  ,°ØÒ4 nÐ"4À6ôñ Ø× Ò  ,°ØÒ4 nÐ"4À6ôñ
 Ø× Ò  ,Ð0MØÒ4 nÐ"4À6ôñ
 Ø× Ò  ,Ð0MØÒ0 .¸5¿;º;¸.ÐV\ôð''Ð #ò6ò,:òx(òVkòZò$ò$ò&
ð —N’N×&Ò&×3Ò3Ó5Òe¸%¿.º.×:LÒ:L×:^Ò:^Ð_aÐcdÓ:eÐ ðNÙˆu�x‰x×)Ò)Ø"Jñ   Ó(ð+ôðNñ ˆu�x‰x×)Ò)Ø$8Ø"Jñ   Ó(áØ×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@ô	ð		ôðNñ* ˆu�x‰x×)Ò)Ø$8Ø"Já  §¢¨jÓ 9¸<ÐI]Ó^á Ó(ð+ôð+Nñ: ˆu�x‰x×)Ò)Ø"Jôð;Nñ@ ˆu�x‰x×)Ò)Ø$8Ø"JôðANñH ˆu�x‰x×)Ò)Ø$8Ø"Já  §¢¨jÓ 9¸<ÐI]Ó^á Ó(ð+ôðINñX ˆu�x‰x×!Ò!Ø"BôðYNñ^ ˆu�x‰x×!Ò!Ø"Bñ
  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ø#)ô,ð	
ôð_Nñx ˆu�x‰x×!Ò!Ø"BØ$8ñ    §¢¨jÓ 9¸<ÐI]Ó^á ¨Ð7TÓUð	XôðyNñJ ˆu�x‰x×#Ò#Ø%)Ø"DØ(Vñ  Ø×/Ò/Ð1LØEØ!4 ×!4Ò!4°ZÓ!@ôñ  Ø×/Ò/Ð1LØ<Ø!4 ×!4Ò!4°ZÓ!@ôðô	ðKNñp ˆu�x‰x×#Ò#Ø%)Ø"DØ(Vñ  Ð 2°LÐBVÐbuÐbj×buÒbuð  wAó  cBô  Cñ  Ø×/Ò/Ð1LØEØ!4 ×!4Ò!4°ZÓ!@ôñ  Ø×/Ò/Ð1LØ<Ø!4 ×!4Ò!4°ZÓ!@ôðô	ðqNñZ ˆu�x‰x×#Ò#Ø%)Ø"DØ(Vñ   Ó(ñ  Ø×/Ò/Ð1LØEØ!4 ×!4Ò!4°ZÓ!@ôñ  Ø×/Ò/Ð1LØ<Ø!4 ×!4Ò!4°ZÓ!@ôðô	ð[NñD ˆu�x‰x�}Š}Ø"=ñ   × 8Ò 8¸,ÐH\Ø,1¸5¿=º=¸/ôKðMôðENñR ˆu�x‰x�ŠÙ")Ð*GÈ1ÐSXÔ"YØ$8Ø,0áÑ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðô	ðSNñ` ˆu�x‰x�ŠÙ")Ð*GÈ1ÐSXÔ"YØ$8Ø,0ñ   × 8Ò 8¸,ÐH\Ø,2¸E¿MºM¸?ôLðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðaNñz ˆu�x‰x�ŠÙ")Ð*GÈ1ÐSXÔ"YØ$8Ø,0ñ   °UÔ;ñ   × 8Ò 8¸,ÐH\Ó]ðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôð{NñV ˆu�x‰x×'Ò'Ù")Ð*GÈ1ÐSXÐeiÔ"jØ$8Ø,0Ù4°U·[²[ÓAñ   × 8Ò 8¸,ÐH]Ø(-¯ª ~À6ôKðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnÙÑ 1°5·;²;ÀÐ2FÓ GÈÐWkÓlðôðWNñr ˆu�x‰x×'Ò'Ù")Ð*GÈ1ÐSXÐeiÔ"jØ$8Ø,0Ù4°U·[²[ÓAñ   × 8Ò 8¸,ÐH\Ø(-¯ª¸¿ºÈ%×JZÒJZÐ'[ô]ñ   × 8Ò 8¸,ÐH\ÐjpØ(-¯ª°u×7GÒ7GÐ'HôJñ   × 8Ò 8¸,ÐH]Ø(-¯ª ~À6ôKá 	¨<Ð9NØ(-¯ª ~À5ôJðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnÙÑ 1°5·;²;ÀÐ2FÓ GÈÐWkÓlðô'ðsNñ` ˆu�x‰x×'Ò'Ù")Ð*GÈ1ÐSXÐeiÔ"jÙ4°U·[²[ÓAØ$8Ø,0ñ   Ó(ñ   × 8Ò 8¸,ÐH\Ó]á × 8Ò 8¸,ÐH]Ø(-¯ª ~À6ôKá 	¨<Ð9NØ(-¯ª ~À5ôJðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnÙÑ 1°5·?²?ÀEÐ2JÓ KÈ\Ð[pÓqÙÑ 1°5·;²;ÀÐ2FÓ GÈÐWkÓlðô#ðaNñL ˆu�x‰x×+Ò+Ø"Lñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðMNñX ˆu�x‰x�|Š|Ø"<ñ   × 8Ò 8¸,ÐH\Ø,1¸5¿=º=¸/ôKðMôðYNñf ˆu�x‰x×+Ò+Ø"LØ$8ñ   Ó(Ù  §¢¨jÓ 9¸<ÐI]Ó^ðaôðgNñv ˆu�x‰x×+Ò+Ø"LØ$8ñ   Ó(Ù  §¢¨jÓ 9¸<ÐI]Ó^ðaôðwNñF ˆu�x‰x�ŠØ"?ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðGNñR ˆu�x‰x×$Ò$Ø"Eñ    §¢¨jÓ 9¸<ÐI]Ó^ñ   	¨<Ð9VØ(-¯ª ÀEôKðMô	ðSNñf ˆu�x‰x×"Ò"Ù")Ð*GÈ1ÐSWÔ"XØ$8Ø,0ñ   Ó)ðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðgNñ~ ˆu�x‰x×"Ò"Ù")Ð*GÈ1ÐSWÔ"XØ$8Ø,0ñ   Ó)ñ   × 8Ò 8¸,ÐH\Ø,2¸E¿MºM¸?ôLðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðNñ^	 ˆu�x‰x×"Ò"Ù")Ð*GÈ1ÐSWÔ"XØ$8Ø,0ñ   Ó)á Ó(ñ   × 8Ò 8¸,ÐH\Ó]ð	ñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôð_	Nñ@
 ˆu�x‰x×+Ò+Ù")Ð*GÈ1ÐSWÐdhÔ"iØ$8Ø,0ñ   Ó)ðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðA
NñX
 ˆu�x‰x×+Ò+Ù")Ð*GÈ1ÐSWÐdhÔ"iØ$8Ø,0ñ   Ó)ñ   × 8Ò 8¸,ÐH\ÐjpØ(-¯ª ô8ðñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðY
Nñx
 ˆu�x‰x×+Ò+Ù")Ð*GÈ1ÐSWÐdhÔ"iØ$8Ø,0ñ   Ó)á Ó(ñ   × 8Ò 8¸,ÐH\Ó]ð	ñ  Ñ 1°5·=²=À%Ð2HÓ IÈ<ÐYmÓnðôðy
NñZ ˆu�x‰x�ŠØ"?ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôð[Nñf ˆu�x‰x× Ò Ø"AáÙ(Ø Ÿ=š=©#°4¸dÔ*CØ Ÿ=š=©#°4¸dÔ*Cð*Eó Fð $ ^Àô	Hðñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKð	MôðgNñF ˆu�x‰x× Ò Ø"Aá  §¢¨jÓ 9¸<ÈÓUÙ  §¢¨jÓ 9¸<ÈÓYð\ôðGNñR ˆu�x‰x× Ò Ø"Aá  §¢¨jÓ 9¸<ÈÓUÙ  §¢¨jÓ 9¸<ÈÓYñ  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ò!ZÐIZÐEZØ#(ôðôðSNñp ˆu�x‰x× Ò Ø"Aá  §¢¨jÓ 9¸<ÈÓUÙ  §¢¨jÓ 9¸<ÈÓYÙ  §¢¨jÓ 9¸<ÐI]Ó^Ù 	°uÔ=ð	@ôðqNñ@ ˆu�x‰x×!Ò!Ø"BôðANñF ˆu�x‰x×!Ñ!Ø"BØ(NôðGNñN ˆu�x‰x×!Ò!Ø"BØ$8ôðONñV ˆu�x‰x×!Ò!Ø"Bñ  Ñ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,¨nØ,1¸5¿=º=¸/ôKðñ    §¢¨jÓ 9¸<ÐI]Ó^á  §¢¨jÓ 9¸<ÐI^Ó_Ù  §¢¨jÓ 9¸<ÈÓUÙ  §¢¨jÓ 9¸<ÈÓYð\ôðWNñ| ˆu�x‰x×ÒØ"@ñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKð	Môð}NñN ˆu�x‰x×)Ò)Ø"Jñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðONñZ ˆu�x‰x×,Ò,Ø"Mñ    §¢¨jÓ 9¸<ÐI]Ó^á 	¨<ÀUÔKá  §¢¨jÓ 9¸<ÈÓYð\ô	ð[Nñn ˆu�x‰x×'Ò'Ø"HØ(Tñ    §¢¨jÓ 9¸<ÐI]Ó^á 	¨<ÀUÔKá  §¢¨jÓ 9¸<ÈÓYð\ô
ðoNñD ˆu�x‰x×&Ò&Ø"Gñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKð	MôðENñV ˆu�x‰x×0Ò0Ø"Qñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðWNñb ˆu�x‰x×ÒØ"@Ø(Lñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKð	Mô	ðcNñv ˆu�x‰x×'Ò'Ø"Hñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôbðwNñ@ ˆu�x‰x×&Ò&Ø"Gñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôbðANñJ ˆu�x‰x×*Ò*Ø"Kñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðKNñV ˆu�x‰x×!Ò!Ø"BØ(Nñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKð	Mô	ðWNñj ˆu�x‰x×ÒØ"@ñ    §¢¨jÓ 9¸<ÐI]Ó^á 	¨<ÀÇÂÀÐ]bÔcð	fôðkNñz ˆu�x‰x×)Ò)Ø"Jñ    §¢¨jÓ 9¸<ÐI]Ó^á 	¨<ÀÇÂÀÐ]bÔcð	fôð{NñJ ˆu�x‰x×(Ò(Ø"IØ(UÙ'°TÈEÔRñ   × 8Ò 8¸,ÐH\Ó]ÙÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ .¸¿º°ÐTYô[á × 8Ò 8¸,ÐH]Ðgl×gtÒgtÐfuØ,2ô4á × 8Ò 8¸,ÐH]Ðgl×gtÒgtÐfuØ,1ô3ð5ô	ðKNñf ˆu�x‰x×.Ò.Ø"OØ([Ù'°TÈDÔQØ$8ñ
   × 8Ò 8¸,ÐH\Ó]ÙÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ =ÀuÇ}Â}ÀoôWáÑ 1°5·>²>Á3ÈDÐW[ÔC\Ð2]Ó ^Ð`lØ =ÀuÇ~Â~ÐFVôXáÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ 5¸u¿}º}¸oôOñ   × 8Ò 8¸,ÐH]Ø(-¯ªÐ'7ÀVôMá × 8Ò 8¸,ÐH]Ø(-¯ªÐ'7ÀUôLáÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ 0¸fÈeÏmÊmÈ_ô^áÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ 0¸eÈUÏ]Ê]ÈOô]áÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ð_kØ .¸¿º°ôHáÑ 1°5·>²>Á3ÈDÐW[ÔC\Ð2]Ó ^Ð`lØ .¸¿ºÐ7GôIáÑ 1°5·>²>Á3ÈDÐW[ÔC\Ð2]Ó ^Ð`lØ 0¸fÈeÏnÊnÐM]ô_ð1ñB    §¢Ð.aÓ bØ ,¨kó;á  §¢Ð.AÓ BÀLÐRaÓbðeôA)ðgNñz ˆu�x‰x×ÒØ"@ñ    §¢¨jÓ 9¸<ÐI]Ó^á 	¨<ÀUÔLá  §¢¨jÓ 9¸<ÈÓUÙ  §¢¨jÓ 9¸<ÈÓYá  §¢¨jÓ 9¸<ÐIfÓgð	jôð{NñT ˆu�x‰x�}Š}Ø"=ñ   × 8Ò 8¸,ÈØ,1¸5¿=º=¸/ôKðMôðUNñb ˆu�x‰x�|Š|Ø"<ôðcNñh ˆu�x‰x×!Ò!Ø"BØ(NÙ'¸ÈDÔQñ    §¢¨jÓ 9¸<ÐI^Ó_ÙÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,Ð.BÐPUôWñ    §¢¨jÓ 9¸<ÐI]ÐkqÔrÙ  §¢¨jÓ 9¸<ÐI]ÐkpÔqÙ  §¢¨jÓ 9¸<ÐI]ÐkpÔqÙ  §¢¨jÓ 9¸<ÈØ*8ÀfôNð
Pô	ðiNñH ˆu�x‰x×"Ò"Ø"CôðINñN ˆu�x‰x×!Ò!Ø"BØ!&ô(ðONñT ˆu�x‰x× Ò Ø"AôðUNñZ ˆu�x‰x×&Ò&Ù")Ð*OÐSTÔ"UØ%)ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôð[Nñh ˆu�x‰x×&Ò&Ù")Ð*OÐSTÔ"UØ%)ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðiNñv ˆu�x‰x×&Ò&Ù")Ð*OÐSTÔ"UØ%)ñ  Ð 2°OÐEYÓZÙÐ 2°OÐEbÓcÙÐ 2°OÀ^ÓTÙÐ 2°OÐEZÓ[ÙÐ 2°OÐEUÓVá  §¢¨jÓ 9¸<ÐI]Ó^ðaôðwNñP ˆu�x‰x×)Ò)Ø"JôðQNñV ˆu�x‰x×!Ò!Ø"Bñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðWNñb ˆu�x‰x×ÒØ"@ôðcNñj ˆu�x‰x×*Ò*Ø%)Ø"Kñ    §¢¨jÓ 9¸<ÈØ,1ô3ðñ    §¢¨jÓ 9¸<ÐI]Ó^ñ   × 8Ò 8¸,ÐH]Ó^ðaôðkNñH ˆu�x‰x×/Ò/Ø%)Ø"PáÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,Ð.KØ,1¸ZôIñ  Ñ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,¨nØ,1ô3ñ    §¢¨jÓ 9¸<ÈØ,1ô3ð
ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðINñl ˆu�x‰x×/Ò/Ø"Pñ    §¢¨jÓ 9¸<ÈØ,1ô3ðñ    §¢¨jÓ 9¸<ÐI]Ó^ðaô
ðmNñB ˆu�x‰x×#Ò#Ø"Dð $(ñ    §¢¨jÓ 9¸<ÈØ,1ô3ðñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðCNñ^ ˆu�x‰x×*Ò*Ø%)Ø"KáÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,Ð.KØ,1ô3ð4ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaô
ð_Nñt ˆu�x‰x×!Ò!Ø"BØ(NØ$8áÑ 1°5·=²=Á#È4ÐVZÔB[Ð2\Ó ]Ø ,Ð.KØ,1ô3ð4ñ
    §¢¨jÓ 9¸<ÐI]Ó^ðaô
ðuNñJ ˆu�x‰x�}Š}Ø"=Ù.‘Tñ  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ø#(ôð	5ôðKNñd ˆu�x‰x×!Ò!Ø"BôðeNñj ˆu�x‰x�~Š~Ø">ñ   Ó(ð+ôðkNñx ˆu�x‰x�~Š~Ø">ñ   Ó(ð+ôðyNñF ˆu�x‰x×ÒÙ")Ð*MÐVZÔ"[Ø(QôðGNñN ˆu�x‰x×ÒØ"EØ(QôðONñV ˆu�x‰x× Ò Ø"AØ(MôðWNñ^ ˆu�x‰x×ÒØ"@Ù.‘Tñ  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ø#(ôð	5ôð_Nñx ˆu�x‰x×"Ò"Ø"Cñ   × 8Ò 8¸,ÈÐdiÐsx÷  tAò  tAð  sBô  CðEôðyNñD ˆu�x‰x�}Š}Ø"=ôðENñJ ˆu�x‰x×ÒØ"@ôðKNñP ˆu�x‰x×!Ò!Ø"Bñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈÐdiÐsx÷  tAò  tAð  sBô  Cð	EôðQNñ` ˆu�x‰x×"Ò"Ø"Cñ    §¢¨jÓ 9¸<ÐI]Ó^á × 8Ò 8¸,ÈÐdiÐsx÷  tAò  tAð  sBô  Cð	EôðaNñp ˆu�x‰x×ÒØ"@ñ    §¢¨jÓ 9¸<ÐI]Ó^ðaôðqNñ| ˆu�x‰x× Ò Ø"Añ   Ó(ð+ôð}NñJ ˆu�x‰x×"Ò"Ø"Cñ   Ó(ð+ôðKNñV ˆu�x‰x× Ò Ø"AôðWNñ\ ˆu�x‰x�}Š}Ø"=Ù.‘Tñ  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ø#(ôð	5ôð]Nñv ˆu�x‰x×"Ò"Ø"CÙ.‘Tñ  Ø×/Ò/Ø#Ø+Ø!4 ×!4Ò!4°ZÓ!@Ø#(ôð	5ôðwNñP ˆu�x‰x×!Ò!Ø"Bñ   Ó(ð+ôðQNñ^ ˆu�x‰x�}Š}Ø"=ñ   Ó(ð+ôð_Nñj ˆu�x‰x�|Š|Ø%)Ù")Ð*HÐQUÔ"VØ(LØ=ô	ðkNñv ˆu�x‰x�|Š|Ø%)Ù")Ð*HÐQVÔ"WØ(LØ=ô	?ðwNñ@ ˆu�x‰x�}Š}Ø%)Ø"=Ø(Lñ   Ó(ð+ð >ô?ðANñP ˆu�x‰x×'Ò'Ø"HôðQNñV ˆu�x‰x×'Ò'Ø"HØ$8á  §¢¨jÓ 9¸<ÐI]Ø,2ô4á  §¢¨jÓ 9¸<ÐI]Ø,1ô3á  §¢¨jÓ 9¸<ÐI]Ø,1ô3ð5ô
ðWNñl ˆu�x‰x×'Ò'Ø"HØ$8á  §¢¨jÓ 9¸<ÐI]Ø,2ô4á  §¢¨jÓ 9¸<ÐI]Ø,1ô3á  §¢¨jÓ 9¸<ÐI]Ø,1ô3ð5ô
ðmNñB ˆu�x‰x×(Ò(Ø"IôðCNñH ˆu�x‰x×(Ò(Ø"IØ$8á  §¢¨jÓ 9¸<ÐI]Ø,2ô4á  §¢¨jÓ 9¸<ÐI]Ø,1ô3á  §¢¨jÓ 9¸<ÐI]Ø,1ô3ð5ô
ðINñ^ ˆu�x‰x×(Ò(Ø"IØ$8á  §¢¨jÓ 9¸<ÐI]Ø,2ô4á  §¢¨jÓ 9¸<ÐI]Ø,1ô3á  §¢¨jÓ 9¸<ÐI]Ø,1ô3ð5ô
ð_Nñt ˆu�x‰x�}Š}Ø"=ñ   Ó(ð+ôðuNñB ˆu�x‰x×!Ò!Ø"BôðCNñH ˆu�x‰x×!Ò!Ø"Bñ   × 8Ò 8¸,ÐH\ÐjoÔpðsôðINñT ˆu�x‰x×!Ò!Ø"Bñ   × 8Ò 8¸,ÐH\ÐjoÔpðsôðUNñ` ˆu�x‰x×%Ò%Ø"FØ(JôðaNñh ˆu�x‰x×%Ò%Ø"FØ(JôðiNñp ˆu�x‰x×%Ò%Ø"FØ(Jñ   × 8Ò 8¸,ÐH\Ó]ð`ôðqNñ~ ˆu�x‰x×%Ò%Ø"FôðNñD  ˆu�x‰x×%Ò%Ø"Fñ   × 8Ò 8¸,ÐH\ÐjoÔpðsôðE NñP  ˆu�x‰x×%Ò%Ø"Fñ   × 8Ò 8¸,ÐH\ÐjoÔpðsôðQ N�	ˆ4�
Ñô Nùòa} Kùó4(ùò Os+   ÈBe(È.Be#È>Be(É	Be.É"Be.Âe#Be(